News for hackers. Stuff that matters.

raylu

Re:The lazy Git UI you didn't know you need on Tuesday November 11, 2025 @03:02PM (#45892083)
I've thought about using https://github.com/dlvhdr/diffnav for that
Re:Jujutsu for Everyone on Monday September 01, 2025 @02:24AM (#45090004)
I'm having a hard time understanding your question. are you asking how people who are unfamiliar with git and jj should mentally model a stack of PRs? and that this is a problem because it's intimidating for them when an expert (in git? in the codebase?) is reviewing their code?

if yes:

while jj does make stacked PRs quite easy, I think this tutorial is mostly aimed at people who are still getting their feet wet and not making stacks of PRs. and if the expert is intimidating, tell them to be helpful or fuck off

if no:

well I don't understand your question, but probably don't `jj edit` the commit at the bottom of a stack; `jj new` and, when you're ready, either `jj squash` it down or `jj rebase -s @ -A @-` your change into the stack instead

Re:Jujutsu for Everyone on Monday September 01, 2025 @02:02AM (#45089871)
the thing about rebasing/cherry-picking (including just popping the stash) in git is that you only have 2 choices: fix the conflict now or abandon the entire rebase/cherry-pick

with jj, you have the option to fix half of it and come back later. you can take a look and see how bad the conflicts are if you go a certain route and compare to another option

Re:Jujutsu for Everyone on Monday September 01, 2025 @01:55AM (#45089847)
`jj op` has `log` to show you the op log, `show`/`diff` which work like their non-op versions, and `jj op restore` which is sorta like `git reset --hard HEAD@{whatever}` but for your whole repo state
Re:Jujutsu for Busy Devs on Friday July 25, 2025 @05:39PM (#44688810)
wait what?

bitbucket will merge a PR from your feature branch onto the base branch even if it's not fast-forward from the base branch. as long as you use the "squash" or "rebase" option on the PR interface (instead of the "merge" option), the resulting history will be linear

Re:Jujutsu for Busy Devs on Friday July 25, 2025 @05:36PM (#44688782)
`git rebase -i` lets you reorder one branch of commits easily

in a stacked PR workflow, after the bottom PR merges, you now want to rebase the whole stack atop the main branch. if that's 3 PRs, that's 3 branches, 3 rebases

one thing `git rebase` doesn't let you do but `jj rebase -s source -d dest` does is move a commit from one branch to another (`git switch dest`, `git cherry-pick source`, `git switch -C source source^`, `git switch dest`)

Re:Jujutsu for Busy Devs on Friday July 25, 2025 @03:06PM (#44687022)
I ran into this at first on a large-ish repo. watchman fixed it: https://jj-vcs.github.io/jj/latest/config/#filesystem-monito...
Re:Disclosure of three 0-day iOS vulnerabilities on Friday September 24, 2021 @05:49PM (#28648212)
it feels like we're conflating two issues here: fixing the bug on time and paying out the researcher. at the point where the bug is too complicated to fix within SLA and the exception has been escalated to senior leadership, surely the bug bounty team can pay the researcher?
Re:Disclosure of three 0-day iOS vulnerabilities on Friday September 24, 2021 @05:45PM (#28648185)
much smaller, less wealthy companies attract far fewer reports
Re:“Great resignation” wave coming for companies on Thursday June 17, 2021 @04:28PM (#27544206)
Good thing you sold immediately when they vested.
Don't jump to conclusions too fast about a reduced example to demonstrate a problem.

I probably originally had 2 expressions that evaluated to booleans. I may have been using `is` to check that the type of one was actually a bool rather than just falsey.

IIRC, I originally had 2 expressions that evaluated to booleans that I was comparing. I don't remember if I had parens, but I do remember being deeply confused once there were no parens.
But also, those high ladders of abstraction support some pretty cool software...
Oh, hi!

Yeah, that was a real head-scratcher.

Re:Bosque Programming Language on Friday April 19, 2019 @12:03AM (#19697008)
> Why? What even was the point in making them 'typed' then?

To prevent you from passing a String as a String[Zipcode].

Re:The 49-U6U Slaughterhouse on Tuesday April 08, 2014 @06:21PM (#7556400)
Nullsec is dominated by the nullsec alliances, and big battles, which are the only thing non-EVE media reports on, happen almost exclusively in nullsec.
Re:Why CCP is still using Python 2 on Thursday January 09, 2014 @02:56PM (#7032748)
Yeah, but if you have a test suite you add Python 3 and silence the existing failures.

They likely already know where a lot of their failures are going to be even without tests. The effort involved in fixing those known failures alone is prohibitive. The fact that the rest of regression testing will be easier with tests is nice, but doesn't reduce the work required to a level where they can justify doing it.

Now you can (at least partially) avoid writing new code that wouldn't work on 3,

Once you're on 3, you can just run your code and see if it works on 3. You don't need tests to avoid writing code that works on 2 but not 3.

as well as gain the option of refactoring things to resolve compatibility - with lots of freedom to decide how much effort to spend on that if any.

I don't think resolving compatibility issues is optional...

Re:Why CCP is still using Python 2 on Thursday January 09, 2014 @12:39PM (#7031859)
That's quite a glorified view of tests. You can have the best test coverage in the world backed by a great CI culture but if porting something is a huge time investment, it may still be a huge time investment. Maybe there's one 2.x feature that you use almost everywhere that has been removed in 3.x and there's no simple way to replace it automatically.
Re:Why CCP is still using Python 2 on Thursday January 09, 2014 @12:35PM (#7031830)
See every organization still running on XP ? They may be sentence to death in 3 month, that may be the hardest way learn it.

See that place running COBOL? Yeah, that's your bank.

Re:Cisco to release BSD-licensed H.264 stack on Wednesday October 30, 2013 @05:42PM (#6643617)
libx264 doesn't provide a decoder. Did you mean H.264?
Re:Why Your Professors Suck on Saturday October 26, 2013 @06:16AM (#6616914)
I find it difficult to imagine that anyone would actually believe the two are equivalent, but maybe I've just been hanging around HN-types too much.
Re:Reducing the Roots of Some Evil on Tuesday July 16, 2013 @07:42PM (#6055420)
"since they're all held to a reasonable minimum standard."

Except the ones that are too big to fail right?

https://bugzilla.mozilla.org/show_bug.cgi?id=647959

Re:Grep too slow? Use git-grep on Tuesday July 09, 2013 @06:31PM (#6016118)
If you have a compiled project, files that aren't tracked include all of your intermediate .o files, for example. If you `grep -r` the wrong way, it may traverse the .git directory.
Re:Final Term - Terminal Emulator on Monday July 08, 2013 @04:22PM (#6009037)
I assume you've already considered using gvim?
Re:Internet Explorer 11: “Don’t call me IE” on Tuesday July 02, 2013 @05:42PM (#5980934)
The problem isn't making changes to the source. The monoculture or de-facto standards come up because those are the rendering engines used by users. You can make WebKit or Trident a billion times better but it won't matter to web developers or users until users adopt the new code.
Re:Nginx for Developers: An Introduction on Friday June 21, 2013 @02:43AM (#5916881)
I was using "your" in the third-person, a quirk of the English language that is too late to fix.

Configuration should not be able to cause your software to segfault. Configuration shouldn't be software. And, in case it's not clear, configuration should not be written in C/C++.

Re:This is a web page on Thursday June 20, 2013 @05:37PM (#5915135)
If every page was similar to this one, the web would be plainer and simpler. It seems that you seem to think this is a bad thing by characterizing it as "bleak and characterless." I think it would just be a whole lot less stupid :D.

Older »