2015-09-11 29 views
12

Dzisiaj uaktualniłem z wersji 7.1.0 do 7.1.2, a teraz to nie działa.PIP nie działa po aktualizacji

$ 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'"> 

Więc próbowałem ponownej instalacji:

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

Ponowna instalacja prowadził bez błędów, ale gdy próbowałem szukać, mam ten sam błąd.

Tak, próbowałem ponownie zainstalować starszą wersję:

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

Ponownie, reinstall działało, ale poszukiwania wciąż złamane po reinstalacji. Oprócz błędu, ja dostawałem komunikat uaktualniania wersji:

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. 

Wyłączenie pamięci podręcznej również daje ten sam błąd:

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

Problem wydaje się być tylko z funkcji wyszukiwania, jak pip nadal działa wystarczająco dobrze, aby ponownie zainstalować i takie.

Wydaje mi się, że dziś zainstalowałem tylko jeszcze jeden pakiet, który był kompozycją dockera. Problem występuje, gdy szukam pakietów innych niż docker-compose, jak w moich przykładach.

Wszelkie pomysły?

+0

Ok, dodałem tag. – Travis

+0

W sierpniu 2016 r., 'Pip search docker-compose' znajduje pakiety z' docker' lub 'compose' w nazwie pakietu. (Czy ktoś wie, czy jest to udokumentowane w dowolnym miejscu?) – denis

Odpowiedz

12

nie byłem w stanie odtworzyć ten z pip 7.1.2 i albo Python 2.7.8 lub 3.5.1 w systemie Linux.

xmlrpclib docs mają do powiedzenia na temat 'błędów':

Method calls may also raise a special Fault instance, used to signal XML-RPC server errors

Oznacza to, że PIP jest zgłoszenie problemu na serwerze (PyPI) stronie.

W Python Infrastructure Status site raporty problemy z pip wyszukiwania w 2015-09-11 i 2015-09-12.

podejrzewam, że nie jest to błąd w pip, ale problem z pypi.python.org w terminach w question.This pytano na 2015-09-11.

Podobny błąd został zarejestrowany na pypi bitbucket repo w dniu 2015-09-11, wzmacniając moją teorię.

Co ciekawe, nie ma innego podobnego bug logged at pypi's github repo. W tym przypadku termin wyszukiwania jest regex:

pip search "^docker-compose$"

mogę odtworzyć ten błąd na Python 2.7.8 i Python3.5.1, pip-pip-7.1.2 i 8.1.1 w systemie Linux; jednak nie widzę niczego w dokumentacji pip, aby zasugerować, że wyszukiwanie pip obsługuje regex i this answer stwierdza, że ​​regex jest nieobsługiwany, więc myślę, że jest to oddzielny problem niezwiązany z pytaniem OP.

+1

'pip search' używa https://wiki.python.org/moin/PyPIXmlRpc' search', który dopasowuje tylko ustalone ciągi. (Sposobem na wsparcie REs, np. '^ Aa. * Bb'', byłoby przeszukanie' "aa" ', następnie wykonaj RE.) – denis

1

pip to się czasami, jeśli nie znajdzie się żaden (odsłon):

$ pip search '':

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

$ pip search 'something':

OK

Może być również błąd po stronie serwera , który nie dostarcza potrzebnych informacji. Tak więc naprawianie musi być wykonane przez deweloperów pip lub programistów serwera, lub jedno i drugie.

0

Kiedy w zeszłym roku nie otrzymałem odpowiedzi na to pytanie, opublikowałem an issue on GitHub i ustalono, że mój problem został spowodowany przez serwer PyPi/Pip (tylko część wyszukiwania, jak sądzę).

Nie mogę być pewien, ale wydaje się, że było więcej komentarzy/odpowiedzi na to pytanie, gdy był aktywny w zeszłym roku. Naprawdę myślałem, że ktoś opublikował tu odpowiedź (przynajmniej w komentarzu lub coś takiego), ale oczywiście nie ma go tutaj teraz.

Myślę, że @ tedder42 ma inny problem niż ja, ponieważ there hasn't been any recent downtime w PyPi. Nawet jeśli ktoś zamieściłby prawdziwą odpowiedź na jego pytanie, nie byłbym w stanie tego zweryfikować. Myślę więc, że najlepszym sposobem działania jest zignorowanie jego nagród, a jeśli nadal ma problem, powinno zostać przekształcone w nowe pytanie.

Powiązane problemy