python python-3.x pip ubuntu-16.04

python - ¿Qué es "pkg-resources== 0.0.0" en la salida del comando pip freeze



python-3.x ubuntu-16.04 (3)

De acuerdo con https://github.com/pypa/pip/issues/4022 , este es un error resultante de que Ubuntu proporciona metadatos incorrectos a pip. Entonces, no, no parece haber una buena razón para este comportamiento. Archivé un error de seguimiento con Ubuntu. https://bugs.launchpad.net/ubuntu/+source/python-pip/+bug/1635463

Para hacer una copia de seguridad de la respuesta anterior, debería ser seguro eliminar esa línea de tus required.txt. Aquí hay un ejemplo de la sección de archivo Make que congela de forma segura su lista de paquetes (suelte su Makefile y ejecútelo con make freeze ):

freeze: pip freeze | grep -v "pkg-resources" > requirements.txt

Cuando ejecuto pip freeze veo (entre otros paquetes esperados) pkg-resources==0.0.0 . He visto algunas publicaciones que mencionan este paquete (incluido este ), pero ninguno explica qué es o por qué está incluido en la salida de pip freeze . La razón principal por la que me pregunto es por curiosidad, pero también, parece que rompe cosas en algunos casos cuando intento instalar paquetes con un archivo pkg-resources==0.0.0 generado con pip freeze que incluye la línea pkg-resources==0.0.0 ( por ejemplo, cuando Travis CI intenta instalar dependencias a través de pip y encuentra esta línea).

¿Qué es pkg-resources Está bien eliminar esta línea de requirements.txt ?

Actualizar:

He descubierto que esta línea solo parece existir en la salida de pip freeze cuando estoy en virtualenv . Todavía no estoy seguro de qué es o qué hace, pero investigaré más a fondo sabiendo que probablemente esté relacionado con virtualenv .


En Ubuntu, puede solucionar esto eliminando el paquete virtualenv Ubuntu e instalando una nueva versión de pip :

sudo apt remove virtualenv sudo pip install -U virtualenv


En cuanto a la parte de su pregunta "¿ está bien eliminar esta línea? ":

Tengo el mismo problema aquí desarrollando en ubuntu 16.04 con esa misma línea en los requisitos. Cuando se despliega en un Debian 8.5 que ejecuta "pip install -r requirements.txt" required.txt "pip install -r requirements.txt" pip se queja de que pkg-resources "no se encuentra" pero hay un paquete global instalado "python-pkg-resources", por lo que la dependencia debe satisfacerse. Lo mismo en ubuntu: el paquete también existe allí.

Como se indica aquí , parece ser un "paquete instalado implícitamente".

Entonces: Si está en un Debian / Ubuntu con python-pkg-resources instalado, debería ser seguro eliminar esa línea . Lo hice y todo está funcionando bien. Sin embargo, dado que no soy un experto en esto, debe tener en cuenta que esto podría ocasionar complicaciones al implementarlo en otra máquina.