jj v0.43.0 released
51 points by asymmetric
51 points by asymmetric
very excited for jj run.
very happy to see they undeprecated jj bookmark track/untrack <name>@<remote>. Typing --remote always felt bad to me.
How is jj run different from jj fix? The changelog has an example of using jj run to run cargo fix, they definitely overlap...?
jj run materializes a whole working copy and runs a command there. jj fix pipes the contents of a single file to the command, and the output is the new contents of the file.
If your tool works with jj fix (usually formatters and linters), itโs much faster, but jj run is more flexible.
interesting, I wonder if it uses the same machinery as jj workspace (i.e. something like jj workspace new /tmp)
(I didn't implement the initial jj run but I helped land it)
It uses some of the parts, but the directories under .jj/run/default/{1,2,3,...} aren't full workspaces. Some refactoring might make it possible to reuse more, but we wouldn't want checking out revisions in those paths to create operation log entries.
The only two things underneath each "slot" are working_copy where files are checked out, and tree_state which records the tree that we last checked out, so we can compare what changed and amend the revision when we're done.
From my understanding, run runs a command in each change and fix runs a filter over each changed file. In my case, it means using run to run the test suite to make sure each commit is valid, and then run fix to run a formatter over the files.
I haven't updated yet. This is just my interpretation.
Fixed corrupt loose Git objects on Intel Raptor Lake CPU and aarch64
Ohh. I thought all the corrupted git objects I've seen were always the fault of filesystem rollbacks somehow (f2fs rollbacks after hard shutdowns have resulted in some interesting on-disk state). Very interesting to find out there was just some brokenness there.
Fixed corrupt loose Git objects on Intel Raptor Lake CPU and aarch64
This sounds like an interesting bug! I would read a blogpost about this if one comes out! ๐