Skip to content

build: Publish abi3t wheels for Python 3.15+ - #1799

Open
edgarrmondragon wants to merge 1 commit into
apache:mainfrom
edgarrmondragon:abi3t-wheels
Open

edgarrmondragon wants to merge 1 commit into
apache:mainfrom
edgarrmondragon:abi3t-wheels

Conversation

@edgarrmondragon

@edgarrmondragon edgarrmondragon commented Oct 18, 2026 •

Copy link
Copy Markdown

Which issue does this PR close?

Addresses the "export abi3t" support part of #1603.

Rationale for this change

The project is currently missing free-threaded wheels for Python 3.15. It'd be straightforward to start shipping cp315-cp315t, but the new PEP 803 cp315-abi3.abi3t tag set tells both GIL and free-threaded interpreters they can pick that wheel, so a single abi3t covers cp315 and cp315t, as well as future cp316, cp316t, etc.

What changes are included in this PR?

  • Enables the abi3t feature for pyo3 in crates/core/Cargo.toml.
  • Adds 3.15 to the test matrix. It runs the abi3t wheel on 3.15 GIL and 3.15t, and the abi3 wheel on 3.15 GIL.
  • Builds abi3t wheels using a Python 3.15 interpreter and the earliest maturin that supports PEP 803.

To verify the changes here: the new wheel (at least the macOS one which I tested locally) installs with pip on 3.15, 3.15t, 3.16 and 3.16t.

Are there any user-facing changes?

Yes: a new abi3t wheel is published for Python 3.15+; existing abi3 and cp314t wheels are unchanged.

@edgarrmondragon
edgarrmondragon force-pushed the abi3t-wheels branch 3 times, most recently from f66af72 to c689ad2 Compare October 18, 2026 18:50
Signed-off-by: Edgar Ramírez Mondragón <edgarrm358@gmail.com>
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