v0.42.0
facebookresearch/AnimatedDrawingsv0.42.0Jun 4, 2026by martinvonz
AI Summary
This release switches to the mimalloc memory allocator and removes deprecated command and configuration options. It adds new features like shell completion descriptions, multiple revision support in show, and backend name utility.
Key Highlights
- Switched to mimalloc memory allocator
- Removal of deprecated command options
- Shell completions now include descriptions
- jj show now accepts multiple revisions
- Git fetch now generates evolution history
Breaking Changes
- Removal of deprecated command options (--reset-author, --author, --no-edit, etc.)
- Removal of deprecated config options (git.auto-local-bookmark, git.push-new-bookmarks)
New Features
- Mimalloc memory allocator
- Shell completion descriptions
- Multiple revisions in jj show
- Git fetch evolution history
- Backend name utility command
Full Release Notes
### About jj is a Git-compatible version control system that is both simple and powerful. See the [installation instructions](https://jj-vcs.github.io/jj/v0.42.0/install-and-setup/) to get started. ### Release highlights * Switched to the mimalloc memory allocator for better multi-threaded performance. ### Breaking changes * The following deprecated command options have been removed: - `jj commit --reset-author`/`--author` - `jj describe --no-edit`/`--edit`/`--reset-author`/`--author` - `jj git push --allow-new` - `jj metaedit --update-committer-timestamp` * The following deprecated config options have been removed: - `git.auto-local-bookmark` - `git.push-new-bookmarks` ### Deprecations * `jj evolog` no longer supports legacy commit predecessors recorded in `jj` < 0.30. ### New features * Shell completions now surface descriptions for custom aliases, revset-aliases, template-aliases, and fileset-aliases. Descriptions are extracted from the `.doc` field of the alias definition if it is a table with `.doc` and `.definition` properties. * `jj show` now accepts multiple revisions, showing all of them one after the other, behaving closer to `git show`. * `jj git fetch` now generates evolution history based on change IDs. If change IDs are preserved by the remote, local descendant revisions will be rebased onto the rewritten parents. * Added `jj util backend name` command that prints the commit backend being used in the current repo. * Added `edit-invocation-mode` config option for diff editors (e.g. `jj diffedit`, `jj split`). When set to `"file-by-file"`, the editor is launched once per changed file, making it possible to use per-file tools like `vimdiff` for editing. ### Fixed bugs * `jj git remote add` now reports an error instead of panicking when the remote name is empty or contains whitespace. [#9099](https://github.com/jj-vcs/jj/issues/9099) * Color-words diffs are now shown as separate before and after lines when color output is disabled, making piped or redirected diffs readable. [#5894](https://github.com/jj-vcs/jj/issues/5894) * `jj bookmark forget` no longer prints `Forgot N local bookmarks.` when no local bookmarks were actually forgotten (e.g. when only an untracked remote bookmark matched). [#9181](https://github.com/jj-vcs/jj/issues/9181). * The `builtin_log_redacted` template now also redacts workspace names. ### Contributors Thanks to the people who made this release happen! * Alex Jaspersen (@ajaspers) * Archer (@archer-321) * ase (@adamse) * Austin Seipp (@thoughtpolice) * David Rieber (@drieber) * Eyüp Can Akman (@eyupcanakman) * Jakub Stasiak (@jstasiak) * James Dixon (@lemonase) * Joseph Lou (@josephlou5) * Laurynas Keturakis (@laulauland) * Luna Schwalbe (@lunagl) * Martin von Zweigbergk (@martinvonz) * Niko Savola (@nikosavola) * OlshaMB (@OlshaMB) * Sergey Kasmy (@SergeyKasmy) * truffle (@truffle-dev) * Vincent Ging Ho Yim (@cenviity) * Yuya Nishihara (@yuja)