Pipenv: `pipenv lock -r` ist nicht deterministisch

Erstellt am 18. Dez. 2017  ·  3Kommentare  ·  Quelle: pypa/pipenv

Beschreiben Sie Ihre Umgebung

Ubuntu 17.04, Python 3.5.3, Pipenv 9.0.1

Erwartetes Ergebnis

pipenv lock -r gibt genau dieselbe Ausgabe zurück, wenn dieselbe Pipfile und Pipfile.lock angegeben werden.

Tatsächliche Ergebnis

pipenv lock -r ordnet die Zeilen bei jedem Durchlauf zufällig neu. Dies wird zu einem Problem, wenn es mit pipenv lock -r > requirements.txt und Versionskontrolle kombiniert wird, da es requirements.txt , selbst wenn es keine tatsächliche Änderung gibt.

Schritte zum Replizieren

Erstellen Sie ein Projekt mit Pipfile und Pipfile.lock ( Mine als Referenz). Führen Sie pipenv lock -r .

Workaround

Ein möglicher Workaround ist pipenv lock -r | sort .

Alle 3 Kommentare

@kennethreitz Warum wurde das geschlossen?

Senden Sie eine Pull-Anforderung, wenn Sie das Problem beheben möchten!

Obwohl es keine wirkliche Lösung für das Problem ist, warum nicht spontan requirements.txt generieren, wenn Sie es brauchen? Tatsächlich würde ich argumentieren, dass Sie es nicht begehen sollten, da es im besten Fall nur dupliziert, was in Pipfile ist, und im schlimmsten Fall würden sie sich unterscheiden, weil jemand vergessen hat, pipenv lock -r > requirements.txt zu tun.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen