Skip to content

👷 Release v5 and v6 as separate version lines - #113

Merged
kammce merged 1 commit into
mainfrom
release-lines
Oct 17, 2026
Merged

kammce merged 1 commit into
mainfrom
release-lines

Conversation

@kammce

@kammce kammce commented Oct 15, 2026 •

Copy link
Copy Markdown
Member

Releases libhal-util's two version lines independently, so v6 can publish pre-releases (6.0.0-alpha.N) for libhal-arm-mcu v2 while v5 keeps releasing as before.

major directory releases
5 v5/ 5.x.y, as before
6 v6/ 6.0.0-alpha.N until 6.0.0 exists

Changes

  • semantic-release.yml now calls the shared semantic_release.yml from libhal/ci (✨ Add semantic_release.yml for per-directory version lines ci#129) with lines 5 and 6:
    • each line only sees its own tags and only counts commits that change its directory;
    • (minor) or (patch) in a commit subject (the PR title, for squash merges) asks for a release, and the highest keyword wins;
    • (major) fails the run, because major versions are started by hand.
  • deploy.yml: 5.* tags deploy v5/ as before. 6.* tags deploy v6/ with LLVM 23 and Conan 2.33.0, uploading with the trunk remote credentials.
  • api.yml: the v5 docs job no longer runs for 6.x releases.
  • CONTRIBUTING.md: a short "Releases" section on (minor) and (patch) in PR titles.

No commit under v5/ with a release keyword is waiting since 5.10.0, so merging this won't cut a v5 release. The shared script reports the same.

After merging

The 6.x line has no tag yet, so nothing releases from v6/ until a maintainer starts it by hand, e.g. after #110 and #111 merge:

gh release create 6.0.0-alpha.1 --prerelease --generate-notes

After that, (minor) or (patch) PRs that change v6/ cut 6.0.0-alpha.2, 6.0.0-alpha.3, ...

Releases 5.x from v5/ and 6.x from v6/ independently, using the shared
semantic_release.yml from libhal/ci. It only reads (minor) and (patch)
from commit subjects and has no (major) keyword, so the 6.x line starts
when a maintainer publishes 6.0.0-alpha.1 by hand.

deploy.yml deploys 5.* tags from v5/ and 6.* tags from v6/, and api.yml
only builds API docs for 5.* releases. CONTRIBUTING.md now explains how
releases are requested.
@kammce
kammce merged commit de4aa6c into main Oct 17, 2026
5 checks passed
@kammce
kammce deleted the release-lines branch October 17, 2026 00:23
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.

1 participant