после обновления не работает

Сегодня я обновился с пункта 7.1.0 до 7.1.2, и теперь он не работает.

$ pip search docker-compose Exception: Traceback (most recent call last): File "/Library/Python/2.7/site-packages/pip/basecommand.py", line 223, in main status = self.run(options, args) File "/Library/Python/2.7/site-packages/pip/commands/search.py", line 43, in run pypi_hits = self.search(query, options) File "/Library/Python/2.7/site-packages/pip/commands/search.py", line 60, in search hits = pypi.search({'name': query, 'summary': query}, 'or') File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xmlrpclib.py", line 1240, in __call__ return self.__send(self.__name, args) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xmlrpclib.py", line 1599, in __request verbose=self.__verbose File "/Library/Python/2.7/site-packages/pip/download.py", line 788, in request return self.parse_response(response.raw) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xmlrpclib.py", line 1490, in parse_response return u.close() File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xmlrpclib.py", line 799, in close raise Fault(**self._stack[0]) Fault: <Fault 1: "<type 'exceptions.KeyError'>:'hits'"> 

Поэтому я попытался переустановить:

 sudo -H pip install --force-reinstall -U pip 

Переустановка запускалась без ошибок, но когда я попытался выполнить поиск, я получил ту же ошибку.

Итак, я попытался переустановить старую версию:

 sudo -H pip install --force-reinstall -U pip==7.1.0 

Опять же, переустановка работала, но поиск был по-прежнему сломан после переустановки. В дополнение к ошибке, я получил сообщение об обновлении версии:

 You are using pip version 7.1.0, however version 7.1.2 is available. You should consider upgrading via the 'pip install --upgrade pip' command. 

Отключение кеша также дает ту же ошибку:

 pip search docker-compose --no-cache-dir --disable-pip-version-check 

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

Я считаю, что сегодня я установил еще один пакет, который был составлен докере. Проблема возникает, когда я ищу пакеты, отличные от docker-compose, как в моих примерах.

Есть идеи?

3 Solutions collect form web for “после обновления не работает”

Я не смог воспроизвести это с помощью протокола 7.1.2 и Python 2.7.8 или 3.5.1 в Linux.

В документах xmlrpclib говорится об ошибках:

Вызов метода также может вызвать специальный экземпляр Fault, используемый для сигнализации ошибок сервера XML-RPC

Это означает, что pip сообщает о проблеме на стороне сервера (pypi).

Сайт состояния инфраструктуры Python сообщает о проблемах с поиском пипов в 2015-09-11 и 2015-09-12.

Я подозреваю, что это не ошибка в пипсе, а проблема с pypi.python.org в указанные даты. Этот вопрос был задан в 2015-09-11.

Подобная ошибка была зарегистрирована на репозитории pypi bitbucket в 2015-09-11 годах, что усилило мою теорию.

Интересно, что есть еще одна подобная ошибка, зарегистрированная в gythub repo pypi . В этом случае поисковый термин является регулярным выражением:

pip search "^docker-compose$"

Я могу воспроизвести эту ошибку на Python 2.7.8 и Python3.5.1, pip-7.1.2 и pip-8.1.1 на Linux; однако я не могу ничего увидеть в документации на pip, чтобы предположить, что поиск в пике поддерживает регулярное выражение, и этот ответ утверждает, что regex не поддерживается, поэтому я думаю, что это отдельная проблема, не связанная с вопросом OP.

pip делает это иногда, если совпадений (хитов) не найдено:

$ pip search '' :

Fault: <Fault 1: "<type 'exceptions.KeyError'>:'hits'">

$ pip search 'something' :

ОК

Также может быть ошибка на стороне сервера, которая не может предоставить необходимую информацию. Таким образом, исправление должно выполняться разработчиками pip , или разработчиками сервера, или и тем, и другим.

Когда в прошлом году я не получил ответа на этот вопрос, я опубликовал вопрос о GitHub , и было определено, что моя проблема была вызвана тем, что сервер PyPi / pip не работает (как я полагаю, только часть поиска).

Я не могу быть уверен, но, похоже, было больше комментариев / ответов на этот вопрос, когда он был активным в прошлом году. Я действительно думал, что кто-то разместил здесь этот ответ (по крайней мере, в комментарии или что-то в этом роде), но это, очевидно, не сейчас.

Я думаю, что у @ tedder42 есть другая проблема, чем я, потому что в PyPi не было никаких недавних простоя . Даже если кто-то отправил реальный ответ на его вопрос, я бы не смог проверить это. Поэтому я считаю, что лучший способ действий – проигнорировать его щедрость, и если у него все еще есть проблема, это должно быть превращено в новый вопрос.

  • Обслуживание роли PyPI - Владельцы против Maintainers
  • Какие части API PyPI фактически используются клиентами?
  • Python Wheels на linux (как? И почему?)
  • Вам не разрешено редактировать информацию о пакете «...»
  • Каков наилучший способ распространения пакета Python, который требует минимальной версии Python
  • Mac OS X, pip: укажите компилятор для пакетов, содержащих библиотеки C
  • Pypi: запрещено хранить или редактировать информацию об упаковке
  • Версия для разработки на PyPI
  • Python - лучший язык программирования в мире.