Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1739531 - python-ipaddress depends on Python 2
Summary: python-ipaddress depends on Python 2
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-ipaddress
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Orphan Owner
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F31_PY2REMOVAL 1747669 1747671 1747672
TreeView+ depends on / blocked
 
Reported: 2019-08-09 13:43 UTC by Lumír Balhar
Modified: 2019-10-14 17:29 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-10-14 17:29:25 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Lumír Balhar 2019-08-09 13:43:31 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 python-ipaddress'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 python-ipaddress.
If you need anything from us, or something is unclear, please mention it here.

Thank you.

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

Comment 2 Lumír Balhar 2019-08-19 10:50:40 UTC
Please answer the above questions. If you don't, the package can be orphaned: https://fedoraproject.org/wiki/Changes/F31_Mass_Python_2_Package_Removal#Information_on_Remaining_Packages

If you need any information or help, or if you need some more time, please let us know.

Comment 3 Lumír Balhar 2019-08-26 13:36:55 UTC
Please answer the above questions. If you don't, the package can be orphaned: https://fedoraproject.org/wiki/Changes/F31_Mass_Python_2_Package_Removal#Information_on_Remaining_Packages

If you need any information or help, or if you need some more time, please let us know.

Comment 4 Paul Wouters 2019-08-29 19:00:54 UTC
Package has been retired:

python 3.3+ has a native implementation of this library

Comment 5 Petr Viktorin 2019-08-30 07:19:13 UTC
Did you coordinate with maintainers of packages that depend on ipaddress?

Comment 6 Miro Hrončok 2019-08-31 15:15:00 UTC
Dependent packages blew up.

Comment 7 Christian Heimes 2019-09-02 07:49:02 UTC
python2-cryptography package blows up. Please reinstate python2-ipaddress until all packages are fixed that require python2-cryptography.

Comment 8 Miro Hrončok 2019-09-02 07:59:40 UTC
https://pagure.io/releng/issue/8721

Comment 9 Paul Wouters 2019-09-03 15:56:57 UTC
I don't think that would be the correct approach ?

python2 will not be part of fedora 32, and this build was only done in rawhide. So regardless, python-cryptography using python2 will blow up regardless. It just needs to be fixed?

It seems the only packages affected are (based on repoquery on f30)

python-cryptography
python-policycoreutils
python-service-identity
python-urllib3

I will have a look at those packages and see if we can fix those if still needed instead of crippling python-ipaddress again

Comment 10 Miro Hrončok 2019-09-03 16:15:53 UTC
> python2 will not be part of fedora 32

That is not entirely correct. The interpreter stays and packages may request exceptions. Chances are, somebody will request an exception that will include ipaddress. We don't break things on purpose (yet anyway) by removing packages that are depended upon.


> I will have a look at those packages and see if we can fix those if still needed instead of crippling python-ipaddress again

fix how?

Comment 11 Christian Heimes 2019-09-03 16:45:03 UTC
I cannot drop python2-cryptography as long as other packages still depend on it. The dependencies must be addresses leaf first. Bazaar (bzr) is currently blocking Python 2 removal. Either bzr must be dropped or we have to keep Python 2 stuff in F32.

# dnf repoquery --whatrequires python2-cryptography
python2-paramiko-0:2.6.0-3.fc32.noarch
python2-pyOpenSSL-0:19.0.0-3.fc32.noarch
python2-requests-kerberos-0:0.12.0-7.fc32.noarch
python2-service-identity-0:18.1.0-4.fc32.noarch

# dnf repoquery --whatrequires python2-pyOpenSSL
certmaster-0:0.28-19.fc31.noarch
func-0:0.30-16.fc31.noarch
python2-dslib-0:3.1-13.fc31.noarch
python2-impacket-0:0.9.19-1.fc31.1.noarch
python2-paste-0:3.0.8-3.fc32.noarch
python2-service-identity-0:18.1.0-4.fc32.noarch

# dnf repoquery --whatrequires python2-paramiko
bzr-0:2.7.0-23.fc30.x86_64

# dnf repoquery --recursive --whatrequires python2-cryptography
bzr-0:2.7.0-23.fc30.x86_64
bzr-doc-0:2.7.0-23.fc30.noarch
certmaster-0:0.28-19.fc31.noarch
etckeeper-bzr-0:1.18.8-4.fc32.noarch
func-0:0.30-16.fc31.noarch
git-remote-bzr-0:0.2-12.fc31.noarch
python2-dslib-0:3.1-13.fc31.noarch
python2-impacket-0:0.9.19-1.fc31.1.noarch
python2-paramiko-0:2.6.0-3.fc32.noarch
python2-paste-0:3.0.8-3.fc32.noarch
python2-paste-deploy-0:2.0.1-3.fc32.noarch
python2-pdc-client-0:1.8.0-14.fc32.noarch
python2-plaster-pastedeploy-0:0.7-3.fc32.noarch
python2-pyOpenSSL-0:19.0.0-3.fc32.noarch
python2-requests-kerberos-0:0.12.0-7.fc32.noarch
python2-service-identity-0:18.1.0-4.fc32.noarch
python2-wstool-0:0.1.17-13.fc32.noarch
python3-rosinstall-0:0.7.8-7.fc32.noarch
python3-wstool-0:0.1.17-13.fc32.noarch
trac-bazaar-plugin-0:0.4.2-16.fc31.noarch

> I will have a look at those packages and see if we can fix those if still needed instead of crippling python-ipaddress again

I don't understand this comment. Why are these packages crippling python-ipaddresses? python-ipaddress SRPM only provides python2-ipaddress noarch RPM. In Python 3 the ipaddress module is part of the standard library. Once Python 2 is gone the python-ipaddress package can be retired completely.

Comment 12 Miro Hrončok 2019-10-14 17:29:25 UTC
python-ipaddress was just retired from rawhide after being orphaned for 6+ weeks.


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