Skip to content

Minor changes to version tracking between release and master#1093

Open
dkcumming wants to merge 6 commits into
masterfrom
dc/version-tweaking
Open

Minor changes to version tracking between release and master#1093
dkcumming wants to merge 6 commits into
masterfrom
dc/version-tweaking

Conversation

@dkcumming

@dkcumming dkcumming commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator

master branch had discrepancies between versions scattered across the repo, all since #606. This PR makes things a little easier to understand by:

  • Changing master versions to sentinel value 0.0.0;
  • Changing release branch to bump the version by reading from the last version on release (no cross contamination);
  • Improved data pipeline for updating semver to use commit trailers* (I believe this was actually broken in the previous version and we just didn't know because we never bumped anything other than patch);
  • Pinned uv version for local machines to stop drift and mismatch between local builds and CI;
  • Adds kmir --version to print the current version;
  • Added documentation and inline comments to try and make this understandable (it was a little cryptic and I think mostly broken before).

* Commit trailers are one liners of either "Bump: major", "Bump: minor", or "Bump: patch" in a commit or squash message as a single line that tell bump script if it should what the bump level is for the semver. Patch is defaulted if nothing is written in the commit message.

closes: #1078

- `master` branch now has all versions as sentinel 0.0.0;
- master-push.yml on `release` branch will read previous version from
  that branch, conflicts will default to `release` so 0.0.0 is never
  merged from `master` to `release`;
- Commit trailer "Bump: {major, minor, patch}" now instruct how to bump
  the version
- version.sh updated to take argument stripped from commit trailer
- TODO: write out docs/dev/releasing.md at the end
This means that local builds will fail unless they have the same version
that CI uses. If we want to test with a differnt version, we can remove
the section from the pyproject.toml file.
- Added `kmir --version` to test-package.sh
- Default `bump_level` to patch in master-push.yml for safety
- Explicitly mention assumption that github strategy "ours" should only
  differ on version files
- Mention in README.md that specific uv version is needed now
@dkcumming dkcumming self-assigned this Jul 14, 2026
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.

Inconsistent KMIR versions across project

1 participant