buildout不尊重固定版本

时间:2012-02-07 10:45:11

标签: plone buildout

从buildot中获取这个奇怪的错误。 buildout适用于plone3并且有固定版本。

$ bin/buildout -Nv 
While:
  Initializing.
  Getting section buildout.
  Initializing section buildout.
  Getting option buildout:parts.
  Getting section filestorage.
  Initializing section filestorage.
  Installing recipe collective.recipe.filestorage.
Error: There is a version conflict.
We already have: zope.location 0.0
but zope.site 3.9.2 requires 'zope.location>=3.7.0'.

如果我删除了我得到的假鸡蛋

$ rm -r fake-eggs/
$ bin/buildout -Nvv
While:
  Initializing.
  Getting section buildout.
  Initializing section buildout.
  Getting option buildout:parts.
  Getting section filestorage.
  Initializing part filestorage.
  Getting section supervisor.
  Initializing section supervisor.
  Getting option supervisor:programs.
  Getting section instance1.
  Initializing section instance1.
  Getting option instance1:eggs.
  Getting section instance.
  Initializing section instance.
  Loading recipe 'plone.recipe.zope2instance==2.7'.

An internal error occurred due to a bug in either zc.buildout or in a
recipe being used:
Traceback (most recent call last):
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1804, in main
    user_defaults, windows_restart, command)
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 252, in __init__
    options = self['buildout']
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1056, in __getitem__
    options._initialize()
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1130, in _initialize
    self._dosub(k, v)
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1177, in _dosub
    v = '$$'.join([self._sub(s, seen) for s in v.split('$$')])
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1241, in _sub
    v = self.buildout[section].get(option, None, seen)
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1056, in __getitem__
    options._initialize()
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1144, in _initialize
    self.recipe = recipe_class(buildout, name, self)
  File "/Users/dylanjay/Projects/csep/src/collective.recipe.filestorage/collective/recipe/filestorage/__init__.py", line 25, in __init__
    part = self.buildout[part_name]
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1056, in __getitem__
    options._initialize()
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1130, in _initialize
    self._dosub(k, v)
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1177, in _dosub
    v = '$$'.join([self._sub(s, seen) for s in v.split('$$')])
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1241, in _sub
    v = self.buildout[section].get(option, None, seen)
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1056, in __getitem__
    options._initialize()
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1130, in _initialize
    self._dosub(k, v)
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1177, in _dosub
    v = '$$'.join([self._sub(s, seen) for s in v.split('$$')])
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1241, in _sub
    v = self.buildout[section].get(option, None, seen)
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1056, in __getitem__
    options._initialize()
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1141, in _initialize
    recipe_class = _install_and_load(reqs, 'zc.buildout', entry, buildout)
  File "/Users/dylanjay/Projects/download-cache/eggs/zc.buildout-1.5.2-py2.4.egg/zc/buildout/buildout.py", line 1078, in _install_and_load
    if pkg_resources.working_set.find(req) is None:
  File "/Users/dylanjay/Projects/download-cache/eggs/distribute-0.6.24-py2.4.egg/pkg_resources.py", line 474, in find
    raise VersionConflict(dist,req)     # XXX add more info
VersionConflict: (plone.recipe.zope2instance 4.2 (/Users/dylanjay/Projects/download-cache/eggs/plone.recipe.zope2instance-4.2-py2.4.egg), Requirement.parse('plone.recipe.zope2instance==2.7'))

所以似乎collective.recipe.filestorage需要plone.recipe.zope2instance。 zope2instance固定为2.7但是在buildout recipe初始化期间,不使用此版本而是选择4.2。

如果我从部件中删除filestorage,则buildout工作正常,而注释显示该版本当前已固定。

关于如何解决这个问题的想法或版本固定的原因在这里不起作用?

1 个答案:

答案 0 :(得分:2)

你可能正在使用一些具有高级依赖性的附加组件:使用plone.app.discussion goodversion经常帮助我(我不是要添加plone.app.discussion产品)!

[buildout]
...
extends =
    ...
    http://good-py.appspot.com/release/plone.app.discussion/1.0