Release Notes v0.3.0¶
Release Date: January 4, 2026
Overview¶
This release adds pre-built binary distribution via GoReleaser and Homebrew, making installation easier across Linux, macOS, and Windows platforms.
Installation¶
Homebrew (macOS/Linux) - New!¶
Both schangelog and structured-changelog commands are available after installation.
Go Install¶
Direct Download¶
Pre-built binaries are available on the GitHub Releases page for:
| OS | Architecture |
|---|---|
| Linux | amd64, arm64 |
| macOS | amd64 (Intel), arm64 (Apple Silicon) |
| Windows | amd64, arm64 |
New Features¶
Homebrew Distribution¶
Install schangelog via Homebrew with a single command:
The formula installs both command names:
schangelog- Short form for daily usestructured-changelog- Long form matching the project name
Multi-Platform Binary Releases¶
GoReleaser now builds binaries for 6 platform combinations:
| Platform | Archive Format |
|---|---|
linux_amd64 |
.tar.gz |
linux_arm64 |
.tar.gz |
darwin_amd64 |
.tar.gz |
darwin_arm64 |
.tar.gz |
windows_amd64 |
.zip |
windows_arm64 |
.zip |
Each release includes:
- Pre-compiled binary
- README.md
- LICENSE
- CHANGELOG.md
- SHA256 checksums
Automated Release Workflow¶
New releases are automatically built when a version tag is pushed:
The GitHub Actions workflow:
- Builds binaries for all platforms
- Creates GitHub release with assets
- Updates Homebrew formula in grokify/homebrew-tap
Build Configuration¶
GoReleaser¶
The .goreleaser.yaml configuration includes:
- CGO disabled for static binaries
- Version/commit/date injection via ldflags
- Automatic changelog generation (excludes docs/test/chore commits)
- Homebrew formula auto-update
Version Information¶
The CLI now displays build metadata:
Migration from v0.2.0¶
No breaking changes. Existing go install users can continue using that method, or switch to Homebrew:
# Remove Go-installed binary (optional)
rm $(which schangelog)
# Install via Homebrew
brew tap grokify/tap
brew install structured-changelog
What's Next¶
Planned for future releases:
schangelog init- Create empty CHANGELOG.jsonschangelog add --type=fixed "Description"- Add entry to unreleasedschangelog release 1.2.0- Promote unreleased to new version- GitLab/Bitbucket link support