Description of problem: When I try to do 'import stuf' inside Python 2 or Python 3 interactive interpreter, I get the following traceback: Python 2.7.11 (default, Mar 31 2016, 20:46:51) [GCC 5.3.1 20151207 (Red Hat 5.3.1-2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import stuf Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python2.7/site-packages/stuf/__init__.py", line 4, in <module> from stuf.iterable import ( File "/usr/lib/python2.7/site-packages/stuf/iterable.py", line 7, in <module> from .six import items, map, next ImportError: cannot import name items Version-Release number of selected component (if applicable): Package python2-stuf-0.9.16-5.fc23.noarch Package python3-stuf-0.9.16-5.fc23.noarch Tested on my Fedora 23, and in mock on Fedora 23 and rawhide. How reproducible: Every time Steps to Reproduce: 1. install python2-stuf or python3-stuf 2. python2 or python3 3. import stuf Actual results: Traceback Expected results: Module is imported Additional info: -
This puzzles me too. I am not sure which "six" package python2-stuf uses. In addition to "items", it also requires six to provide OrderedDict (stuf.collects, line 8), which according to this link https://bitbucket.org/gutworth/six/issues/42/ordereddict-for-python-27 is never included in six.
I see. python-stuf uses its own version of six.py, but the RPM packaging procedure replaces that with the system-wide one (see the changelog below). * Mon Nov 30 2015 Ralph Bean <rbean> - 0.9.16-2 ... - Unbundle and add dep on python-six and python3-six.
Ah, that makes sense. So, I guess the problem is the bundled version of "six" is customized and not compatible with the standard upstream version of "six"? I think in that case the guidelines allow for the package to use the bundled, customized version of "six".
Patch applied: http://pkgs.fedoraproject.org/cgit/rpms/python-stuf.git/commit/?id=b2d0b139152801460649ea0aa720aed85e602f3f
python-stuf-0.9.16-7.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-88d1dd43df
python-stuf-0.9.16-7.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-68834a8bf9
python-stuf-0.9.16-7.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2016-828ce6b5a6
python-stuf-0.9.16-7.fc22 has been submitted as an update to Fedora 22. https://bodhi.fedoraproject.org/updates/FEDORA-2016-a931c8f9c3
python-stuf-0.9.16-7.fc23 has been pushed to the Fedora 23 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-2016-68834a8bf9
python-stuf-0.9.16-7.el7 has been pushed to the Fedora EPEL 7 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-EPEL-2016-828ce6b5a6
python-stuf-0.9.16-7.fc22 has been pushed to the Fedora 22 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-2016-a931c8f9c3
python-stuf-0.9.16-7.fc24 has been pushed to the Fedora 24 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-2016-88d1dd43df
Thanks for fixing the "six" issue. There is one more minor issue for EL 7. This version of python-stuf states its requirement in /usr/lib/python2.7/site-packages/stuf-0.9.16-py2.7.egg-info/requires.txt "parse>=1.6.6" while EPEL only provides 1.6.4. So when it is used, one get the error message below: VersionConflict: (parse 1.6.4 (/usr/lib/python2.7/site-packages), Requirement.parse('parse>=1.6.6')) There are two fixes: a) ignore that requirement (%exclude %{python2_sitelib}/%{modname}-%{version}*/requires*) and add to the RPM spec "Requires: python-parse >= 1.6.4" b) Provides python-parse 1.6.6 in EPEL 7. It is actually safe (from my experience) to use 1.6.4 instead of 1.6.6.
Ling, thanks! Can you file a separate bug for that issue?
python-stuf-0.9.16-8.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2016-48b9b3921e
python-stuf-0.9.16-8.el7 has been pushed to the Fedora EPEL 7 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-EPEL-2016-48b9b3921e
Thanks! The new update (python-stuf-0.9.16-8.el7) works fine for me.
python-stuf-0.9.16-7.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.
python-stuf-0.9.16-7.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.
python-stuf-0.9.16-7.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.
python-stuf-0.9.16-8.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.