Skip to content

chore(release-management): sync vendored assets to v4.2.0 - #20

Merged
leandrolerena merged 1 commit into
developfrom
chore/release-management-v4.2.0
Aug 18, 2026
Merged

chore(release-management): sync vendored assets to v4.2.0#20
leandrolerena merged 1 commit into
developfrom
chore/release-management-v4.2.0

Conversation

@leandrolerena

Copy link
Copy Markdown
Member

Syncs the vendored release-management assets to v4.2.0, which is the first
release carrying the Python tag generator (release.py) that replaced the
tag_*.sh scripts.

Produced by the documented mechanism — make sync-release-assets (the
gh release download --repo zebbra/release-management --pattern sync_release_assets.sh | sh
bootstrap). Nothing here is hand-edited.

What changes

  • tag_{major,minor,patch}.sh, tag_{major,minor,patch,latest}_beta.sh removed
  • release.py + test_release.py added
  • release-management-makefile: the tag-* targets now call
    uv run .make_scripts/release-management/release.py <level>

tag_major_minor_ruleset.sh, check_for_releases.sh, hard_reset_tags.sh and
sync_release_assets.sh stay shell. The repo's own check_for_releases.sh
REPOS=(...) list is preserved by the sync, and .github/release.yml was
already current.

Behaviour

Version numbering is unchanged. What is new is a SemVer graph-integrity
guard
on stable tags: tag-patch/minor/major refuse to create a tag that is
not strictly greater than every stable tag reachable from HEAD and strictly
lower than every stable tag on HEAD's descendants. Beta tags are unguarded, as
before. make tag-* still only creates a local annotated tag — pushing stays a
separate step.

⚠️ uv is now required for make tag-* — it runs release.py and resolves
that script's own dependencies. Previously these targets needed only shell tools.

Verification

  • make -n tag-minor resolves to uv run .make_scripts/release-management/release.py minor, no make warnings
  • release.py --help runs clean
  • release-management's own suite: 12 passed

Replaces the tag_*.sh scripts with the Python release.py shipped in
release-management v4.2.0, and points the tag-* make targets at it.
Generated by make sync-release-assets; no hand edits.

Stable tags are now guarded against SemVer graph-ordering violations.
make tag-* requires uv from here on.
@leandrolerena leandrolerena added the pr-other PR does something not covered by other labels label Aug 18, 2026
@leandrolerena leandrolerena self-assigned this Aug 18, 2026
@leandrolerena
leandrolerena merged commit 2e05c10 into develop Aug 18, 2026
3 of 5 checks passed
@leandrolerena
leandrolerena deleted the chore/release-management-v4.2.0 branch August 18, 2026 14:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-other PR does something not covered by other labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant