конфликт версий getpaid - PullRequest
       1

конфликт версий getpaid

3 голосов
/ 21 декабря 2011

при установке getpaid для plone, несколько дистрибутивов жаловались, что

У нас уже есть: egg.name 0.0, но another.egg 1.2.3 требует 'egg.name> = 4.5.6'

Мне удалось продвинуться вперед, закрепив запрошенные версии, до тех пор, пока:

Error: There is a version conflict.
We already have: zope.component 3.5.1
but zope.site 3.9.2 requires 'zope.component>=3.8.0'.
but zope.browserresource 3.12.0 requires 'zope.component>=3.8.0'.

Прикрепление zope.component к 3.8.0 не даст следующее:

Error: There is a version conflict.
We already have: zope.component 3.8.0
but five.localsitemanager 1.3 requires 'zope.component<3.6dev'.

Как мне обойти это (catch22)?

Мой билд: http://www.pastie.org/3050771

Ответы [ 2 ]

4 голосов
/ 21 декабря 2011

В общем, в таком случае рекомендуется делать это шаг за шагом.Хитрость заключается в добавлении этой строки в ваш раздел [buildout]:

allow-picked-versions = false

Это говорит zc.buildout о немедленном выходе, когда он видит, что требуется пакет, который не закреплен.Затем вы можете перейти на http://pypi.python.org и найти этот пакет и посмотреть, сможете ли вы выяснить, какая версия лучше всего подходит для других ваших пакетов и особенно для вашей версии Plone.На Plone 3, когда пакет zope. * Не закреплен, лучше всего прикрепить его к самой старой версии, которую вы можете найти.

В этом конкретном случае эти версии zope.site и zope.browserresource довольно недавние.и требует слишком новой версии zope.component.

Это не проверено, но эти выводы могут работать (без гарантий):

zope.site = 3.5.1
zope.component = 3.5.1
zope.browserresource = 3.9.0
2 голосов
/ 21 декабря 2011

Используйте KGS (известный хороший набор) в вашей сборке:

например

[buildout]
extends = http://good-py.appspot.com/release/getpaid/0.10.4
versions = versions
...