Skip to content

[release]: Cut patches from per-minor release branches - #237

Merged
pseudomuto merged 1 commit into
mainfrom
release-branches
Oct 16, 2026
Merged

pseudomuto merged 1 commit into
mainfrom
release-branches

Conversation

@pseudomuto

Copy link
Copy Markdown
Collaborator

Starting with v1.0 we support the current minor and the two before it, so critical fixes need to ship on older lines. Releases could only be cut from main, and every release took latest on GitHub and Docker Hub, so a patch to an older line would have taken latest from a newer one.

Each minor now gets a releases/vX.Y.x branch, which the workflow creates when it releases vX.Y.0 from main. main cuts minor and major releases, release branches cut patches for their line only. svu picks the highest tag in the whole repo regardless of branch, so on a release branch it is limited to that line's tags with --tag.pattern.

A release is marked latest only when it is the highest stable version. The workflow passes that to goreleaser as MAKE_LATEST, which controls both make_latest and the latest image tag. This also stops prereleases from taking the latest image tag.

CI now runs for release branches so backport PRs are checked, and CONTRIBUTING covers the support window and how to backport, including fixes that need adapting rather than a clean cherry-pick.

Starting with v1.0 we support the current minor and the two before it,
so critical fixes need to ship on older lines. Releases could only be cut
from main, and every release took latest on GitHub and Docker Hub, so a
patch to an older line would have taken latest from a newer one.

Each minor now gets a _releases/vX.Y.x_ branch, which the workflow creates
when it releases vX.Y.0 from main. main cuts minor and major releases,
release branches cut patches for their line only. `svu` picks the highest
tag in the whole repo regardless of branch, so on a release branch it is
limited to that line's tags with `--tag.pattern`.

A release is marked latest only when it is the highest stable version.
The workflow passes that to goreleaser as MAKE_LATEST, which controls
both make_latest and the latest image tag. This also stops prereleases
from taking the latest image tag.

CI now runs for release branches so backport PRs are checked, and
CONTRIBUTING covers the support window and how to backport, including
fixes that need adapting rather than a clean cherry-pick.
@pseudomuto
pseudomuto requested a review from a team as a code owner October 16, 2026 16:34
@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@pseudomuto
pseudomuto merged commit a799dc2 into main Oct 16, 2026
6 checks passed
@pseudomuto
pseudomuto deleted the release-branches branch October 16, 2026 17:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants