#+OPTIONS: toc:nil

* Recent changes

** Unreleased

*** Added

- Added =vc-jj-retrieve-tag=, which makes it possible to use vc commands
  like =vc-switch-branch=, which are implemented on top of
  =vc-retrieve-tag=.

- Added list of other jj support packages for Emacs to the
  documentation -- not everyone is looking for vc integration :)

*** Changed

*** Removed

*** Fixed

- vc-jj now does not prevent non-vc Emacs operations (dired, editing
  files) in a corrupted jj repository.  Blocking this was never
  intended, but was a consequence of letting errors escape from
  =vc-jj-dir-status-files=.
- Properly handle cases where directory file paths are passed to
  vc-jj's =vc-jj--filename-to-fileset=, which vc-jj uses to transform
  file names into forms adhering to jj's fileset language.  Now,
  calling =vc-next-action= on a directory listing with changed files in
  a vc-dir buffer will commit those changed files.  Previously an
  empty commit would be made.
- Fix error when calling =vc-find-revision= due to erroneous argument to
  =erase-buffer=, which accepts no arguments.  Commands that use
  =vc-find-revision=, like =vc-revision-other-window=, now do not error.
- Identify the "removed" vc file state. Previously, removed files
  would be incorrectly labeled as "ignored."
- vc-jj now sets up =log-edit-callback= so =log-edit-done= works properly
  when editing =.jjdescription= files.  This makes Emacs work properly
  as external editor when calling =jj commit= or similar from the
  terminal.
- vc-jj installation now proceeds without warnings from the byte
  compiler.

** [[https://codeberg.org/emacs-jj-vc/vc-jj.el/compare/v0.2...v0.3][0.3]] - 2025-06-15

*** Changed

- The behavior of =vc-jj-print-log= is now closer to the behavior
  documented for =vc-print-log=: each commit is displayed in one line,
  and RET expands the current entry to show commit details.  Remove
  the unused customization options =vc-jj-colorize-log= and
  =vc-jj-log-template=.

- Files of type =.jjdescription= are now edited using =log-edit-mode=
  instead of fundamental mode.  (Such files are created by jj when the
  user runs =jj describe= or =jj commit= from the command line.)

- =vc-dir= headers now display more information:
  - All information about the current changeset (change id, commit id,
    first line of description) is contained in one line.
  - Information about the current changeset's parent(s) is shown in
    the same format.

*** Fixed

- Fix breakage when the project directory contains a file too large to
  be automatically added.  (jj prints a warning in that case, even
  when run with =--quiet=, so we need to discard output to stderr.)

** [[https://codeberg.org/emacs-jj-vc/vc-jj.el/compare/v0.1...v0.2][0.2]] - 2025-04-18

*** Fixed

- Properly escape filenames containing jj fileset operator characters.

** [[https://codeberg.org/emacs-jj-vc/vc-jj.el/src/tag/v0.1][0.1]] - 2025-03-16

- First released version.
