Unable to detect Zope version. Please make sure you have Zope 2.10.4 or newer installed.
происходит от более старых версий Plone (версия 3.0 и более ранние, она была удалена в строке 3.1).Он использует API старого стиля App.version_txt.getZopeVersion
для чтения файла version.txt из каталога модуля Zope2, но это не всегда записывается.Я не вижу этого в моих установках Zope2, установленных с рецептом plone.recipe.zope2install в любом случае.В противном случае это сообщение журнала безвредно, если вы используете Zope 2.10.4 или новее.
С появлением подходящего яйца Zope2 Plone теперь использует модуль pkg_resources
для проведения этого теста, а в Zope 2.12 - getZopeVersion
API также использует pkg_resources
для внутреннего использования.В предварительном тесте условий дляватерного коллективного коллектива также используется pkg_resources
для анализа версий пакетов.
Из вашей записи в журнале Unable to detect Zope version
я делаю вывод, что вы используете более старую версию Plone (3.0 или старше), и, таким образом, вы, скорее всего, скорее всегоиспользуя Zope 2.10.Zope 2.10 - это не яйцо, поэтому для pkg_resources
не существует метаданных о яйце для получения версии.Таким образом, проверка версии не выполняется для любой версии Zope до 2.12.
Очевидный обходной путь - не использовать пакет, определяющий monkeypatch на серверах Zope старше 2.12.Но вы также можете создать поддельное яйцо с информацией о версии, включенной в рецепт plone.recipe.zope2install
:
[zope2]
recipe = plone.recipe.zope2install
...
additional-fake-eggs =
Zope2 = 2.10.11
Поддельные яйца предоставляют метаданные, достаточные для pkg_resources, чтобы получить номер версии, но рецепт zope2install записывает Zope2 по умолчаниюподдельное яйцо с версией 0.0.Определив поддельное яйцо с номером версии, вы получите pkg_resources, который предоставит вам достаточно информации для выполнения предварительного условия.Возможно, вам придется обновить plone.recipe.zope2install
версию, я вижу, что некоторые рефакторинг и исправления ошибок были применены к способу создания поддельных яиц, которые могут повлиять на вас.