# changelog changelog

## [v0.6.1] 2026-06-04

### Added

- git support

### Changed

- updates `CHANGELOG.md` directly instead of writing to stdout. This obviates the need for the user to employ a tool like `sponge`, and while it's a questionable benefit, the file name was already hardcoded to pull the header from. A better solution would be to allow the user to specify a file name.
- changelog

### Removed

- unnecessary code (cf "bookmarks")

## [v0.6.0] 2026-06-04

### Added

- authors section
- summary for jj
- summary when there are no other comments for the revision; this is taken from the tagged revision's commit.

### Changed

- summary overwriting on multi-line texts
- date pasing for hg
- template layout to eliminate odd spacing

### Fixed

- some cases where commits weren't matched because they were missing tags
- print bookmarks even if they have no magic keyword log messages.
- include the "unreleased" commit at the front, if it exists
- jj history
- duplicate first-tag: sed should have been '/^## /Q' (big-q), but in the end, replaced sed with parsing the lines for one less shell call
- various bugs in parsing

### Removed

- the old shell script

## [v0.5.0] 2026-06-03

The bash script was too slow, so recoded in Go.

## [v0.4.3] 2026-06-03

### Changed

- Be smarter about detecting previous bookmark. jj, hg only at the moment.

### Fixed

- mercurial bookmark parsing

## [v0.4.2] 2025-05-08

### Added

- understands jujustu repos (and branches) now

### Changed

- writes directly to CHANGELOG.md, because piping prevents it from reading the previous file's header
- legume report converted to markdown numbered list

### Fixed

- 'unreleased' entry _always_ being generated
- writes an "unreleased" header

## [v0.4.1] 2025-03-05

### Fixed

- bug in extracting Mercurial metadata

## [v0.4.0] 2025-02-26

### Added

- list all contributors in a section at the end
- proper support for jj (jujutsu)

### Fixed

- updateChangelog was `exit`ing; it's just a func! oops.

## [v0.3.0] 2025-01-02

### Changed

- changelog and readme
- updateChangelog() just regenerates the entire changelog

### Fixed

- empty lines

## [v0.2.1] 2024-11-03

### Added

- groundwork for supporting git (it doesn't yet work)
- if legume is installed, use it to attach the issues to the changelog

### Changed

- look for semvar tags among multiple tags
- better change insertion logic
- cleans up (simplifies) Mercurial log generation command

### Fixed

- better semvar tag detection; doesn't exclude other tags/bookmarks, but prefers semvars

## [v0.2.0] 2024-10-09

### Added

- changelog header generation
- a bash function for automatically updating a changelog in a Mercurial repository using bookmarks

### Fixed

- (corrects) documentation

## [v0.1.0] 2023-10-27

### Added

- ability to detect time and bookmark/tags
- the ability to (re)generate entire changelog
- more usage information and caveats to the README

### Changed

- the keyword set, s.t. update is an alias for change, and revert for remove

### Fixed

- regexp matching that was resulting in empty bullets

## [v0.0.1] 2023-10-23

### Added

- documentation

### Changed

- from zsh to bash (I may regret this)

## Authors

- Sean E. Russell <ser@ser1.net>

## Todos

1. REQ if there's no magic keyword, should they be added as a version description?
