Source GitHub Release description from CHANGELOG.md
- Dominant language
- Go
- Stars
- 316
- Forks
- 163
- Avg merge
- 4d 12h
- Merged PRs (30d)
- 8
Description
Currently we use [Unified CI](https://github.com/protocol/.github) for tagging releases based on `version.json`, but we'd like to minimize the effort for cutting releases so that we can cut them more frequently.
So I propose we instead cut releases using https://github.com/pl-strflt/changelog-driven-release. Basically the workflow would look like:
- Accumulate changes in the [Unreleased] section of the CHANGELOG
- These should be added as commits are added, and the CHANGELOG update should happen as part of the PR for a feature
- CI enforcement of this is tracked here: https://github.com/ipfs/boxo/issues/267
- When ready to release, change `[Unreleased]` to `[vX.Y.Z] YYYY-mm-dd`, which is then detected by CI as a release and results in a new tag and a GitHub release with the changelog contents in the release notes.
Other requirements:
* We currently run Kubo tests for each release, until enough are moved into Boxo, so we need to run releases on a `release-vX.Y.Z` branch and merge into `release` which should trigger the release. This way we don't have to "freeze" `main` while we do a release. Once the release is complete, merge `release` into `main` (which should NOT trigger a release). This is different than most folks, who just merge to `main` which triggers a release based on the tip of `main`...we do NOT want this behavior.
* We love all the checks that Unified CI does for releases and would like to keep them (release checker workflow, which runs gorelease et al to verify the release version, call out breaking changes, etc.)
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.