Open DavidGregory084 opened 2 years ago
From experience, it's a burden to maintain a changelog in addition to GitHub releases. This is a shame, because GitHub releases are not part of the git history, not portable, and therefore Are Considered Harmful
In olden times, there was a convention of release notes in a notes/
directory that were read by an sbt plugin and published to a Tumblr called implicit.ly, but kept a record in git. It was great. I think there's a missing SBT plugin that concatenates our GitHub releases into a portable, versioned CHANGELOG... or, alternatively, creates GitHub releases from notes in Git.
I'm lazy to keep a changelog, but I have to say another advantage is that they synthesize a PR that other maintainers can review/edit/contribute to. This process has been helpful for large projects like http4s.
Spotted this completely different approach to managing versions and changelogs a couple weeks ago - the CHANGELOG.md file drives everything. IMO it's a bit of a pain to use Markdown for this and it leads to merge conflicts in the "Unreleased" section every time a PR is merged, but the idea could be interesting if it used a more structured format.
I've used the Keep a changelog format in a few projects now and I'm a fan of it, perhaps we could add this to typelevel.g8 as well?