* [gentoo-dev] [Python] The big plans for May: Python 3.13 by default, Python 3.10 + PyPy 3.10 gone, Python 3.14 incoming
@ 2025-03-18 11:38 Michał Górny
0 siblings, 0 replies; only message in thread
From: Michał Górny @ 2025-03-18 11:38 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 3019 bytes --]
Hello, everyone.
It seems that everything looks good enough to keep our yearly switchover
around May. Which means that around 2025-05-01, we are going to:
1. Change the default Python target from CPython 3.12 to 3.13,
2. Remove the support for Python 3.10 and PyPy 3.10 (pypy3 target).
Mid-May we also expect Python 3.14.0b1, and therefore Python 3.14 target
being introduced.
== Python 3.13 switch ==
Once again, please test your packages against Python 3.13 and add it to
the COMPAT. Overall, looks like the porting is at roughly 76% right
now, and from my little sprint yesterday, it looks like in many cases
the packages simply work already with 3.13 and just need to be tested
and marked.
As usual, the lists and graphs can be found on qa-reports:
https://qa-reports.gentoo.org/output/gpyutils/312-to-313.txt
https://qa-reports.gentoo.org/output/gpyutils/312-to-313.svg
and for pending stabilizations:
https://qa-reports.gentoo.org/output/gpyutils/312-to-313-stablereq.txt
https://qa-reports.gentoo.org/output/gpyutils/312-to-313-stablereq.svg
There's also the more general impl matrix at:
https://qa-reports.gentoo.org/output/python-pkg-impls.txt
While porting, please also remember to switch packages using distutils-
r1 to use PEP517 builds, as the pre-PEP517 world is falling apart.
I'm going to submit the news item for review shortly.
== Python 3.10 and PyPy 3.10 removal ==
PyPy3.11 has been released recently, and the porting is mostly done.
There are still a handful of packages that work with PyPy3.10 only:
https://qa-reports.gentoo.org/output/gpyutils/pypy310-to-pypy311.txt
However, they seem low priority — probably most of them have gotten
marked for pypy3 by accident, and may never have been actually tested.
Feel free to test/port them, but I think there will be no harm if they
lose PyPy3 support entirely for the time being.
Given that the main reason for keeping CPython 3.10 target was to be
able to compare results between CPython and PyPy, the release of
PyPy3.11 allows us to remove the target. On top of that, some major
projects (Sphinx and IPython) have removed upstream support for 3.10
already, and well, with all their reverse dependencies things are
already falling apart.
So, we're going to remove 3.10 targets while switching the default to
3.13. As usual, dev-lang/python:3.10 will remain available for
local/venv use, for as long as we can (i.e. until upstream EOL, then
until it breaks hard). We may also keep dev-lang/pypy:3.10 for a while,
unless upstream discontinues it before the switchover.
== Python 3.14 beta ==
PEP 745 [1] sets the beta 1 release date for 2025-05-06. As customary,
at this point we will add new target support to the eclass, and start
porting the initial packages. We're not syncing this with the other
switches, since new COMPATs will appear gradually anyway.
[1] https://peps.python.org/pep-0745/
--
Best regards,
Michał Górny
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 512 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2025-03-18 11:39 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-18 11:38 [gentoo-dev] [Python] The big plans for May: Python 3.13 by default, Python 3.10 + PyPy 3.10 gone, Python 3.14 incoming Michał Górny
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox