Obtenga información del paquete de Pypi. Modifique sus archivos de requisitos.
Me encuentro revisando la página PYPI con mucha frecuencia principalmente al actualizar las dependencias para obtener las últimas versiones. Soy inherentemente vago y no quería sacar mi trasero de mi ventana de terminal.
No hay magia real aquí. Utiliza el paquete requests para llegar a la API PYPI REST pública, analiza el JSON y lo muestra. También hay alguna manipulación básica de archivos para modificar los archivos de requisitos. Vergonzosamente simple.
pip install whatsonpypi
Encuentre información sobre un paquete en Pypi
Ejemplos:
$ whatsonpypi django NAME Django LATEST VERSION 2.1.5 SUMMARY A high-level Python Web framework that encourages rapid development and clean, pragmatic design. PACKAGE URL https://pypi.org/project/Django/ AUTHOR Django Software Foundation LATEST RELEASES 2.2a1, 2.1rc1, 2.1b1, 2.1a1, 2.1.5
Para más información.
Ejemplos:
$ whatsonpypi django --more ...
Información específica de la versión ..
Ejemplos:
$ whatsonpypi django==2.1.4 --more ...
Iniciar URL de PYPI del proyecto en una pestaña del navegador
Ejemplos:
$ whatsonpypi django --open
URL de documentación de lanzamiento del proyecto en una pestaña del navegador
Ejemplos:
$ whatsonpypi django --docs
Agregue paquetes a sus archivos de requisitos.
Ejemplos:
$ whatsonpypi django --addDe manera predeterminada, busca archivos con
requirements*.txten el directorio de trabajo actual y agrega la dependencia al final del archivo.Puede cambiar el patrón de nombre de archivo para buscar. El patrón puede contener comodines de estilo sencillo.
$ whatsonpypi django --add --req-pattern " *.txt "Si hay más de un archivo , verá un aviso que le permite seleccionar los archivos que deben modificarse.
Si desea que se agregue la dependencia a una línea específica, mencione un comentario
#woppen su propia línea, que será reemplazada por la dependencia:Ejemplo:
Haga esto en sus requisitos.txt:
# Django django==2.1.5 # testing pytest==4.1.1 # woppLuego ejecutando esto:
$ whatsonpypi pytest-runner --addproducirá esto:
# Django django==2.1.5 # testing pytest==4.1.1 pytest-runner==4.2Utilice las especificaciones de requisitos según sea necesario.
==,>=,<=o~=usando--ee,--ge,--leo--te. El valor predeterminado es--ee:$ whatsonpypi pytest-runner --add --geproducirá esto:
# Django django==2.1.5 # testing pytest==4.1.1 pytest-runner>=4.2Las dependencias existentes serán reemplazadas por versiones más nuevas. La versión de dependencia de forma predeterminada es la última a menos que se especifique explícitamente como:
$ whatsonpypi pytest-runner==4.1 --addTenga en cuenta que puede tener que citre doble para evitar que la bash lo analice.
$ whatsonpypi " pytest-runner>=4.1 " --addOpcionalmente, el directorio para buscar archivos de requisitos se puede especificar con
--req-dir. Se permiten caminos absolutos y relativos. Debe ser un directorio.$ whatsonpypi pytest-runner==4.1 --add --req-dir /Users/Me/Documents/GitHub/project/requirementsEl valor predeterminado (si no se proporciona) es el directorio donde se ejecuta el comando (CWD).
Además, opcionalmente, puede especificar comentarios para agregar antes de una dependencia. Tenga en cuenta que el comentario no se agregará si la dependencia ya existe en el archivo.
Por ejemplo, ejecutando esto:
$ whatsonpypi pytest-runner --add --comment ' testing 'Agregará esto:
# testing pytest-runner==4.2
$ whatsonpypi --help
Usage: whatsonpypi [OPTIONS] PACKAGE
CLI tool to get package info from PyPI and/or manipulate requirements.
Example usages:
$ whatsonpypi django
Options:
-v, --version Show the version and exit.
-m, --more Flag to enable expanded output [required]
-d, --docs Flag to open docs or homepage of project
-o, --open Flag to open PyPI page
-a, --add Flag to enable adding of dependencies to requirement
files. By default, it searches for files with names
matching requirements*.txt in the current working
directory and adds the dependency to the end of the
file. If you want the dependency to be added to a
specific line, mention the comment '#wopp' on its own
line which will be replaced with the dependency.
Existing dependencies will be replaced with newer
versions. Dependency version by default is the latest
unless specified explicitly with 'whatsonpypi
package==version'. Directory to search for
requirement files can be specified with --req-dir
-r, --req-dir DIRECTORY Directory to search for requirement files. Only used
when --add is used. [default: .]
-p, --req-pattern TEXT Filename pattern for searching requirements files.
[default: requirements*.txt; required]
-c, --comment TEXT Comment to be added for the dependency when using
--add.
--ee use == when adding to requirements.
--le use <= when adding to requirements.
--ge use >= when adding to requirements.
--te use ~= when adding to requirements.
-h, --help Show this message and exit.