fix(ci): publish with an action that accepts Metadata-Version 2.5 - #291
Merged
Conversation
The 0.91.0 release cut the tag, the version-bump commit and the GitHub release, then failed at "Publish to PyPI" with `InvalidDistribution: Invalid distribution metadata: '2.5' is not a valid metadata version`. PyPI therefore still serves 0.90.3. Current hatchling emits Metadata-Version 2.5. The pinned pypa/gh-action-pypi-publish v1.14.0 bundles twine 6.1.0 and packaging 25.0, which do not know that version. v1.14.2 bundles twine 7.0.0 and packaging 26.2, and openadapt-flow and openadapt-capture already pin it. This is a fix commit so semantic release cuts and publishes the patch that closes the PyPI gap. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
abrichr
added a commit
to OpenAdaptAI/openadapt-privacy
that referenced
this pull request
Aug 19, 2026
pypa/gh-action-pypi-publish v1.14.0 bundles twine 6.1.0 and packaging 25.0, which reject Metadata-Version 2.5 -- the version current hatchling emits. The publish step fails with: InvalidDistribution: Invalid distribution metadata: '2.5' is not a valid metadata version This is not hypothetical: the same pin broke the openadapt-evals 0.91.0 release. The tag, the version-bump commit and the GitHub release all landed, then "Publish to PyPI" failed, leaving PyPI stale while every other release artifact said the version had shipped. Move to v1.14.2 (twine 7.0.0 + packaging 26.2), the pin openadapt-flow and openadapt-capture already use and the one applied to openadapt-evals in OpenAdaptAI/openadapt-evals#291. Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
abrichr
added a commit
to OpenAdaptAI/openadapt-types
that referenced
this pull request
Aug 19, 2026
pypa/gh-action-pypi-publish v1.14.0 bundles twine 6.1.0 and packaging 25.0, which reject Metadata-Version 2.5 -- the version current hatchling emits. The publish step fails with: InvalidDistribution: Invalid distribution metadata: '2.5' is not a valid metadata version This repo builds with unpinned hatchling via the semantic-release build_command, so it emits 2.5 and is exposed to exactly this failure. This is not hypothetical: the same pin broke the openadapt-evals 0.91.0 release. The tag, the version-bump commit and the GitHub release all landed, then "Publish to PyPI" failed, leaving PyPI stale while every other release artifact said the version had shipped. Move to v1.14.2 (twine 7.0.0 + packaging 26.2), the pin openadapt-flow and openadapt-capture already use and the one applied to openadapt-evals in OpenAdaptAI/openadapt-evals#291. Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
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.
The problem
The 0.91.0 release created the tag
v0.91.0, pushed thechore: release 0.91.0commit tomain, and published the GitHub release, then failed at Publish to PyPI:PyPI therefore still serves
openadapt-evals0.90.3, andmainis red. Failure run: https://github.com/OpenAdaptAI/openadapt-evals/actions/runs/32306043421 (tracked by #290).The cause
Current hatchling emits
Metadata-Version: 2.5. The pinnedpypa/gh-action-pypi-publishv1.14.0 (cef22109) bundlestwine==6.1.0andpackaging==25.0, which do not know that metadata version. v1.14.2 (dc37677b) bundlestwine==7.0.0andpackaging==26.2.openadapt-flowandopenadapt-capturealready pindc37677b.The change
Bumps the pin to v1.14.2 and records why. Nothing else changes; the artifact itself is unaffected.
This is a
fixcommit, so semantic release cuts 0.91.1 and publishes it with the corrected action, which closes the PyPI gap left by 0.91.0.🤖 Generated with Claude Code