<p>Pip-Freeze-Generierungsformat, das von pip install -r . falsch geparst wird</p>

Erstellt am 15. Sept. 2014  ·  3Kommentare  ·  Quelle: pypa/pip

Ich habe Zeilen in meiner Pip Freeze-Ausgabe wie:

-e [email protected]:widgets.git@3bdaf7d07c44a87c38beb1e8abd163a7edf99adc#egg=widgets
-e [email protected]:[email protected]#egg=gadgets

Wenn es an der Zeit ist, mit pip install -r requirements.txt zu installieren, scheint es, dass pip example.com:[email protected] fälschlicherweise als die vollständige URL des Git-Repositorys identifiziert, obwohl es tatsächlich nur example.com:gadgets.git und dann sollte es it schau dir den 3bda...99adc-Commit an.

Wenn ich versuche, die Pip-Freeze-Ausgabe zu verwenden, z

pip install -e [email protected]:[email protected]#egg=gadgets

Ich bekomme den gleichen Fehler.

Dies ist alles mit pip 1.5.4

freeze vcs awaiting PR auto-locked bug

Alle 3 Kommentare

Beachten Sie, dass es mit den folgenden Änderungen korrekt funktioniert:

pip install -e [email protected]:/path/to/project/[email protected]#egg=project

oder

pip install -e [email protected]:project.git#egg=project

Obwohl im letzteren Fall offensichtlich nur der aktuelle Commit abgerufen wird und nicht der in 3bdaf angegebene…

Außerdem funktioniert es aus Gründen, die ich nicht ergründen kann, für Anfragen an Github.

Das ist,

pip install -e [email protected]:JordanReiter/[email protected]#egg=github_project

funktioniert.

Dies ist ähnlich wie #6293. Der Parser (basierend auf stdlib urlsplit hat Probleme, den Pfadteil der URL zu identifizieren, wenn er überhaupt kein / enthält, und identifiziert das Ganze nach + als netloc Die Variante ohne rev funktioniert völlig zufällig, weil netloc und path später wieder zusammengefügt und an Git übergeben werden (was automatisch das Richtige tut).

Die Diskussionen in #6293 scheinen dafür zu sprechen, die URL-Unterstützung im SCP-Stil vollständig einzustellen, daher wäre die bessere Lösung hier, pip freeze stattdessen git+ssh:// URLs auszuspucken.

Schließen, da wir vorschlagen, das Formular git+git@ in #7554 zu entfernen.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen