Установка ezComponents с Pyrus - PullRequest
4 голосов
/ 22 мая 2011

это в некоторой степени связано с Проблемы с установкой PHP EzComponents с использованием pyrus .

Я пытаюсь выполнить чистую установку pyrus без установки какого-либо пакета, как это делал ранее pear (т.е. без установки pear и т. Д.). Однако я сталкиваюсь с проблемами с ezComponents, от которых зависит множество инструментов. Всякий раз, когда я запускаю sudo pyrus install ezc/ConsoleTools, я получаю:

Using PEAR installation found at /usr/lib/php
Downloading components.ez.no/ConsoleTools
PEAR2\Pyrus\Package\Exception: Invalid abstract package components.ez.no/ConsoleTools - releasing maintainer's certificate is not a certificate

Установка вещи с помощью pear работает, но когда я пытаюсь заставить pyrus взять контроль над sudo pyrus /usr/lib/php upgrade ezc/ConsoleTools, я получаю точно такую ​​же ошибку, потому что он пытается загрузить пакет снова.

Мое лучшее предположение - то, что ezComponents использует некоторый пользовательский сервер каналов Pear Как мне обойти это? Или мне нужно подождать, пока отдельные сопровождающие обновят свои зависимости?

Это на OSX 10.6.

1 Ответ

1 голос
/ 23 августа 2011

ОК, так что я понял это.Pyrus пытается извлечь файл .pem в строке 356 файла Pyrus / Channel / RemotePackage.php.Это делается путем добавления .pem к URL-адресу пакета.

Этот файл отсутствует в ezComponents, и сервер отвечает перенаправлением 302 вместо 404, ошибка перенаправления 302, упомянутая в моем вопросе, была исправлена, поэтомутеперь pyrus следует за URL, что приводит к тому, что главная страница отвечает 200 OK.Теперь Pyrus думает, что html-страница является сертификатом, и пытается проверить пакет с ним.

Обходной путь - просто отключить мод openssl, тогда вся проверка пропускается.Что легче сказать, чем сделать в OS X, поскольку для этого потребуется перекомпиляция :-) Думаю, все, что осталось сделать, - это отредактировать исходный код.

...