Louis-Philippe V ronneau: Debian Python Team 2022 Sprint Report
This is the report for the Debian Python Team remote sprint
that took place on December 2-3-4 2022.
Many thanks to those who participated, namely:
- tienne Mollier (emollier)
- Taihsiang Ho (tai271828)
- Athos Ribeiro (athos)
- Stuart Prescott (stuart)
- Louis-Philippe V ronneau (pollo)
- Ileana Dumitrescu (ildumi)
- James Valleroy (jvalleroy)
- Emmanuel Arias (eamanu)
- Kurt Kremitzki (kkremitzki)
- Mohammed Bilal (rmb)
- Stefano Rivera (tumbleweed)
- Jeroen Ploemen (jcfp)
pybuild
to
make it possible to automatically run the upstream test suite as autopkgtests.
This feature has now been merged and uploaded to unstable. Although you can
find out more about it in the pybuild-autopkgtest manpage, an email
providing more details should be sent to the debian-python mailing list
relatively soon.
Fixing packages that run tests via python3 setup.py test
Last August, Stefano Rivera poked the team about the deprecation
of the python3 setup.py test
command to run tests in pybuild
. Although this
feature has been deprecated upstream for 6 years now, many packages
in the archive still use it to run the upstream test suite during build.
Around 29 of the 67 packages that are team-maintained by the Debian Python Team
were fixed during the sprint. Ideally, all of them would be before the feature
is removed from pybuild
.
if a package you maintain still runs this command, please consider fixing it!
Fixing packages that use nose
nose
, provided by the python3-nose
package, is an obsolete testing
framework for Python and has been unmaintained since 2015.
During the sprint, people worked on fixing some of the many bugs filled against
packages still running tests via nose
, but there are still around 240
packages affected by this issue in the archive.
Again, if a package you maintain still runs this command, please consider
fixing it!
Removal of the remaining Python2 packages
With the upload of dh-python 5.20221202
, Stefano Rivera officially removed
support for dh_python2
and dh_pypy
, thus closing the "Python2 removal in
sid/bullseye" bug.
It seems some work still needs to be done for complete Python2
removal from Sid, but I expect this will be done in time for the
Bookworm release.
Working on Lintian tags for the Team
During the sprint, I managed to work on some Lintian issues that we had
targeted, namely:
- the addition of a "missing-cpython-extension" tag to flag packages that do not build CPython extensions for all the supported Python versions.
- fixing a false-positive in the "missing-prerequisite-for-pyproject-backend" tag.
distutils
library.
Patching distro-tracker (tracker.debian.org) to show pending team MRs
It's often hard to have a good overview of pending merge requests when working
with team-maintained packages, as by default, Salsa doesn't notify anyone when
a MR is opened.
Although our workflow typically does not involve creating merge requests, some
people still do and they end up sitting there, unnoticed.
During the sprint, Kurt Kremitzki worked on solving this issue by having
distro-tracker
show the pending MRs on our team's tracker page.
Sadly, it seems little progress was made, as the removal of
python3-django-jsonfield
from the archive and breaking changes in
python3-selenium
has broken the test suite.
Migrate packages building with the flit plugin to the generic pyproject one
pybuild
has been supporting building with PEP-517 style pyproject.toml
files
via a generic plugin (pybuild-plugin-pyproject
) for a while now.
As this plugin supersedes the old flit
plugin, we've been thinking of
deprecating it in time for the Bookworm release.
To make this possible, most of the packages in the archive that still used this
plugin were migrated to the generic one and I opened bugs on the last handful
of packages that were not team-maintained.
Other work
Many other things were done during the sprint, such as:
- improving existing packages (for example, adding or fixing autopkgtests)
- triaging and fixing Python 3.11 bugs
- updating packages to the latest upstream release
- sponsoring uploads