Bug 1738175 - saslwrapper depends on Python 2
Summary: saslwrapper depends on Python 2
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: saslwrapper
Version: 32
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Dan Callaghan
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1739014
Blocks: F31_PY2REMOVAL
TreeView+ depends on / blocked
 
Reported: 2019-08-06 13:22 UTC by Lumír Balhar
Modified: 2020-02-24 14:06 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-02-23 07:16:35 UTC
Type: Bug


Attachments (Terms of Use)

Description Lumír Balhar 2019-08-06 13:22:07 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 saslwrapper'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 saslwrapper.
If you need anything from us, or something is unclear, please mention it here.

Thank you.

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

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

Comment 3 Dan Callaghan 2019-08-14 07:05:59 UTC
Unless anyone else chimes in on this bug, I think it is time to let the saslwrapper package die.

As far as I can find, it only existed inside the qpid 0.16 source distribution. When qpid was split up into various separate git trees for its 1.0+ rewrite, the saslwrapper code seems to have disappeared. I certainly don't have the time to maintain adopt it myself and update it for Python 3.

In the meantime, there is a newer and better-maintained variation on the same theme here (not packaged in Fedora currently): https://github.com/cloudera/python-sasl

and I see that there is also a pure Python implementation of the same thing ready to be added to Fedora in bug 1651849.

Comment 4 Lumír Balhar 2019-08-14 09:24:04 UTC
From the Python point of view, it is enough to just disable python2- subpackage. But of course, it's completely up to you.

Comment 5 Dan Callaghan 2019-08-14 09:44:41 UTC
Ohh yes, you mean because there is the Ruby bindings in there too. Hmm, I forgot about those.

I suppose as long as the Ruby bits still compile I am fine to keep them, even though I don't actually use them and probably can't do any actual maintenance on them.

So I will take out all the Python bindings for Fedora 31+ and just leave the Ruby bits as is, for the time being.

Comment 6 Dan Callaghan 2019-08-14 09:58:53 UTC
Oh... I just realised that python-qpid still actually depends on this. Now I'm confused... How does qpid upstream expect this to work, if they don't even have saslwrapper sources anymore? Or are they hidden somewhere that I couldn't find? But it seems qpid itself is also not Python-3-ready either so...

Comment 7 Lumír Balhar 2019-08-15 06:33:21 UTC
You are right. Let's wait for a while until we get some reply in qpid's bug.

Comment 8 Lumír Balhar 2019-09-02 05:23:09 UTC
python-qpid will be probably orphaned next week because there is no reply in the linked bug.

Comment 9 Lumír Balhar 2019-09-23 05:21:47 UTC
python-qpid is orphaned and will be retired in ~4 weeks so we can remove Python binding then.

Comment 10 Lumír Balhar 2019-10-10 08:14:42 UTC
I think that you can remove Python 2 bits from this package.

Comment 11 Lumír Balhar 2019-10-17 11:17:42 UTC
Ḯ've prepared the change for you: https://src.fedoraproject.org/rpms/saslwrapper/pull-request/1

Comment 12 Dan Callaghan 2019-10-21 08:34:20 UTC
Thanks for the pull request. Sorry for being so slow.

Comment 13 Petr Viktorin 2020-02-05 11:54:28 UTC
The change was reverted, but I can't find any explanation why.

Please remove the python2-saslwrapper package again.

Comment 14 Miro Hrončok 2020-02-05 11:57:11 UTC
The change was reverted in https://src.fedoraproject.org/rpms/saslwrapper/c/ee7aeee5b795405105c50a5186de3cdfe5ab8cd0?branch=master

Irina, what was the reason?

Comment 15 Miro Hrončok 2020-02-05 17:25:36 UTC
It seems the revert was done to fix a FTBFS:

https://koji.fedoraproject.org/koji/taskinfo?taskID=41322039

checking for python... no
checking for python2... no
checking for python3... no
checking for python3.9... no
checking for python3.8... no
checking for python3.7... no
checking for python3.6... no
checking for python3.5... no
checking for python3.4... no
checking for python3.3... no
checking for python3.2... no
checking for python3.1... no
checking for python3.0... no
checking for python2.7... no
checking for python2.6... no
checking for python2.5... no
checking for python2.4... no
checking for python2.3... no
checking for python2.2... no
checking for python2.1... no
checking for python2.0... no
configure: error: no suitable Python interpreter found


While before, there was python3 present in the buildroot:

https://koji.fedoraproject.org/koji/taskinfo?taskID=38454678

checking for python... no
checking for python2... no
checking for python3... /usr/bin/python3
checking for python version... 3.8

I can try switching the subpackage to Python 3.

Comment 16 Miro Hrončok 2020-02-05 17:36:00 UTC
Nope, won't do.

saslwrapper.cpp:4379:25: error: 'PyInt_AsUnsignedLongMask' was not declared in this scope; did you mean 'PyLong_AsUnsignedLongMask'?


But we can revert the latest commit and add BuildRequires: python3

Comment 17 Dan Callaghan 2020-02-05 20:14:32 UTC
The FTBFS bug for this is: https://bugzilla.redhat.com/show_bug.cgi?id=1794465

Comment 18 Ben Cotton 2020-02-11 15:39:47 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 32 development cycle.
Changing version to 32.

Comment 19 Dan Callaghan 2020-02-23 07:16:35 UTC
Meanwhile Irina has actually retired saslwrapper entirely, which is fine with me. This bug is therefore WONTFIX for Fedora 33+.

Comment 20 Irina Boverman 2020-02-24 14:06:14 UTC
Yes, saslwrapper was retired.


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