packaging instructions include extra dependencies

Bug #1561581 reported by Doug Hellmann
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ironic UI
Fix Released
Undecided
Doug Hellmann

Bug Description

The setup.py for ironic-ui 1.1.0 includes a setup_requires instruction to install python-ironicclient. It's not clear why python-ironicclient is needed during the installation process for ironic-ui. The runtime dependency is already correctly expressed in the requirements.txt file. Having it also in the setup_requires file means that in order to run commands like "python setup.py --description" python-ironicclient must be installed, which shouldn't really be needed.

One result of having the dependency expressed this way is that there is a lot of extra garbage data added to release announcements for the project (http://lists.openstack.org/pipermail/openstack-announce/2016-March/001032.html).

Another result is that sometimes the package can't be installed at all because of conflicting requirements, which is what happened to me when I tried to run "python setup.py --description" by hand:

$ python setup.py --description
Traceback (most recent call last):
  File "setup.py", line 32, in <module>
    pbr=True)
  File "/usr/lib/python2.7/distutils/core.py", line 111, in setup
    _setup_distribution = dist = klass(attrs)
  File "/usr/local/lib/python2.7/dist-packages/setuptools/dist.py", line 269, in __init__
    self.fetch_build_eggs(attrs['setup_requires'])
  File "/usr/local/lib/python2.7/dist-packages/setuptools/dist.py", line 313, in fetch_build_eggs
    replace_conflicting=True,
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 825, in resolve
    dist = best[req.key] = env.best_match(req, ws, installer)
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 1063, in best_match
    dist = working_set.find(req)
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 700, in find
    raise VersionConflict(dist, req)
pkg_resources.VersionConflict: (requests 2.3.0 (/usr/local/lib/python2.7/dist-packages), Requirement.parse('requests!=2.9.0,>=2.8.1'))

tags: added: mitaka-rc-potential
Changed in ironic-ui:
status: New → In Progress
assignee: nobody → Doug Hellmann (doug-hellmann)
Revision history for this message
Doug Hellmann (doug-hellmann) wrote : Fix included in openstack/ironic-ui 1.1.1

This issue was fixed in the openstack/ironic-ui 1.1.1 release.

Changed in ironic-ui:
status: In Progress → Fix Committed
status: Fix Committed → Fix Released
Revision history for this message
Doug Hellmann (doug-hellmann) wrote : Fix included in openstack/ironic-ui 2.0.0

This issue was fixed in the openstack/ironic-ui 2.0.0 release.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.