Bug 1741793

Summary: beaker depends on Python 2
Product: [Fedora] Fedora Reporter: Lumír Balhar <lbalhar>
Component: beakerAssignee: greg.hellings
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: djc, greg.hellings, mhroncok
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: beaker-26.5-1.git.49.g87e14daec.fc31 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-10-04 20:05:02 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1698500, 1754955    

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

Thank you.

Comment 1 Lumír Balhar 2019-08-23 15:31:09 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 2 greg.hellings 2019-08-29 16:40:22 UTC
(In reply to Lumír Balhar from comment #0)
> 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 beaker'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?) 

Beaker is a natively written Python software collection, comprising both client and server components.

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

Upstream's plan is to move to supporting Python 3 when they no longer need to support RHEL6 on the server side.

> 
> - 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?)

The project team experienced significant attrition right before Python 3 became imperative. That update won't be prioritized until other more pressing tasks are addressed.

However, it is on their roadmap. Please leave this package in the repositories until then.

Comment 3 Lumír Balhar 2019-08-30 05:05:31 UTC
Thank you for the info.

> Upstream's plan is to move to supporting Python 3 when they no longer need
> to support RHEL6 on the server side.

Adding support for Python 3 does not mean that you have to drop support for Python 2. Your codebase can support Python 3, 2.7 and 2.6 at the same time and it's not that hard. I am trying to say that the porting effort should start immediately and support for Python 2.6/RHEL 6 is not a blocker.

If you need any help with porting, let me know.

> However, it is on their roadmap. Please leave this package in the
> repositories until then.

If you want to keep it in fedora, it'll need a Fesco exception (for example https://pagure.io/fesco/issue/2217) but it might be problematic in this case because beaker has a huge amount of transitive dependencies (see https://fedora.portingdb.xyz/pkg/beaker/)

We can, of course, also help you to deal with a fesco exception.

Comment 4 Lumír Balhar 2019-09-06 08:09:47 UTC
Anything new here?

Comment 5 greg.hellings 2019-09-06 17:57:43 UTC
Upstream reports that they will support Python 3 with the next major version release (27).

Comment 6 Miro Hrončok 2019-09-14 09:26:40 UTC
Is there any git snapshot to update to?

Comment 7 greg.hellings 2019-09-15 18:03:07 UTC
They don't publish git snapshots, but the current develop branch - which will turn into 27 when it's released - has a patch dating back to April of this year that claims to add Python 3 support. So, if we need to, I can try to push out a version of the RPM for that.

Comment 8 Miro Hrončok 2019-09-15 21:24:32 UTC
That would be awesome, beaker pulls a lot of other Python 2 dependencies and doesn't install.

Comment 9 Miro Hrončok 2019-09-18 13:32:08 UTC
Since beaker already doesn't install due to missing Python 2 depndencies, I'll assume we can safely remove more Python 2 dependencies of beaker, correct?

Comment 10 Lumír Balhar 2019-09-26 06:46:03 UTC
Could you please respond? It would be very good to try to package Python 3 version of this package even from the development branch.

Comment 11 Fedora Update System 2019-09-26 17:14:40 UTC
FEDORA-2019-992acae729 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-992acae729

Comment 12 Fedora Update System 2019-09-27 02:29:11 UTC
beaker-26.5-1.git.49.g87e14daec.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-992acae729

Comment 13 Fedora Update System 2019-10-04 20:05:02 UTC
beaker-26.5-1.git.49.g87e14daec.fc31 has been pushed to the Fedora 31 stable repository. If problems still persist, please make note of it in this bug report.

Comment 14 Red Hat Bugzilla 2023-09-14 05:41:42 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 1000 days