On 4 Sep 2007, at 16:13 , Jim Fulton wrote:
How would the "known_working_versions" be used? You haven't specified that.


You're right, I forgot that. In buildout.cfg, you'd then say:

  [buildout]
  versions = egg:grok==0.11

which would load the grok 0.11 egg before doing anything else, inspect its known working versions data and then do the rest of the work.

Presumably this would be something that is overridable. How would this be overridden?

Overridability would work like it does now, a la:

  [buildout]
  versions = egg:grok==0.11, version_overrides

  [version_overrides]
  ZODB3 = 3.9.0

I'm very much against making setuptools *more* complicated than it already is.

Sounds reasonable.

Perhaps buildout (and setuptools) should grow a mechanism for being able to override/resolve version conflicts.

That might be enough already. Then we could use meta eggs to express working sets and the buildout versions=... mechanism to override those versions. It should also be possible to resolve a version conflict between, say, the meta egg (the working set) and a particular package you're using by letting zc.buildout (or setuptools) know which dependencies take precendence, e.g.::

  [buildout]
  version_precedence = MyApp grok Zope

which would mean that MyApp's dependencies take precendence over grok's dependencies which again take precendence over the Zope meta egg's dependencies.

_______________________________________________
Zope3-dev mailing list
Zope3-dev@zope.org
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com

Reply via email to