Bug 1739019 - whipper depends on Python 2
Summary: whipper depends on Python 2
Keywords:
Status: CLOSED DUPLICATE of bug 1777650
Alias: None
Product: Fedora
Classification: Fedora
Component: whipper
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Matthew Ruszczyk
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1738046 1761787
Blocks: PY2FTBI F32FailsToInstall F31_PY2REMOVAL
TreeView+ depends on / blocked
 
Reported: 2019-08-08 12:25 UTC by Lumír Balhar
Modified: 2019-11-28 01:24 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-11-28 01:24:24 UTC


Attachments (Terms of Use)

Description Lumír Balhar 2019-08-08 12:25:14 UTC
Python 2.7 will reach end-of-life in January 2020, over 9 years after it was released. This falls within the Fedora 31 lifetime.
Packages that depend on Python 2 are being switched to Python 3 or removed from Fedora: https://fedoraproject.org/wiki/Changes/F31_Mass_Python_2_Package_Removal#Information_on_Remaining_Packages
Python 2 will be retired in Fedora 32: https://fedoraproject.org/wiki/Changes/RetirePython2

To help planning, we'd like to know the plans for whipper's future. Specifically:


- What is the reason for the Python2 dependency? (Is it software written in Python, or does it just provide Python bindings, or use Python in the build system or test runner?) 

- What are the upstream/community plans/timelines regarding Python 3?

- What is the guidance for porting to Python 3? (Assuming that there is someone who generally knows how to port to Python 3, but doesn't know anything about the particular package, what are the next steps to take?)


This bug is filed semi-automatically, and might not have all the context specific to whipper.
If you need anything from us, or something is unclear, please mention it here.

Thank you.

Comment 1 Matthew Ruszczyk 2019-08-08 13:41:41 UTC
Sure thing.

Currently whipper is written in python and at this time is incompatible with Python3.

There has been a standing bug for two years now within whipper. No timeline has been posted but in my conversations with upstream they understand the impending deadline though I do not know how that will line up with the Fedora 31 branch date.
https://github.com/whipper-team/whipper/issues/78

Comment 2 Ben Cotton 2019-08-13 16:55:57 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle.
Changing version to '31'.

Comment 3 Ben Cotton 2019-08-13 17:20:16 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle.
Changing version to 31.

Comment 4 Lumír Balhar 2019-08-16 08:36:01 UTC
The current plan is to remove packages with dependency on Python 2 from Fedora 32 in the middle of November 2019. If you want to keep your package in Fedora after that date and you cannot port it to Python 3 yet, you need to request a FESCo exception for the package and all its Python 2 dependencies (even transitive) [1]. If you don't want to maintain it anymore, and nothing in Fedora uses it, you can retire it or just remove the Python 2 part from it (subpackage, module, bindings, etc.).

If you're considering filing the exception request, let us know. We can help (for example, we can help find all the dependencies).

[1] https://fedoraproject.org/wiki/Changes/RetirePython2#FESCo_exceptions

Comment 5 Miro Hrončok 2019-09-18 11:15:38 UTC
Matthew, do you plan to request an exception for whipper if upstream doesn't provide a Python 3 compatible code by November? It seems to be the last package that will need python2-requests and several other related packages.

Comment 6 Miro Hrončok 2019-10-10 11:16:47 UTC
Matthew?

Comment 7 Matthew Ruszczyk 2019-10-10 15:21:33 UTC
I do not plan to request an exception, to allow all packages it depends upon to also be retired. I will likely resubmit it once the migration to Python 3 is complete.

Comment 8 Miro Hrončok 2019-10-10 15:41:36 UTC
Thanks. Let's retire whipper once it is the last dependency of python2-requests? Should happen in ~3 weeks.

Comment 9 Miro Hrončok 2019-10-15 11:26:53 UTC
whipper-0.7.3-3.fc31.x86_64 fails to install in Fedora rawhide:

  package whipper-0.7.3-3.fc31.x86_64 requires python2-requests, but none of the providers can be installed
  package python2-requests-2.22.0-6.fc32.noarch requires (python2.7dist(urllib3) < 1.25 or python2.7dist(urllib3) >= 1.25.0), but none of the providers can be installed
  package python2-requests-2.22.0-6.fc32.noarch requires (python2.7dist(urllib3) < 1.25.1 or python2.7dist(urllib3) >= 1.25.1.0), but none of the providers can be installed
  package python2-requests-2.22.0-6.fc32.noarch requires python2-urllib3 >= 1.21.1, but none of the providers can be installed
  package python2-requests-2.22.0-6.fc32.noarch requires python2.7dist(urllib3) >= 1.21.1, but none of the providers can be installed
  package python2-requests-2.22.0-6.fc32.noarch requires python2.7dist(urllib3) < 1.26, but none of the providers can be installed
  nothing provides python2-ipaddress needed by python2-urllib3-1.25.3-6.fc32.noarch


This is caused by python-ipaddress being retired after being orphaned for 6+ weeks.
Please drop the dependency, or remove the package.

Thanks

Comment 10 Petr Viktorin 2019-11-01 13:28:17 UTC
In preparation for the Python 2 EOL, we are removing all non-installable Python 2 packages:
https://fedoraproject.org/wiki/Changes/F31_Mass_Python_2_Package_Removal#Removing_non-installable_packages_from_the_distro

This bug is still in the NEW state and the package does not install. Please indicate you are working on a fix by setting the state to ASSIGNED. When this bug is four weeks in the NEW state, the package may be orphaned.

Note that you don't have to actually fix this right now, setting the bug to ASSIGNED will just mark this as being worked on, so I'll know it is being taken care of. If this happens too quickly, feel free to reach to me any time for help (with specific problems).

Thank You!

Comment 11 Matthew Ruszczyk 2019-11-01 14:29:40 UTC
Done. The upstream team hopes to have their final python 3 port done soon. If it's not done before the Py2 removal date I'll resubmit it once the work is completed.

Comment 12 Matthew Ruszczyk 2019-11-06 15:15:10 UTC
Upstream has largely completed work on the Python 3 port. Talk on IRC is they hope to merge these changes and tag a release very soon, so hopefully I can get that built and on Rawhide before removal.

https://github.com/whipper-team/whipper/pull/411

Comment 13 Miro Hrončok 2019-11-28 01:24:24 UTC

*** This bug has been marked as a duplicate of bug 1777650 ***


Note You need to log in before you can comment on or make changes to this bug.