Pipenv: `pipenv lock -r` no es determinista

Creado en 18 dic. 2017  ·  3Comentarios  ·  Fuente: pypa/pipenv

Describa su entorno

Ubuntu 17.04, Python 3.5.3, pipenv 9.0.1

Resultado Esperado

pipenv lock -r devuelve exactamente el mismo resultado cuando se le da el mismo Pipfile y Pipfile.lock.

Resultado actual

pipenv lock -r reordena aleatoriamente las líneas en cada ejecución. Esto se convierte en un problema cuando se combina con pipenv lock -r > requirements.txt y el control de versiones, ya que genera requirements.txt incluso si no hay un cambio real.

Pasos para replicar

Cree un proyecto con Pipfile y Pipfile.lock ( el mío como referencia). Ejecute pipenv lock -r .

Solución

Una posible solución es pipenv lock -r | sort .

Todos 3 comentarios

@kennethreitz ¿Por qué estaba cerrado?

¡Envía una solicitud de extracción si quieres arreglarlo!

Si bien no es una solución real al problema, ¿por qué no generar requirements.txt sobre la marcha cuando lo necesite? De hecho, diría que no deberías cometerlo ya que, en el mejor de los casos, solo duplica lo que esté en Pipfile y, en el peor de los casos, diferirían porque alguien olvidó hacer pipenv lock -r > requirements.txt .

¿Fue útil esta página
0 / 5 - 0 calificaciones