Add two focused subdirectory composite actions:
- prepare/action.yml: downloads the vociferate binary, runs it to update
changelog and release-version, then commits, tags, and pushes — replacing
the boilerplate git steps consumers previously had to write inline.
- publish/action.yml: extracts the matching changelog section and creates or
updates the Gitea/GitHub release. Outputs release-id, tag, and version so
consumers can upload their own assets after it runs.
Simplify the vociferate workflows to use ./prepare and ./publish directly,
validating both actions in the self-release pipeline.
Update README to show the clean two-action usage pattern.
- action.yml: clarify that version-file triggers version-file-based
resolution and that omitting it causes the version to be derived from
the changelog; note version-pattern is only required when version-file
is set.
- README: replace stale reference to the plain-text release-version file
as the default with an accurate description of changelog-based
versioning as the default, directing users to set version-file and
version-pattern only for repos with source-embedded versioning.
- RecommendedTag now reads the current version from the most recent
released section heading in the changelog (## [x.y.z] - ...) when no
--version-file flag is given, removing the dependency on a separate
version file for recommendation.
- When the changelog contains no prior releases, the base version
defaults to 0.0.0, so the first recommended tag is v1.0.0 (or higher
depending on unreleased content).
- Prepare creates the release-version file if it does not already exist,
so new repositories do not need to pre-seed it.
- Add tests covering changelog-based version resolution, first-release
default, and automatic file creation.
- Update README and changelog unreleased section to document the new
behaviour.
- Remove publish steps (release creation, binary build/upload) from the
Prepare Release workflow; it now stops after committing and pushing the
tag.
- Add Do Release workflow triggered on v*.*.* tag pushes; reads release
notes from the tagged changelog section, creates or updates the release,
builds linux/amd64 and linux/arm64 binaries, uploads assets, then
smoke-tests both binaries in a follow-on validate job.
- Remove the standalone Action Validation workflow; binary validation now
runs as a second job in Do Release after the release job succeeds, using
the exact tag and version just published.
- Update README to document the two-workflow release model and add split
prepare/publish usage examples for both the composite action and the
reusable workflows.
- Update changelog unreleased section to reflect the new pipeline split
and corrected artifact scope (linux/amd64 and linux/arm64 only).