[tahoe-lafs-trac-stream] [Tahoe-LAFS] #2468: updates to indirect dependencies cause build failures
Tahoe-LAFS
trac at tahoe-lafs.org
Thu Jul 16 15:25:32 UTC 2015
#2468: updates to indirect dependencies cause build failures
---------------------------+----------------------------------
Reporter: daira | Owner: daira
Type: defect | Status: new
Priority: normal | Milestone: undecided
Component: packaging | Version: 1.10.1
Resolution: | Keywords: packaging setuptools
Launchpad Bug: |
---------------------------+----------------------------------
Description changed by daira:
Old description:
> Consider the case where Tahoe initially depends on foo >= X.0, and foo
> X.0 depends on bar Y.0. Then foo X.1 is released which depends on bar
> Y.1. (This is a common situation, especially when foo and bar have
> overlapping development teams.)
>
> Suppose that a particular machine has bar Y.0 installed globally. What is
> supposed to happen is that, in the case where a Tahoe build on that
> machine downloads foo X.1, it also downloads bar Y.1 and builds it under
> `support/`.
>
> However, that doesn't happen. Instead we get an error:
> {{{
> error: Installed distribution bar Y.0 conflicts with requirement bar>=Y.1
> }}}
>
> For a concrete example, see [https://tahoe-lafs.org/buildbot-tahoe-
> lafs/builders/memcheck-32/builds/96/steps/compile/logs/stdio]:
> {{{
> Need pyasn1-modules>=0.0.5
> Searching for pyasn1-modules>=0.0.5
> Reading http://pypi.python.org/simple/pyasn1-modules/
> Best match: pyasn1-modules 0.0.6
> Downloading
> https://pypi.python.org/packages/2.7/p/pyasn1-modules/pyasn1_modules-0.0.6-py2.7.egg#md5=c5d2ed9c850538f57effed3c7b74bbfb
> Processing pyasn1_modules-0.0.6-py2.7.egg
> creating /home/bb-tahoe/bb-tahoe/memcheck-32/build/support/lib/python2.7
> /site-packages/pyasn1_modules-0.0.6-py2.7.egg
> Extracting pyasn1_modules-0.0.6-py2.7.egg to /home/bb-tahoe/bb-
> tahoe/memcheck-32/build/support/lib/python2.7/site-packages
> Adding pyasn1-modules 0.0.6 to easy-install.pth file
>
> Installed /home/bb-tahoe/bb-tahoe/memcheck-32/build/support/lib/python2.7
> /site-packages/pyasn1_modules-0.0.6-py2.7.egg
> found pyasn1-modules 0.0.6 (/home/bb-tahoe/bb-
> tahoe/memcheck-32/build/support/lib/python2.7/site-
> packages/pyasn1_modules-0.0.6-py2.7.egg)
> adding subdependency pyasn1>=0.1.8
>
> Need pyasn1>=0.1.4
> found pyasn1 0.1.7 (/usr/lib/python2.7/dist-packages)
> no subdependencies to add
>
> [...]
> error: Installed distribution pyasn1 0.1.7 conflicts with requirement
> pyasn1>=0.1.8
> }}}
>
> setuptools delenda est.
New description:
Consider the case where Tahoe initially depends on foo >= X.0, and foo X.0
depends on bar Y.0. Then foo X.1 is released which depends on bar Y.1.
(This is a common situation, especially when foo and bar have overlapping
development teams.)
Suppose that a particular machine has bar Y.0 installed globally. What is
supposed to happen is that, in the case where a Tahoe build on that
machine downloads foo X.1, it also downloads bar Y.1 and builds it under
`support/`.
However, that doesn't happen. Instead we get an error:
{{{
error: Installed distribution bar Y.0 conflicts with requirement bar>=Y.1
}}}
For a concrete example, see [https://tahoe-lafs.org/buildbot-tahoe-
lafs/builders/memcheck-32/builds/96/steps/compile/logs/stdio]:
{{{
Need allmydata-tahoe==1.10.1.post5
found allmydata-tahoe 1.10.1.post5 (/home/bb-tahoe/bb-
tahoe/memcheck-32/build/src)
adding subdependencies [...]; pyasn1-modules>=0.0.5; pyasn1>=0.1.4;
[...]
[...]
Need pyasn1-modules>=0.0.5
Searching for pyasn1-modules>=0.0.5
Reading http://pypi.python.org/simple/pyasn1-modules/
Best match: pyasn1-modules 0.0.6
Downloading
https://pypi.python.org/packages/2.7/p/pyasn1-modules/pyasn1_modules-0.0.6-py2.7.egg#md5=c5d2ed9c850538f57effed3c7b74bbfb
Processing pyasn1_modules-0.0.6-py2.7.egg
creating /home/bb-tahoe/bb-tahoe/memcheck-32/build/support/lib/python2.7
/site-packages/pyasn1_modules-0.0.6-py2.7.egg
Extracting pyasn1_modules-0.0.6-py2.7.egg to /home/bb-tahoe/bb-
tahoe/memcheck-32/build/support/lib/python2.7/site-packages
Adding pyasn1-modules 0.0.6 to easy-install.pth file
Installed /home/bb-tahoe/bb-tahoe/memcheck-32/build/support/lib/python2.7
/site-packages/pyasn1_modules-0.0.6-py2.7.egg
found pyasn1-modules 0.0.6 (/home/bb-tahoe/bb-
tahoe/memcheck-32/build/support/lib/python2.7/site-
packages/pyasn1_modules-0.0.6-py2.7.egg)
adding subdependency pyasn1>=0.1.8
Need pyasn1>=0.1.4
found pyasn1 0.1.7 (/usr/lib/python2.7/dist-packages)
no subdependencies to add
[...]
error: Installed distribution pyasn1 0.1.7 conflicts with requirement
pyasn1>=0.1.8
}}}
setuptools delenda est.
--
--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2468#comment:1>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list