Hello,

I've got a strange issue with version resolution when using
zc.buildout; I don't know if it's zc.buildout specific or it's caused
by something which is done by distribute.

The example code can be fetched from there:

hg clone https://[email protected]/Alan/buildoutversionissue

End of output result:

Installing test.
While:
  Installing test.
Error: There is a version conflict.
We already have: zope.testrunner 4.0.0
but asd 0.1.0 requires 'zope.testrunner==4.0.0b1'.

If you check within the downloaded eggs, you'll see there's no egg
requiring zope.testrunner 4.0.0; there's just zc.recipe.testrunner
requiring "zope.testrunner", without any version.

if egg A requires "foolib" while egg B requires "foolib==1.0.0", and
the latest available version of foolib is "1.0.1", then a version
conflict error will arise; it's just as if a "naked" egg dependency is
pinned to the latest available version of a package.

Is that an intended behaviour? I don't seem to find any evidence of
that in distribute or distutils doc.  Although specifying a dependency
without a version shouldn't be a good practice, it seems quite common
- mostly because many people have got full control of the pypi section
on their own repo and they can decide what's offered there, so they
just specify "mydependency" on their other projects. I think it's
quite a wide assumption, by the way.

Also, this is not the usualy way dependencies are resolved in most
package managers. When using yum (and apt should be quite similar),
something like that happens:

Scenario:
two versions of "mydep" are available: mydep 1.0.0 and 1.0.1
"foo" depends just on mydep
"bar" depends on mydep 1.0.0

If I just want to install "foo", I'll get foo and mydep 1.0.1 on my
system. But if I try installing both, I'll get foo, bar and mydep
1.0.0, because that will be resolved as the best way to handle all
dependencies.

Any comment?

-- 
Alan Franzoni
--
contact me at pub...@[mysurname].eu
_______________________________________________
Distutils-SIG maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to