- New `diff_lines_added()` and `diff_lines_removed()` revset functions for matching content on only one side of a diff
- The `end` parameter in the `String.substr(start, end)` templating method is now optional, returning from `start` to the end of the string if not given
- `WorkspaceRef` templates now provide a `.root()` method to show the absolute path to each workspace root
- The `jj arrange` TUI now includes immediate parents and children, dimmed by default and not selectable
- Diff colors can now be configured differently for each format
- `jj op log` now includes the name of the workspace the operation was created from
- `jj arrange` uses the default log template (`builtin_log_compact`) instead of the shorter commit summary style
- In the `jj arrange` TUI, the "swap up/down" actions now move along graph edges even if the commit rows are not adjacent
- The `config()` template function now accepts a `Stringify` expression instead of `LiteralString` to allow looking up configuration values dynamically
- `jj op show`, `jj op diff`, `jj op log -p` now only show "interesting" revisions by default defined by `revsets.op-diff-changes-in`, with a new `--show-changes-in` flag to override this
- `.gitignore` with UTF-8 BOM can now be parsed correctly
- Fix incompatibility with gpgsm 2.5.x
About
jj is a Git-compatible version control system that is both simple and powerful. See the installation instructions to get started.
Release highlights
None
Breaking changes
None
Deprecations
None
New features
-
New
diff_lines_added()anddiff_lines_removed()revset functions for matching content on only one side of a diff. -
The
endparameter in theString.substr(start, end)templating method is now optional. If not given,substr()returns fromstartto the end of the string. -
WorkspaceReftemplates now provide a.root()method to show the absolute path to each workspace root. -
The
jj arrangeTUI now includes immediate parents and children. They are not selectable and are dimmed by default. -
jj arrangeuses the default log template (builtin_log_compact) instead of the shorter commit summary style. -
In the
jj arrangeTUI, the "swap up/down" actions now move along graph edges even if the commit rows are not adjacent. -
Diff colors can now be configured differently for each format.
-
jj op lognow includes the name of the workspace the operation was created from. -
The
config()template function now accepts aStringifyexpression instead ofLiteralString. This allows looking up configuration values dynamically. -
jj op show,jj op diff,jj op log -pnow only show "interesting" revisions by default (defined byrevsets.op-diff-changes-in). A new flag,--show-changes-in, can be used to override this. #6083
Fixed bugs
-
.gitignorewith UTF-8 BOM can now be parsed correctly. -
Fix incompatibility with gpgsm 2.5.x.
Contributors
Thanks to the people who made this release happen!
- Aaron Sutton (@aaronjsutton)
- Adam Sandberg Eriksson (@adamse)
- Anton Älgmyr (@algmyr)
- Austin Seipp (@thoughtpolice)
- Benjamin Tan (@bnjmnt4n)
- Ben Warren (@warrenbhw)
- Bryant Chandler (@brychanrobot)
- David Higgs (@higgsd)
- Filip Weiss (@fiws)
- Gabriel Goller (@kaffarell)
- Gaëtan Lehmann (@glehmann)
- Ilya Grigoriev (@ilyagr)
- Jeff Turner (@jefft)
- Joseph Lou (@josephlou5)
- Josh Steadmon (@steadmon)
- KITAGAWA Yasutaka (@kit494way)
- Liam (@terror)
- Li-Wen Hsu (@lwhsu)
- Martin von Zweigbergk (@martinvonz)
- Philip Metzger (@PhilipMetzger)
- Poliorcetics (@poliorcetics)
- Remo Senekowitsch (@senekor)
- Rob Pilling (@bobrippling)
- Scott Taylor (@scott2000)
- Shnatu
- Stephen Prater (@stephenprater)
- Yuya Nishihara (@yuja)
- Zeyi Fan (@fanzeyi)