Page MenuHomePhabricator

Add Python 3.10, 3.11 and 3.12 to Wikimedia CI
Open, Needs TriagePublic

Description

Currently we have Python 3.7, 3.8 and 3.9 for CI tests but Python 3.10 is the topmost used Python platform for Pywikibot:

Download statistic of the last 6 months

Python%rank
3.128.4
3.1119.1+
3.1033.6+++
3.921.7++
3.89.1
3.72.1
other0.5
unknown5.4

It is important to have Python 3.10 as well as 3.11 and 3.12 CI tests available before the code is merged even tests are made at github after it.

Event Timeline

we need to cover 3.11 as well as it's the python version shipped with Debian bookworm: https://packages.debian.org/bookworm/python3

we need to cover 3.11 as well as it's the python version shipped with Debian bookworm: https://packages.debian.org/bookworm/python3

Would be great to have 3.11 too. On the other side we can drop 3.6 in few months if that helps.

The Jenkins CI images are using Debian Buster and gets extra Python versions via Debian packages built and uploaded by SRE at:

http://apt.wikimedia.org/wikimedia  buster-wikimedia thirdparty/pyall and

Python 3.9 got previously added by T289222, thus I guess the same process has to be followed. Python 3.10 is apparently still in unstable so I guess building from sources is still possible.

We would also need the Debian package for distutils (see T289222#8348337).

And I guess this task can be made to build both 3.10 and 3.11 (else another task can be filed for 3.11).

We would also need the Debian package for distutils

Please note that distutils is deprecated since Python 3.10 and Pywikibot no longer used this package since release 6.1.

See T274696 and https://docs.python.org/3.10/library/distutils.html?highlight=distutils#module-distutils

I am guessing @jbond might be able to build Python 3.10 & 3.11.

For Python 3.9 they got uploaded to apt.wikimedia.org under buster-wikimedia component/python39 and the related patches are https://gerrit.wikimedia.org/r/q/bug:T289222+owner:jbond

Xqt renamed this task from Add Python 3.10 to Wikimedia CI to Add Python 3.10 and 3.11 to Wikimedia CI.Dec 4 2023, 4:26 PM
Xqt updated the task description. (Show Details)

Change 983247 had a related patch set uploaded (by Hashar; author: Hashar):

[integration/config@master] dockerfiles: tox with Bookworm using pyenv

https://gerrit.wikimedia.org/r/983247

This comment was removed by Xqt.

@Xqt it is not yet available cause I kind of mixed those updates with the upgrade of tox v3v4 however tox version 4 has so many back compatibily breakage that I might consider sticking to the legacy v3 instead :-/

Change 983247 merged by jenkins-bot:

[integration/config@master] dockerfiles: tox with Bookworm using pyenv

https://gerrit.wikimedia.org/r/983247

Xqt renamed this task from Add Python 3.10 and 3.11 to Wikimedia CI to Add Python 3.10, 3.11 and 3.12 to Wikimedia CI.Feb 5 2024, 3:31 PM
Xqt updated the task description. (Show Details)

See also: T368837, it would be nice to have the tests before merge.