Bug 1246036 - python3-devel requires python
Summary: python3-devel requires python
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: python
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Matej Stuchlik
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-07-23 11:03 UTC by Miro Hrončok
Modified: 2016-02-01 02:16 UTC (History)
12 users (show)

Fixed In Version: 2.7.10-8.fc23
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-09-18 18:31:27 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Miro Hrončok 2015-07-23 11:03:50 UTC
Description of problem:
python3-devel requires python (2). When BuildRequiring python3-devel, python 2 gets pulled to the buildroot and something may be done/run with it instead of python3. This should not be problematic if the package is bulletproof, but when the maintainer forgets something, it is better to result with error that /usr/bin/python cannot be found, than actually use Python 2 instead of Python 3.

Version-Release number of selected component (if applicable):
3.4.3-5.fc23

How reproducible:
Always

Steps to Reproduce:
1. mock -r fedora-rawhide-x86_64 --init
2. mock -r fedora-rawhide-x86_64 --install python3-devel

Actual results:
...
Installed:
  python.x86_64 2.7.10-4.fc23               python-libs.x86_64 2.7.10-4.fc23    
  python-macros.noarch 2.7.10-4.fc23        python-pip.noarch 7.1.0-1.fc23      
  python-setuptools.noarch 18.0.1-2.fc23    yh-devel.x86_64 3.4.3-5.fc23 

Expected results:
...
Installed:
  python3-devel.x86_64 3.4.3-5.fc23 


Additional info:
It is brought by python-macros. By last commit in python3 dist-git:

http://pkgs.fedoraproject.org/cgit/python3.git/commit/?id=8d338b77849f269e5605dc22a12e93c799a136f9

Comment 1 Thomas Spura 2015-07-23 12:01:07 UTC
I added a "Requires: %{python} = %{version}-%{release}" to python-macros as the default unversioned macros use %{__python}, which would not be defined otherwise.

But I think it doesn't matter if they are not defined in the python3 case as the build will just fail, when you use %py_build with python3-devel installed but not python2-devel. Do you think, that might be a solution and just the Requires above should be removed again?

Comment 2 Miro Hrončok 2015-07-23 12:30:16 UTC
I would remove that, yes. At least we won't get python2 bytecompiled files (in /usr/share etc.) in packages supposed to be run with python 3 only. Reassigning to python (where python-macros are from).

Comment 3 Thomas Spura 2015-07-23 16:32:48 UTC
Building in rawhide:
http://koji.fedoraproject.org/koji/taskinfo?taskID=10451086

I'll wait a bit until I backport this to F23 etc to see if this is the last fix to the new macros... :/

Comment 4 Fedora Update System 2015-09-08 19:49:20 UTC
python-2.7.10-8.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2015-15394

Comment 5 Fedora Update System 2015-09-10 05:52:04 UTC
python-2.7.10-8.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.\nIf you want to test the update, you can install it with \n su -c 'yum --enablerepo=updates-testing update python'. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-15394

Comment 6 Fedora Update System 2015-09-18 18:31:25 UTC
python-2.7.10-8.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.


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