test: pin version identity across pyproject / __version__ / CITATION.cff - #18
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
data-aggregator-mcpis the only repo in this account that pins version identity, viatests/test_packaging.py. It earned its keep immediately — during today's v0.45.1 releaseit caught two incomplete version bumps, one after the other.
The repos without it stayed green while carrying a stale version. That is the dangerous
part: absence of a test looks exactly like a passing one.
This repo was bitten by the citation half.
CITATION.cffclaimed0.4.0for a month while the project shipped0.5.0, because nothing compared them.What
tests/test_packaging.py, adapted to this repo's actual shape rather than copied:__version__==pyproject.tomlversionCITATION.cffversion == pyprojectNo
server.jsonassertions — this repo does not publish to the MCP registry, so thedata-aggregator version of the test does not apply verbatim.
tomliadded to thedevextra forpython_version < "3.11".tomllibis stdlib onlyfrom 3.11 and this package supports
>=3.9with CI running 3.9 — an unguardedimport tomllibwould have failed collection on the two oldest legs. (That is not hypothetical: itis exactly how the same port broke on
ldraw-mcp, whose 3.10 leg went red before this wascaught.) Both import branches were exercised locally.
Verified in both directions
Run against a real editable install of this repo, then re-run with
__version__mutated,so the test is known to fire on the condition it exists to catch:
🤖 Generated with Claude Code