Problem
Every change to action.yml, action/*.sh, or bot/ needs a new tag for adopters to pick it up, and release.yml requires the tag to match the workspace version, so an action-only fix costs a ten-crate crates.io release. v0.3.1 was exactly that: no CLI change, a full publish. It will recur with every adopter-driven action tweak.
Proposed solution
- A floating major tag
v0 (later v1) that the release job moves to the latest v0.x.y tag after a successful run, so adopters can write uses: Verdenroz/soothfast@v0 and receive action fixes without editing their workflow. SHA-pinning adopters keep working as today.
- Action-only tags, for example
action-v0.3.2, that run bot.yml's checks and move v0 but skip publish, binaries, and the crate version assertion. The resolve job decides which shape a tag has.
The setup action's version-from-Cargo.lock behaviour is unaffected: the CLI it installs still follows the adopter's lock, so the action ref and the CLI version stay decoupled by design, with the documented rule that the action ref is never newer than the CLI it drives.
Affected crate(s): none; .github/workflows/release.yml, docs.
Problem
Every change to
action.yml,action/*.sh, orbot/needs a new tag for adopters to pick it up, andrelease.ymlrequires the tag to match the workspace version, so an action-only fix costs a ten-crate crates.io release. v0.3.1 was exactly that: no CLI change, a full publish. It will recur with every adopter-driven action tweak.Proposed solution
v0(laterv1) that the release job moves to the latestv0.x.ytag after a successful run, so adopters can writeuses: Verdenroz/soothfast@v0and receive action fixes without editing their workflow. SHA-pinning adopters keep working as today.action-v0.3.2, that runbot.yml's checks and movev0but skippublish,binaries, and the crate version assertion. Theresolvejob decides which shape a tag has.The setup action's version-from-
Cargo.lockbehaviour is unaffected: the CLI it installs still follows the adopter's lock, so the action ref and the CLI version stay decoupled by design, with the documented rule that the action ref is never newer than the CLI it drives.Affected crate(s): none;
.github/workflows/release.yml, docs.