Skip to content

ci(python): verify wheel abi3 compatibility with --no-build#2388

Merged
CTTY merged 3 commits intoapache:mainfrom
kevinjqliu:kevinjqliu/python-no-build
Apr 29, 2026
Merged

ci(python): verify wheel abi3 compatibility with --no-build#2388
CTTY merged 3 commits intoapache:mainfrom
kevinjqliu:kevinjqliu/python-no-build

Conversation

@kevinjqliu
Copy link
Copy Markdown
Contributor

@kevinjqliu kevinjqliu commented Apr 29, 2026

Which issue does this PR close?

  • Closes #.

What changes are included in this PR?

Verify that pyiceberg-core does not need to be built when installing

Adds a uv pip install --no-build check after maturin builds to verify the produced wheel is abi3-compatible with Python 3.12.

This prevents a repeat of apache/iceberg-python#3190 where maturin picked Python 3.8 inside a manylinux container, producing a cp38-cp38 wheel instead of cp310-abi3.
With --no-build, the install fails if the wheel isn't compatible — no fallback to source builds.

Changes:

  • bindings_python_ci.yml: use --no-build when installing the built wheel in CI
  • release_python.yml / release_python_nightly.yml: add verification step after each maturin build

Are these changes tested?

Yes

@kevinjqliu kevinjqliu marked this pull request as draft April 29, 2026 18:44
@kevinjqliu kevinjqliu marked this pull request as ready for review April 29, 2026 19:04
@kevinjqliu
Copy link
Copy Markdown
Contributor Author

verified in fork!

Copy link
Copy Markdown
Collaborator

@CTTY CTTY left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks Kevin!

@CTTY CTTY merged commit 976b689 into apache:main Apr 29, 2026
21 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.

2 participants