building of python C extensions with setuptools is broken
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu One Servers |
Fix Released
|
Critical
|
Elliot Murphy | ||
python-setuptools (Ubuntu) |
Fix Released
|
High
|
Matthias Klose | ||
Karmic |
Fix Released
|
High
|
Matthias Klose |
Bug Description
Binary package hint: python2.6
This problem is new since python2.6 2.6.2-0ubuntu2 was uploaded to Karmic.
As part of my project, we regularly run python setup.py build for a few zope modules, including some such as zope.proxy that include C extensions. very recently, this started failing under python 2.6. It still works fine under python2.5. I believe this is a regression that was introduced when the new version of python2.6 was uploaded in order to fix https:/
I don't know enough about setuptools internals (yet) to submit a patch, but I can point to exactly what is going wrong:
Here is a terminal session that shows me grabbing the source for zope.proxy, running setup.py build, and printing some variables from the python debugger to explain the traceback that happens:
emurphy@detox:~$ bzr get lp:zope.proxy
Branched 28 revision(s).
emurphy@detox:~$ cd zope.proxy/
emurphy@
running build
running build_py
creating build
creating build/lib.
creating build/lib.
copying src/zope/
creating build/lib.
copying src/zope/
copying src/zope/
copying src/zope/
running egg_info
creating src/zope.
writing requirements to src/zope.
writing src/zope.
writing namespace_packages to src/zope.
writing top-level names to src/zope.
writing dependency_links to src/zope.
writing manifest file 'src/zope.
> /usr/lib/
-> filename = _build_
(Pdb) c
reading manifest file 'src/zope.
writing manifest file 'src/zope.
copying src/zope/
running build_ext
> /usr/lib/
-> filename = _build_
(Pdb) n
> /usr/lib/
-> ext = self.ext_
(Pdb) p filename
'_zope_
(Pdb) pp self.ext_map
{'zope.
(Pdb) p fullname
'_zope_proxy_proxy'
(Pdb) c
Traceback (most recent call last):
File "setup.py", line 72, in <module>
zip_safe = False,
File "/usr/lib/
dist.
File "/usr/lib/
self.
File "/usr/lib/
cmd_obj.run()
File "/usr/lib/
self.
File "/usr/lib/
self.
File "/usr/lib/
cmd_obj.run()
File "/usr/lib/
_build_
File "/usr/lib/
self.
File "/usr/lib/
self.
File "/usr/lib/
_build_
File "/usr/lib/
ext_path = self.get_
File "/usr/lib/
filename = self.get_
File "/usr/lib/
ext = self.ext_
KeyError: '_zope_proxy_proxy'
emurphy@
ProblemType: Bug
Architecture: i386
Date: Fri Sep 11 13:03:47 2009
DistroRelease: Ubuntu 9.10
Package: python2.6 2.6.2-0ubuntu5
ProcEnviron:
PATH=(custom, user)
LANG=en_US.UTF-8
SHELL=/bin/bash
ProcVersionSign
SourcePackage: python2.6
Uname: Linux 2.6.31-
Related branches
tags: | added: regression-potential |
Changed in python2.6 (Ubuntu Karmic): | |
status: | New → Triaged |
importance: | Undecided → High |
affects: | python2.6 (Ubuntu Karmic) → python-setuptools (Ubuntu Karmic) |
Changed in ubuntuone-servers: | |
status: | Confirmed → Fix Released |
ScottK pointed out that building C extensions that don't use setuptools seems to be working fine.