zope.interface depends on setuptools but appears to think that it doesn't

Bug #145374 reported by Zooko Wilcox-O'Hearn
2
Affects Status Importance Assigned to Milestone
Zope 3
Fix Released
Undecided
Unassigned

Bug Description

The beginning of zope.interface 3.4.0 setup.py catches ImportError if setuptools can't be imported and attempts to fall back to distutils. However, it then immediately attempts to execute find_packages(). This means that (a) it fails if setuptools is not installed, but (b) it is hard for a user or an automated tool to tell that the problem is that setuptools is missing.

To fix this bug, why not use the ez_setup.py hack?

http://peak.telecommunity.com/dist/ez_setup.py

Or if you don't like that hack, then at least just don't catch the ImportError so that it is easy to tell what's missing.

(For the record, I have an automated tool that I wrote which probes setup.py files to figure out whether they are packaged with distutils or with setuptools. zope.interface 3.4.0 is the only setup.py file that I've encountered which causes my tool to fail.)

Here's the bug report for my zope.interface-using project:

http://allmydata.org/trac/tahoe/ticket/140

Revision history for this message
Zooko Wilcox-O'Hearn (zooko) wrote :

This changelog entry suggests that perhaps this bug was fixed in zope.interface 3.4.1:

http://pypi.python.org/pypi/zope.interface#id1

Revision history for this message
Zooko Wilcox-O'Hearn (zooko) wrote :

Yep, looks like the buggy code is gone:

http://svn.zope.org/zope.interface/trunk/setup.py?rev=78166&view=markup

So how do we close this ticket on launchpad?

Changed in zope3:
status: New → 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.