Skip to content

CI: bump build-and-inspect-python-package to v3.0.1 (fix failed v0.13.0 deploy) - #272

Merged
mrava87 merged 1 commit into
PyLops:mainfrom
mrava87:ci-bump-build-and-inspect
Oct 3, 2026
Merged

mrava87 merged 1 commit into
PyLops:mainfrom
mrava87:ci-bump-build-and-inspect

Conversation

@mrava87

@mrava87 mrava87 commented Oct 3, 2026 •

Copy link
Copy Markdown
Contributor

Motivation

The deploy run for v0.13.0 failed: https://github.com/PyLops/pyproximal/actions/runs/37135819955/job/111240026958

The wheel built fine, but the Check PyPI README step (twine check --strict) in hynek/build-and-inspect-python-package@v2 failed with:

InvalidDistribution: Invalid distribution metadata: '2.5' is not a valid metadata version

Root cause

  • pyproject.toml does not pin hatchling, so the build used the latest release (1.32.4), which writes Metadata-Version: 2.5.
  • The action's v2 line bundles twine==6.2.0 / packaging==26.2, which do not recognise metadata 2.5.
  • Verified locally: hatchling 1.30.1 and 1.31.0 emit 2.4; 1.32.4 emits 2.5. (1.32.0-1.32.3 not tested.)

Fix

Bump the action to v3.0.1. v3.0.0 updates its build dependencies, including Twine 7, which adds support for metadata 2.5. As of v3 the action no longer force-moves major/minor tags, so it is pinned to the full commit SHA (2abe76d…, the commit behind the v3.0.1 tag).

This keeps hatchling unpinned. The alternative was hatchling < 1.32 in build-system.requires, which would be a workaround to remove later.

Not verified yet

I have not run the new action. After merging, workflow_dispatch on PyProximal-deploy runs only the build job and will confirm the check passes.

Releasing afterwards

The release workflow builds the commit the tag points to, so v0.13.0 needs to be re-tagged on a commit containing this fix (or the release re-published) for the deploy to succeed.

🤖 Generated with Claude Code

The v0.13.0 deploy run failed in the "Check PyPI README" step
(`twine check --strict`) with:

  InvalidDistribution: Invalid distribution metadata: '2.5' is not a
  valid metadata version

pyproject.toml does not pin hatchling, so the build picked up
hatchling 1.32.x, which writes Metadata-Version 2.5. The action's v2
line bundles twine 6.2.0 / packaging 26.2, which do not know 2.5.
v3.0.0 of the action ships Twine 7 with metadata 2.5 support.

The action no longer force-moves major tags, so pin the full commit SHA.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@codacy-production

Copy link
Copy Markdown

Not up to standards ⛔

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@mrava87 mrava87 changed the title ci: bump build-and-inspect-python-package to v3.0.1 (fix failed v0.13.0 deploy) CI: bump build-and-inspect-python-package to v3.0.1 (fix failed v0.13.0 deploy) Oct 3, 2026
@mrava87
mrava87 merged commit e266112 into PyLops:main Oct 3, 2026
15 of 16 checks passed
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