docs: Make CHANGELOG update mandatory first step in release process

This commit is contained in:
Steve Yegge
2025-11-05 00:09:48 -08:00
parent d46894e0ad
commit 9855388094

View File

@@ -68,13 +68,43 @@ Before starting a release:
- [ ] All tests passing (`go test ./...`) - [ ] All tests passing (`go test ./...`)
- [ ] npm package tests passing (`cd npm-package && npm run test:all`) - [ ] npm package tests passing (`cd npm-package && npm run test:all`)
- [ ] CHANGELOG.md updated with changes - [ ] **CHANGELOG.md updated with release notes** (see format below)
- [ ] Version bumped in all locations (use `scripts/bump-version.sh`)
- [ ] No uncommitted changes - [ ] No uncommitted changes
- [ ] On `main` branch and up to date with origin - [ ] On `main` branch and up to date with origin
## 1. Prepare Release ## 1. Prepare Release
### Update CHANGELOG.md
**IMPORTANT: Do this FIRST before running bump-version script.**
Add release notes to CHANGELOG.md:
```markdown
## [0.22.0] - 2025-11-04
### Added
- New feature X
- New command Y
### Changed
- Improved performance of Z
### Fixed
- Bug in component A
### Breaking Changes
- Changed behavior of B (migration guide)
```
Commit the CHANGELOG changes:
```bash
git add CHANGELOG.md
git commit -m "docs: Add CHANGELOG entry for v0.22.0"
git push origin main
```
### Update Version and Create Release Tag ### Update Version and Create Release Tag
Use the version bump script to update all version references and create the release tag: Use the version bump script to update all version references and create the release tag:
@@ -114,27 +144,6 @@ git push origin main
git push origin v0.22.0 git push origin v0.22.0
``` ```
### Update CHANGELOG.md (Optional but Recommended)
Add release notes before or after running the version bump:
```markdown
## [0.22.0] - 2025-11-04
### Added
- New feature X
- New command Y
### Changed
- Improved performance of Z
### Fixed
- Bug in component A
### Breaking Changes
- Changed behavior of B (migration guide)
```
## 2. GitHub Release ## 2. GitHub Release
### Using GoReleaser (Recommended) ### Using GoReleaser (Recommended)