On 23.3.2018 12:23, Petr Viktorin wrote:
tl;dr: Unless someone steps up to maintain Python 2 after 2020, we
to start dropping python2 packages now.
Python 2.7 will reach end of upstream support on 1st of January, 2020,
after almost 10 years (!) of volunteer maintenance.
Fedora still has more than 3000 packages depending on python2 – many
more than we can support without upstream help.
We (rightly) don't have the authority to say "please drop your unneeded
python2 subpackages, or let us drop them for you" .
The next best thing we *can* say is: "if Fedora is to keep python2
alive, we won't be the ones doing it – at least not at the current
Here are the details.
The current maintainers of python2 would like to "orphan" the python2
package in 2020 (~ Fedora 30):
- Charalampos Stratakis (cstratak)
- Tomáš Orsava (torsava)
- Miro Hrnočok (churchyard)
- Petr Viktorin (pviktori)
- Iryna Schcherbina (ishcherb)
- Michal Cyprian (mcyprian)
- Bohuslav Kabrda (bkabrda)
- David Malcolm (dmalcolm)
- Thomas Spura (tomspur)
As with any orphaning, that leaves two options:
- someone else agrees now to take over in 2020 (keeping in mind this is
a security-critical package and will be abandoned upstream), or
- dependent packages drop support for Python 2.
Unlike most other orphanings, we have some thousands of dependent
packages, so a lot of time and care is required.
In case no one steps up, we'd like to start dropping Python 2 support
from dependent packages *now*, starting with ported libraries on whose
python2 version nothing in Fedora depends. (We keep a list of those at .)
Of course, we're ready to make various compromises with interested
packagers, as long as there's an understanding that we won't just
support python2 forever.
If you are a maintainer of anything at  we ask you kindly to consider
removing the python2 subpackages.
You can either do it now in Rawhide, or add a conditional for Fedora >
29. (On the current schedule, Fedora 30 will be the first release still
supported after 2020-01-01.)
If no one steps up to maintain python2 after 2020, we're prepared to
package a "legacy" python27 package, similar to what we do for e.g.
python33 , to:
- help developers that still need to test against this version
- support exceptionally important non–security critical applications, if
their upstreams don't manage to port to Python 3 in time
This is just a reminder that nobody stepped up to maintain Python 2
after 2020. We still need to start dropping python2 packages.
What shall we do from here? File a Fedora System Wide Change Proposal
for Fedora 30 that nothing explicitly white-listed to require Python 2
will be removed from Fedora? Can we even do that?
For context - there are currently 708 leaf packages (above).
Except several tools and applications, those are all modules that
nothing in Fedora depends on. If we remove some, others only required by
them will become leaf-packages as well.
We also have 1220 py2 only packages out of which plenty are probably
unneeded modules as well, although we don't have the numbers.
As stated in the above e-mail in March, we are willing to support
python2 for several (small number) of tools or apps. But we will not
support it for 3 thousands of unused, unknown modules.
Python 2 will EOL in less than 1.5 year.