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/7e5132f0e5ade3ea2f41c49a7166650d9fc8f5ea/pyproject.toml#L47

Happy packaging,

Jelle

Reply via email to