hledger/CHANGELOGS.md
2021-09-27 01:24:59 -10:00

1.5 KiB

Changelogs

How to prepare changelogs & release notes

Changelogs:

  • always maintain changelogs in master branch, not in release branches
  • ./Shake changelogs
  • edit the new changelog items (identify, filter, move to correct changelog, deduplicate, rewrite, sort/group)

Release notes:

  • add a new TOC entry and section in site/release-notes.md
  • copy/rewrite/summarise package changelogs
  • note any other items of interest
  • list release contributors
  • write release summary

Frequently

especially after merging changes, and before cherry picking into release branch:

  • dry run: ./Shake changelogs -n
  • add new changes: ./Shake changelogs
  • edit
    • drop things
    • move things
    • Add headings: Features, Improved, Fixes
    • rewrite things
    • format (#ISSUE, AUTHOR) on its own line
  • commit: ./Shake changelogs -c

After cherry-picking

changes to a release branch:

  • in the master branch changelogs, move the corresponding changelog items under a pending release heading, creating that when necessary: ``` # LATESTHASH

    …CHANGES ONLY IN MASTER…

    # NEXTVER unreleased

    …CHANGES CHERRYPICKED INTO RELEASE BRANCH…

    # LASTVER YYYY-MM-DD ```

At release

  • do final update/edits; check organisation, wording, formatting, issue links
  • replace “unreleased” with the release date
  • copy the new sections from master changelogs to release branch changelogs