[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Python 2 removal in sid/bullseye: Progress and next steps



Hi,

We are aiming to remove Python 2 for the bullseye release, or at least
remove as many Python 2 related packages as possible.  Python 2 is
discontinued upstream, but crucially, more and more providers of Python
modules don't support Python 2 in either the current or future upstream
version.

Some FAQs and guidelines can be found at 
https://wiki.debian.org/Python/2Removal.

With about 3300 py2removal bugs filed and 1500 closed, we are now
almost done with half of the removals.

We are going to raise the severity of the py2removal bugs to "serious"
in several steps.  In the
first phase we are going to raise severity of the py2removal bugs for 
all leaf module packages and low popcon (< 300) application packages.
Bugs marked with the "py2keep" user tag will not have their severity
raised.  If nobody fixes that bug, the packages will be auto-removed
from testing.
We will also then file bug reports against ftp.debian.org to remove
such packages from unstable.  We are going to do this semi-
automatically as additional packages become leaf packages.

We are working with the Lintian maintainers to bump the severity of
Python 2 related tags in Lintian.

If you are absolutely sure you need to keep your Python 2 only
application
in Debian, you should mark the Python 2 removal bug with the "py2keep"
user tag
(please do not replace the py2remove tag), using the 
debian-python@lists.debian.org user.
Please CC the bug report, because it's non-obvious who is changing a
user tag by just reading the bug report, and provide a rationale for
claiming it is "py2keep".
py2keep must not be placed on reverse dependencies of pygtk, because
the Debian Gnome maintainers already announced the removal of pygtk in
bullseye.

All dependency fields in debian/control and debian/tests/control must
also be updated to stop using the unversioned python 
packages (python, python-dbg, python-dev, python-doc) and instead use
the versioned package names (python2,
python2-dbg, python2-dev, python2-doc); this applies to both build-time 
and runtime dependencies.
Unversioned interpreters must also not be used in the shebang lines
(use
#!/usr/bin/python2 instead). When using dh-python, this will be done
automatically.  Check for explicit python and python-dev build
dependencies.  Don't forget to look at autopkgtest tests as well (for
both package and interpreter names).

For questions, feel free to contact people on the 
debian-python@lists.debian.org ML or on IRC (#debian-python on OFTC).

--
Best regards
 Ondřej Nový 
 Matthias Klose

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: