66 lines
3.6 KiB
Markdown
66 lines
3.6 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
A `### Breaking` section is used in addition to Keep a Changelog's standard sections to explicitly document changes that are backwards-incompatible but would otherwise appear under `### Changed`. Entries under `### Breaking` trigger a major version bump in automated release recommendation logic.
|
|
|
|
## [Unreleased]
|
|
|
|
### Breaking
|
|
|
|
### Added
|
|
|
|
- Added a project LICENSE file.
|
|
|
|
### Changed
|
|
|
|
### Removed
|
|
|
|
### Fixed
|
|
|
|
- Prepare now recreates the standard `Unreleased` section headers after promoting notes into a tagged release entry.
|
|
- First-release recommendation remains `v1.0.0` when no prior releases exist in the changelog.
|
|
- Do Release smoke validation now expects `--recommend` to fail on tagged release checkouts where `Unreleased` is intentionally empty.
|
|
- Changelog reference links now use compare URLs (`previous...current` for releases and `latest...main` for Unreleased), with first release links comparing from the repository's first commit short hash.
|
|
- Repository URL derivation now supports `VOCIFERATE_REPOSITORY_URL` as the highest-priority override for changelog link generation.
|
|
|
|
## [0.1.0] - 2026-03-20
|
|
|
|
### Changed
|
|
|
|
- README workflow badges now link to the latest workflow run pages instead of the workflow definition pages.
|
|
|
|
### Fixed
|
|
|
|
- Publish action falls back to `git describe` when `inputs.version` is empty and `GITHUB_REF` is not a tag ref, resolving `workflow_call` input propagation failures in act runner v0.3.0.
|
|
|
|
### Added
|
|
|
|
- Coverage badge in README linked to S3-hosted main-branch report.
|
|
- S3 coverage artefact publishing (HTML report, badge, JSON summary) in push validation pipeline.
|
|
- CLI tests and internal helper tests raising total coverage to 84%.
|
|
- Test suite isolation against ambient CI environment variables for changelog link generation tests.
|
|
- Go CLI for changelog-driven release preparation and semantic version recommendation.
|
|
- Version recommendation from changelog release headings, including first-release support (`0.0.0` base -> `v1.0.0`).
|
|
- Automatic `release-version` creation/update during release preparation.
|
|
- Configurable version source/parsing via `--version-file` and `--version-pattern`.
|
|
- Configurable changelog path via `--changelog`.
|
|
- Recommended-version fallback when `version` is omitted in CLI and action flows.
|
|
- Major-version recommendation trigger from `Unreleased` `### Breaking`.
|
|
- Root composite action (`action.yml`) for recommend/prepare flows.
|
|
- Subdirectory composite actions: `prepare/action.yml` (prepare/commit/tag/push) and `publish/action.yml` (extract notes/create-or-update release).
|
|
- `publish` outputs for downstream automation: `release-id`, `tag`, and `version`.
|
|
- Dual execution mode for actions: `go run` from source on `@main`, prebuilt binaries on tagged refs.
|
|
- Repository-scoped binary cache keys with workflow-defined fixed token support via `VOCIFERATE_CACHE_TOKEN`.
|
|
- Tag-driven release publication with idempotent release updates and asset replacement on reruns.
|
|
- Release artifacts for `linux/amd64`, `linux/arm64`, and `checksums.txt`.
|
|
- Reusable Gitea workflows (`prepare-release.yml`, `do-release.yml`) with `workflow_call` support.
|
|
- Project/automation rename from `releaseprep` to `vociferate` (entrypoint, package paths, outputs).
|
|
- README guidance focused on primary cross-repository reuse workflows.
|
|
|
|
[Unreleased]: http://teapot:3000/aether/vociferate/src/branch/main
|
|
[0.1.0]: http://teapot:3000/aether/vociferate/releases/tag/v0.1.0
|