← Back to team overview

launchpad-dev team mailing list archive

Buildout malfunctions with lazr packages installed as debs

 

Hi,

No one not on karmic will be seeing this, since it's only on Karmic that
python-lazr-uri was packaged as a .deb, but something's broken with
buildout's isolation from system installed packages.


When attempting to set up a fresh launchpad development instance on
Karmic, if python-lazr-uri is installed, it dies like so:


Getting distribution for 'lazr.uri==1.0.1'.
Installing lazr.uri 1.0.1
Caused installation of a distribution:
lazr.uri 1.0
with a different version.
Got None.
While:
  Installing.
  Getting section filetemplates.
  Initializing part filetemplates.
Error: There is a version conflict.
We already have: lazr.uri 1.0
make: *** [/home/maxb/launchpad/lp-branches/stable/bin/py] Error 1



My first reaction was to "dpkg --force-depends --purge python-lazr-uri"
which produced this somewhat perplexing traceback:


maxb@z61p:~/launchpad/lp-branches/stable$ make `pwd`/bin/py SHHH=
PYTHONPATH= python2.4 bootstrap.py\
                --ez_setup-source=ez_setup.py \
		--download-base=download-cache/dist --eggs=eggs
PYTHONPATH= ./bin/buildout \
                configuration:instance_name=development -c buildout.cfg
Develop: '/home/maxb/launchpad/lp-branches/stable/.'
Getting distribution for 'lazr.uri==1.0.1'.
Traceback (most recent call last):
  File "<string>", line 1, in ?
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 1671, in main
    with_ei_usage(lambda:
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 1659, in with_ei_usage
    return f()
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 1675, in <lambda>
    distclass=DistributionWithoutHelpCommands, **kw
  File "/usr/lib/python2.4/distutils/core.py", line 149, in setup
    dist.run_commands()
  File "/usr/lib/python2.4/distutils/dist.py", line 946, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python2.4/distutils/dist.py", line 966, in run_command
    cmd_obj.run()
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 211, in run
    self.easy_install(spec, not self.no_deps)
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 427, in easy_install
    return self.install_item(None, spec, tmpdir, deps, True)
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 476, in install_item
    dists = self.install_eggs(spec, download, tmpdir)
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 655, in install_eggs
    return self.build_and_install(setup_script, setup_base)
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 930, in build_and_install
    self.run_setup(setup_script, setup_base, args)
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 919, in run_setup
    run_setup(setup_script, args)
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/sandbox.py",
line 26, in run_setup
    DirectorySandbox(setup_dir).run(
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/sandbox.py",
line 63, in run
    return func()
  File
"/home/maxb/launchpad/lp-sourcedeps/eggs/setuptools-0.6c9-py2.4.egg/setuptools/sandbox.py",
line 29, in <lambda>
    {'__file__':setup_script, '__name__':'__main__'}
  File "setup.py", line 41, in ?
    'RestrictedPython',
ImportError: No module named uri
An error occured when trying to install lazr.uri 1.0.1. Look above this
message for any errors that were output by easy_install.
While:
  Installing.
  Getting section filetemplates.
  Initializing part filetemplates.
  Getting distribution for 'lazr.uri==1.0.1'.
Error: Couldn't install: lazr.uri 1.0.1
make: *** [/home/maxb/launchpad/lp-branches/stable/bin/py] Error 1



Following on from which I also did "dpkg --force-depends --purge
python-lazr-restfulclient", upon which buildout successfully installed
lazr.uri 1.0.1 into the eggs directory.


Once the lazr.uri 1.0.1 egg was present in the eggs directory, it was
possible to reinstall the removed .debs without breaking the launchpad
tests.


Weird.
Any thoughts? :-)

Max.

Attachment: signature.asc
Description: OpenPGP digital signature


Follow ups