diff --git a/CLAUDE.md b/CLAUDE.md index cf022a3..b5f09ae 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -228,8 +228,13 @@ say, such as what was wrong before or what it cost to find out, it goes in the c body, where `git log` and `git blame` find it beside the change. (There was a long-form `docs/history.md` until 0.7.0; it grew too large to be useful and was removed. It is in git.) -Cutting a release: rename `[Unreleased]` to `## [X.Y.Z] - YYYY-MM-DD` and open a new empty -`[Unreleased]` above it, set `version` in `Cargo.toml` to `X.Y.Z` (dropping `-dev`), tag the commit +Cutting a release: first read `[Unreleased]` against the last release, not line by line, and rewrite +it as what changed between the two. Lines go in as the work happens, so they record the way there: +a feature added and then reworked in the same release is one line saying what it is now, under +Added; something added and taken out again before the release, or a fix for a bug no release ever +had, is not there at all; and "instead of" and "no longer" compare with the last release, not with +last week. Issue numbers stay, all of them, on the line that survives. Then rename `[Unreleased]` to +`## [X.Y.Z] - YYYY-MM-DD` and open a new empty `[Unreleased]` above it, set `version` in `Cargo.toml` to `X.Y.Z` (dropping `-dev`), tag the commit `vX.Y.Z`, and update the compare links at the bottom of the changelog. Then, in the next commit, set `version` to the next patch with `-dev` (after 0.9.0, `0.9.1-dev`), so a build between releases says so in the logo's tooltip instead of claiming to be the last release. The release that follows can