Bug 1542154

Summary: muse: muse requires both Python 2 and Python 3
Product: [Fedora] Fedora Reporter: Iryna Shcherbina <ishcherb>
Component: museAssignee: Orcan Ogetbil <oget.fedora>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 28CC: nando, oget.fedora
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: muse-3.0.2-7.fc30 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-04-09 00:02:12 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: 1285816, 1340802    

Description Iryna Shcherbina 2018-02-05 17:36:11 UTC
The muse RPM requires both Python 2 and Python 3:

$ dnf repoquery --disablerepo=* --enablerepo=rawhide --requires muse | grep python
/usr/bin/python2
/usr/bin/python3

Except in very special circumstances, there is no need for one package
to drag in both Python stacks. Usually, this is a packaging error: for
example, a stray "/usr/bin/python2" shebang in a Python 3 package can
introduce a Python 2 dependency. There is a section on shebangs in the Python RPM Porting Guide [0] which covers this issue.

Considering that muse Python scripts were switched to Python 3 in release 3.0pre1 according to changelog [1], can the package be switched to Python 3?


It's ok to do this in Rawhide only, however, it would be greatly
appreciated if you could push it to Fedora 27 as well.


If anything is unclear, or if you need any kind of assistance, you can
ask on IRC (#fedora-python on Freenode), or reply here. We'll be happy
to help investigating or fixing this issue!


[0] http://python-rpm-porting.readthedocs.io/en/latest/application-modules.html#are-shebangs-dragging-you-down-to-python-2
[1] https://github.com/muse-sequencer/muse/blob/muse_3_0_pre1/muse3/ChangeLog

Comment 1 Orcan Ogetbil 2018-02-06 02:39:17 UTC
Hi Iryna, thanks for the report.

> Except in very special circumstances, there is no need for one package
to drag in both Python stacks. 

I think this is one of those exceptional circumstances since not all the scripts are converted to Python3 upstream. e.g.
    https://github.com/muse-sequencer/muse/tree/master/muse3/utils/muse-song-convert.py
is clearly Python2, while the remaining scripts are Python3, e.g.
    https://github.com/muse-sequencer/muse/tree/master/muse3/share/scripts

At this point it is accurate to have both Python2 and Python3 dependencies. However I agree that this is not ideal. Let me see what I can do upstream.

Comment 2 Iryna Shcherbina 2018-02-06 09:00:02 UTC
Hi Orcan, thank you for the update. You are right, some scripts are still Python 2. Lets then leave this bug open for tracking until it is ported upstream.

Comment 3 Fedora End Of Life 2018-02-20 15:22:09 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 28 development cycle.
Changing version to '28'.

Comment 4 Fedora Update System 2019-03-11 11:06:49 UTC
muse-3.0.2-7.fc30 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-4e6a496e77

Comment 5 Fedora Update System 2019-03-11 14:42:02 UTC
muse-3.0.2-7.fc30 has been pushed to the Fedora 30 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-4e6a496e77

Comment 6 Fedora Update System 2019-04-09 00:02:12 UTC
muse-3.0.2-7.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.