Bug 1250940

Summary: libxml2-python3 requires python2
Product: [Fedora] Fedora Reporter: Miro Hrončok <mhroncok>
Component: libxml2Assignee: Miro Hrončok <mhroncok>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: athmanem, c.david86, mstuchli, rkuska, veillard
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 2.9.2-7.fc23 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-09-01 03:36:09 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: 1014209    

Description Miro Hrončok 2015-08-06 10:56:52 UTC
libxml2-python3 requires both python2 and python3

$ repoquery --requires libxml2-python3 --releasever rawhide
/usr/bin/python
...snip...
python(abi) = 3.4

Version-Release number of selected component (if applicable):
libxml2-python3-2.9.2-5.fc23

Apparently, there is a file with #!/usr/bin/python shebang, should be changed to #!/usr/bin/python3.

Comment 1 Miro Hrončok 2015-08-06 11:06:08 UTC
The files in %doc bring this.

/usr/share/doc/libxml2-python3/push.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/relaxng.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/apibuild.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/tstLastError.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/xpathleak.py:#!/usr/bin/python
/usr/share/doc/libxml2-python3/error.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/reader3.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/inbuf.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/xpath.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/readererr.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/tstxpath.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/outbuf.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/serialize.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/thread2.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/validate.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/build.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/index.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/walker.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/reader4.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/input_callback.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/tstmem.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/pushSAX.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/ctxterror.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/validRNG.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/resolver.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/xpathret.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/reader5.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/tst.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/xpathext.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/compareNodes.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/regexp.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/tstURI.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/validDTD.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/nsdel.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/reader8.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/reader6.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/sync.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/attribs.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/pushSAXhtml.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/schema.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/dtdvalid.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/readernext.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/xpathns.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/cutnpaste.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/reader7.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/reader2.py:#!/usr/bin/python -u
/usr/share/doc/libxml2-python3/validSchemas.py:#!/usr/bin/python -u

Comment 2 Miro Hrončok 2015-08-06 14:02:59 UTC
Proposed fix:

 * Do not package tests in %doc
 * Change shebang lines in doc/*.py

diff --git a/libxml2.spec b/libxml2.spec
index c6f8fa1..cd750de 100644
--- a/libxml2.spec
+++ b/libxml2.spec
@@ -99,6 +99,10 @@ at parse time or later once the document has been modified.
 %patch1 -p1 -b .do-not-check-crc
 %patch2 -p1 -b .catalog-revert
 
+mkdir py3doc
+cp doc/*.py py3doc
+sed -i 's|#!/usr/bin/python |#!%{__python3} |' py3doc/*.py
+
 %build
 %configure
 make %{_smp_mflags}
@@ -184,7 +188,6 @@ rm -fr %{buildroot}
 %{_libdir}/python2*/site-packages/libxml2mod*
 %doc python/TODO
 %doc python/libxml2class.txt
-%doc python/tests/*.py
 %doc doc/*.py
 %doc doc/python.html
 
@@ -199,8 +202,7 @@ rm -fr %{buildroot}
 %{_libdir}/python3*/site-packages/libxml2mod*
 %doc python/TODO
 %doc python/libxml2class.txt
-%doc python/tests/*.py
-%doc doc/*.py
+%doc py3doc/*.py
 %doc doc/python.html
 %endif # with_python3

Comment 3 Miro Hrončok 2015-08-07 10:07:28 UTC
Shall I commit, push and build this?

Comment 4 Robert Kuska 2015-08-18 09:58:19 UTC
This creates a dependency on python2 and as such is a blocker for Python3 as default change in Fedora23, can you please fix this Daniel by using proposed fix from Miro?

Comment 5 Robert Kuska 2015-08-20 09:38:36 UTC
With setroubleshoot now running on python3 this bug seems to be only blocker for Workstation having python3 only.

Please resolve this as soon as possible.

Comment 6 Miro Hrončok 2015-08-27 10:31:47 UTC
Pushing this.

Comment 7 Fedora Update System 2015-08-27 11:44:30 UTC
libxml2-2.9.2-7.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2015-14402

Comment 8 Fedora Update System 2015-08-31 18:52:55 UTC
libxml2-2.9.2-7.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 libxml2'. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-14402

Comment 9 Fedora Update System 2015-09-01 03:36:08 UTC
libxml2-2.9.2-7.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.