github jj-vcs/jj v0.40.0

8 hours ago

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() 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. If not given, substr() returns from start to the end of the
    string.

  • 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. They are not
    selectable and are dimmed by default.

  • 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.

  • 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.

  • The config() template function now accepts a Stringify expression instead
    of LiteralString. This allows 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). A new flag,
    --show-changes-in, can be used to override this. #6083

Fixed bugs

  • .gitignore with 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!

Don't miss a new jj release

NewReleases is sending notifications on new releases.