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
signature.asc
Description: This is a digitally signed message part