Skip to content

Commit ffdf0f7

Browse files
committed
ci: bump pypi-publish to v1.12.4 (twine 6.1.0) for Metadata-Version 2.4
The publish step failed `twine check` with "Metadata is missing required fields: Name, Version … supported Metadata-Version: …2.3". Current setuptools (via `uv build`) emits Metadata-Version 2.4; gh-action-pypi-publish v1.12.2 bundles twine 5.1.1, which only parses up to 2.3. Verified locally against the actual 0.1.0 wheel + sdist: - twine 5.1.1 -> reproduces the exact error - twine 6.1.0 -> both PASS v1.12.4 pins twine==6.1.0. Pinned to its commit sha 76f52bc884231f62b9a034ebfe128415bbaabdfc (not the annotated tag-object sha); ghcr image for that commit verified present (HTTP 200).
1 parent 4d43e02 commit ffdf0f7

1 file changed

Lines changed: 10 additions & 5 deletions

File tree

.github/workflows/publish.yml

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -122,11 +122,16 @@ jobs:
122122
name: dist
123123
path: dist/
124124
- name: Publish
125-
# Pinned to the COMMIT sha (not the annotated-tag object sha). This is a
126-
# Docker action; GitHub pulls ghcr.io/pypa/gh-action-pypi-publish:<ref>,
127-
# and pypa publishes that image tagged by commit sha — the tag-object sha
128-
# has no image (manifest unknown).
129-
uses: pypa/gh-action-pypi-publish@15c56dba361d8335944d31a2ecd17d700fc7bcbc # v1.12.2
125+
# v1.12.4 bundles twine 6.1.0, which understands Metadata-Version 2.4
126+
# (what current setuptools / `uv build` emit). v1.12.2 shipped twine
127+
# 5.1.1, which rejects 2.4 with "Metadata is missing required fields:
128+
# Name, Version".
129+
#
130+
# Pinned to the COMMIT sha (not the annotated-tag object sha): this is a
131+
# Docker action and GitHub pulls ghcr.io/pypa/gh-action-pypi-publish:<ref>;
132+
# pypa publishes that image keyed by commit sha, so the tag-object sha has
133+
# no image (manifest unknown).
134+
uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4
130135
# No `password:` — OIDC handles auth automatically.
131136

132137
# ----------------------------------------------------------------------

0 commit comments

Comments
 (0)