You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(version): resolve __version__ from importlib.metadata, not literal
Both cli/ossmate and mcp/ossmate_mcp had `__version__ = "0.0.1"` literals
in their __init__.py — bump_version.py never touched these so `ossmate
version` printed "0.0.1" while pip showed 0.1.0. Now both read from
importlib.metadata.version() and agree with the installed wheel.
Adds invariant test test_init_modules_dont_hardcode_versions to forbid
the hardcoded form. Caught one day after v0.1.0 shipped — will roll into
the next release rather than burning a 0.1.1 cycle.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: CHANGELOG.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,6 +9,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
10
10
## [Unreleased]
11
11
12
+
### Fixed
13
+
-`ossmate version` and `ossmate_mcp.__version__` resolved to the hardcoded literal `"0.0.1"` instead of the installed package version. Both `__init__.py` modules now read from `importlib.metadata.version()` so they always agree with what `pip show` reports. New invariant test [tests/test_versioning.py](tests/test_versioning.py)::`test_init_modules_dont_hardcode_versions` forbids the hardcoded form going forward — caught the day after v0.1.0 shipped to PyPI
14
+
12
15
## [0.1.0] - 2026-04-19
13
16
14
17
First public release. Reference implementation of every Claude Code extension surface, packaged as both a plugin and a standalone CLI.
0 commit comments