-
Notifications
You must be signed in to change notification settings - Fork 904
Description
This release cycle for Python 3.14 I've seen a lot of user requests for PyO3 to support 3.14 already, and I expect there will be similar demand for 3.15 as soon as 3.14 is stable. Maybe some folks testing 3.15 on CPython main might care as soon as 3.14 is in beta.
At the moment our version check basically refuses to build for 3.14 except in abi3 mode, which is safe but doesn't work for all projects (or free-threaded Python). This is 100% safe but gets in the way of development efforts.
For some reasonable definition of "in-development" Python (TBC how we decide / detect this), I propose that we relax this a bit and just emit warnings (probably at both build time and runtime). Maybe we require opt-in with an environment variable, similar to how we have PYO3_USE_ABI3_FORWARD_COMPATIBILITY for future stable Python versions.
I think also for supporting future versions of CPython, we should allow PRs to support the Python main branch (currently 3.14, soon to be 3.15). We should also run development versions on CI, but they should not block merge until they are stable.
In this direction, I think #4811 should probably also be merged asap as 3.14 beta is very close and we should start testing 3.14 beta in CI.
Would be interested to hear everyone's thoughts on the matter!