# Jujutsu v0.42.0 - Product: Jujutsu (https://whatsnew.fyi/product/jujutsu) - Vendor: jj-vcs - Date: 2026-06-04 - Version: v0.42.0 - Original notes: https://github.com/jj-vcs/jj/releases/tag/v0.42.0 - Permalink: https://whatsnew.fyi/product/jujutsu/releases/v0.42.0 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **changed** — Switched to the mimalloc memory allocator for better multi-threaded performance - **removed** — Removed deprecated command options: jj commit --reset-author/--author, jj describe --no-edit/--edit/--reset-author/--author, jj git push --allow-new, and jj metaedit --update-committer-timestamp - **removed** — Removed deprecated config options: git.auto-local-bookmark and git.push-new-bookmarks - **deprecated** — jj evolog no longer supports legacy commit predecessors recorded in jj < 0.30 - **added** — Shell completions now surface descriptions for custom aliases, revset-aliases, template-aliases, and fileset-aliases extracted from the .doc field - **changed** — jj show now accepts multiple revisions, showing all of them one after the other, behaving closer to git show - **added** — jj git fetch now generates evolution history based on change IDs and rebases local descendant revisions onto rewritten parents when change IDs are preserved by the remote - **added** — Added jj util backend name command that prints the commit backend being used in the current repo - **added** — Added edit-invocation-mode config option for diff editors with file-by-file mode to launch the editor once per changed file - **fixed** — jj git remote add now reports an error instead of panicking when the remote name is empty or contains whitespace - **fixed** — Color-words diffs are now shown as separate before and after lines when color output is disabled - **fixed** — jj bookmark forget no longer prints Forgot N local bookmarks message when no local bookmarks were actually forgotten - **fixed** — The builtin_log_redacted template now also redacts workspace names ###### 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)