Declares that it requires the test dependencies, but doesn't depend on them, breaking other python code

Bug #918307 reported by James Westby
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
lazr.restfulclient
Triaged
High
Unassigned
lazr.restfulclient (Debian)
Fix Released
Unknown
lazr.restfulclient (Ubuntu)
Fix Released
Undecided
Unassigned
Lucid
Fix Released
Undecided
Unassigned

Bug Description

Impact: code that uses lazr.restfulclient (or launchpadlib) and pkg_resources can't work. The python package declares that the test dependencies are required, but they aren't listed in the .deb dependencies, and so aren't installed. They aren't needed for the code so they should be dropped.

Development fix: Drop the requires on the test dependencies

Stable fix: the same thing

Test Case:
     1. Install the lazr.restfulclient package from -updates
     2. Check that van.testing, wsgi_intercept, lazr.restful and lazr.authentication are listed in the first section of /usr/share/pyshared/lazr.restfulclient-0.9.11.egg-info/requires.txt
     3. Install the lazr.restfulclient package from -proposed
     4. Check that those lines are now listed in a [tests] section.

Regression potential: low, as the packages haven't been installed as dependencies, and some aren't even packaged, so nothing should be relying on them being declared as dependencies.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lazr.restfulclient - 0.12.0-1ubuntu1

---------------
lazr.restfulclient (0.12.0-1ubuntu1) precise; urgency=low

  * Move test dependencies to extras_require so that setuptools doesn't think
    they are needed for the code to work. (LP: #918307)
    .
    Having them listed in requires, but not in the package dependencies leads
    to having a package installed that setuptools thinks is broken. This
    breaks any code that relies on lazr.restfulclient (or launchpadlib) and
    uses setuptools/pkg_resources.
 -- James Westby <email address hidden> Wed, 18 Jan 2012 12:50:39 -0500

Changed in lazr.restfulclient (Ubuntu):
status: New → Fix Released
Revision history for this message
Stefano Rivera (stefanor) wrote :

marking as affecting lazr.restfulclient, as it would be nice if this patch was applied upstream.

Changed in lazr.restfulclient (Debian):
status: Unknown → Fix Released
Aaron Bentley (abentley)
Changed in lazr.restfulclient:
status: New → Triaged
importance: Undecided → High
tags: added: trivial
Revision history for this message
Martin Pitt (pitti) wrote : Please test proposed package

Hello James, or anyone else affected,

Accepted lazr.restfulclient into lucid-proposed. The package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

Changed in lazr.restfulclient (Ubuntu Lucid):
status: New → Fix Committed
tags: added: verification-needed
description: updated
Revision history for this message
Bartosz Kosiorek (gang65) wrote :

The package python-lazr.restfulclient from proposed works perfectly for me. I checked the /usr/share/pyshared/lazr.restfulclient-0.9.11.egg-info/requires.txt file, and it looks like:

httplib2
oauth
setuptools
wadllib>=1.1.4
zope.interface

[docs]
Sphinx
z3c.recipe.sphinxdoc

[tests]
lazr.authentication
lazr.restful>=0.9.18
wsgi_intercept
van.testing

Verification done.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Michael Vogt (mvo) wrote :

I can confirm this as well.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lazr.restfulclient - 0.9.11-1ubuntu1.3

---------------
lazr.restfulclient (0.9.11-1ubuntu1.3) lucid-proposed; urgency=low

  * Move test dependencies to extras_require so that setuptools doesn't think
    they are needed for the code to work. (LP: #918307)
    .
    Having them listed in requires, but not in the package dependencies leads
    to having a package installed that setuptools thinks is broken. This
    breaks any code that relies on lazr.restfulclient (or launchpadlib) and
    uses setuptools/pkg_resources.
 -- James Westby <email address hidden> Wed, 18 Jan 2012 12:16:35 -0500

Changed in lazr.restfulclient (Ubuntu Lucid):
status: Fix Committed → Fix Released
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.