сборка не соответствует закрепленной версии

Получение этой странной ошибки от файла buildot. Сборка предназначена для 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'))

Таким образом, для коллективного.рецепта.filestorage требуется plone.recipe.zope2instance. zope2instance привязан к версии 2.7, однако во время инициализации рецепта сборки эта версия не используется, и вместо нее выбирается версия 4.2.

Если я удаляю файловое хранилище из частей, сборка работает нормально, и аннотация показывает, что версия в настоящее время закреплена.

Любые идеи о том, как выйти из этого или почему здесь не работает закрепление версии?


person djay    schedule 07.02.2012    source источник


Ответы (1)


Вы, вероятно, используете какие-то надстройки с расширенной зависимостью: Использование хорошей версии plone.app.discussion очень часто помогало мне (я не имею в виду добавление продукта plone.app.discussion)!

[buildout]
...
extends =
    ...
    http://good-py.appspot.com/release/plone.app.discussion/1.0
person keul    schedule 08.02.2012
comment
нет, я думаю, что это связано с тем, как zc.buildout и коллективное хранилище файлов работают вместе. Как было сказано ранее, версии уже закреплены. good-py просто прикалывает версии. Так что это не помогло бы. - person djay; 13.02.2012