Hi all, We should get started on Python 3.12, 3.13 alpha is already getting released! To be 100% honest, I am not super looking forward to it as it's a ton of work due to our lack of automated tooling. In basics a plan would be to first tackle low hanging fruit to-do's: * https://archlinux.org/todo/pytest-runner-removal/ * https://archlinux.org/todo/imp-module-removal-in-python-312/ * https://archlinux.org/todo/use-pyprojecttoml-for-building-if-supported/ * drop unused python modules in our repo https://archlinux.org/devel/reports/unneeded-orphans/ We've finished python-bootstrap, and can bootstrap the required build packages (python-setuptools, build, etc.). And figuring out the rebuild order. (Big thanks to david, for the help here!) [1] [2] So soon we can start the rebuild which will probably take a while to complete as we have no good automated tooling yet for mass rebuilds. This rebuild will likely block [staging] for a good 2 or more weeks, so when would be a good time to schedule this? I expect two things to break our package builds in 3.12: * The removal of distutils see the snippet below, adding python-setuptools to makedepends should resolve this. For example: GISCAN ZBar-1.0.gir Traceback (most recent call last): File "/usr/bin/g-ir-scanner", line 99, in <module> from giscanner.utils import dll_dirs File "/usr/lib/gobject-introspection/giscanner/utils.py", line 385, in <module> import distutils.cygwinccompiler ModuleNotFoundError: No module named 'distutils' * The removal of the imp module, the todo list above has been open for a while, but not all packages have been fixed. * The usual failing tests, missing sources you know it :) [1] https://gitlab.archlinux.org/archlinux/python-bootstrap/-/merge_requests/3 [2] https://notes.vdwaa.nl/arch/python.html Greetings, Jelle
El domingo, 25 de febrero de 2024 a las 14:23 Jelle van der Waa escribió:
So soon we can start the rebuild which will probably take a while to complete as we have no good automated tooling yet for mass rebuilds. This rebuild will likely block [staging] for a good 2 or more weeks, so when would be a good time to schedule this?
Hi, Please wait at least until Wednesday when Plasma 6 will be officially released and moved from staging to testing. Thanks
On 25-02-2024 14:23, Jelle van der Waa wrote:
Hi all,
We should get started on Python 3.12, 3.13 alpha is already getting released!
To be 100% honest, I am not super looking forward to it as it's a ton of work due to our lack of automated tooling. In basics a plan would be to first tackle low hanging fruit to-do's:
* https://archlinux.org/todo/pytest-runner-removal/ * https://archlinux.org/todo/imp-module-removal-in-python-312/ * https://archlinux.org/todo/use-pyprojecttoml-for-building-if-supported/ * drop unused python modules in our repo https://archlinux.org/devel/reports/unneeded-orphans/
Another todo dropped: https://archlinux.org/todo/remove-hardcoded-python-version/ Doesn't block the rebuild but would help a lot as these builds will fail. Greetings, Jelle
Hi, On 25/02/2024 19:12, Jelle van der Waa wrote:
On 25-02-2024 14:23, Jelle van der Waa wrote:
Hi all,
We should get started on Python 3.12, 3.13 alpha is already getting released!
Tomorrow I intend to finally(!) start the rebuild, please keep [staging] clean so nothing conflicts with the rebuild. A To Do list will drop once we have bootstrapped the build tooling. Greetings, Jelle van der Waa
On 02-04-2024 21:04, Jelle van der Waa wrote:
Hi,
On 25/02/2024 19:12, Jelle van der Waa wrote:
On 25-02-2024 14:23, Jelle van der Waa wrote:
Hi all,
We should get started on Python 3.12, 3.13 alpha is already getting released!
Tomorrow I intend to finally(!) start the rebuild, please keep [staging] clean so nothing conflicts with the rebuild.
A To Do list will drop once we have bootstrapped the build tooling.
The rebuild is underway! Rebuilding python modules is tricky with all the cyclic dependencies, which is causing delays. There are some improvements we should make in our Python packaging guidelines to make rebuilding easier. We should never package backports like python-importlib-metadata, which was provided in 3.8. A bug should be filled and we should fix their requirements/pyproject.toml/setup.cfg to depend on it conditionally, for example lexicon depends on it, while it is not needed as their pyproject.toml has: [1] importlib-metadata = { version = ">=4.6", python = "<3.10" } We should also disallow python-pytest-cov as a checkdepends, when running tests we aren't interested in coverage. We should either patch this out or fix the pytest invocation to ignore `addopts` with for example pytest --config-file /dev/null. The same goes for other pytest plugins such as python-pytest-benchmark. Python-nose should be removed and it's test invocations replaced by python -m unittest or pytest. Fedora notably does not package nose, I believe it also depends on the imp module has to be dropped afaik. We should discuss if we want to keep providing module documentation using python-sphinx for for example python-urllib3. To make rebuilding and breaking cycles easier we dropped this from some packages. We should make a policy for either keeping or removing it. After the rebuild is done I will spend some time on updating our Packaging guidelines and creating a to do to investigate dropping these packages: - python-nose - python-pytest-runner - python-six - python-importlib-metdata - python-exceptiongroup - python-contextlib2 - python-typing_extensions - python-unicodedata2 [1] https://github.com/AnalogJ/lexicon/blob/7e5132f0e5ade3ea2f41c49a7166650d9fc8... Happy packaging, Jelle
On 06-04-2024 12:28, Jelle van der Waa wrote:
On 02-04-2024 21:04, Jelle van der Waa wrote:
Hi,
On 25/02/2024 19:12, Jelle van der Waa wrote:
On 25-02-2024 14:23, Jelle van der Waa wrote:
Hi all,
We should get started on Python 3.12, 3.13 alpha is already getting released!
I am moving Python at the moment, but moving is broken due to a devtools bug. So for now don't use [testing].
On 21-04-2024 17:32, Jelle van der Waa wrote:
On 06-04-2024 12:28, Jelle van der Waa wrote:
On 02-04-2024 21:04, Jelle van der Waa wrote:
Hi,
On 25/02/2024 19:12, Jelle van der Waa wrote:
On 25-02-2024 14:23, Jelle van der Waa wrote:
Hi all,
We should get started on Python 3.12, 3.13 alpha is already getting released!
I am moving Python at the moment, but moving is broken due to a devtools bug. So for now don't use [testing].
And apart python-dbus-fast, everything is now moved.
participants (2)
-
Antonio Rojas
-
Jelle van der Waa