- El rendimiento o la compatibilidad con Python no son lo que diferencia a uv. uv cumple con los PEPs y es recomendable como gestor de paquetes de Python. Pero su función más sorprendente está en otra parte.
- Al hacer scripting ad-hoc en Python 3.12, a menudo hace falta agregar dependencias como Pandas. La forma habitual es la siguiente:
- ejecutar
pip install pandas para modificar el entorno global, o
- crear un entorno virtual, ejecutar
pip install pandas, activar el entorno virtual y luego ejecutar Python.
- Si se necesita otra versión de Python, hay que usar
pyenv para instalar la versión y configurarla localmente. En el peor de los casos:
pyenv install 3.12
pyenv local 3.12
python -m venv .venv
source .venv/bin/activate
pip install pandas
python
- Con uv, todo eso se puede hacer con una sola línea de comando:
uv run --python 3.12 --with pandas python
- Es fácil de recordar y no deja rastros. ¡Feliz scripting!
5 comentarios
Todavía uso poetry, pero ya va siendo hora de irme cambiando poco a poco. Supongo que también será el adiós a virtualenv wrapper.
Parece que de verdad ya va siendo hora de dejar
pip.Salvo que al hacer
inittrae pegadas un montón de cosas innecesarias cada vez, en todo lo demás estoy satisfecho y lo uso muy bien.La función decisiva de Uv es facilitar la creación de entornos instantáneos (
ad-hoc)Opiniones de Hacker News
A alguien le gusta mucho el gestor de paquetes
uvy le gustaría que se convirtiera en el estándar de la comunidad. En especial, es una herramienta recomendable para usuarios nuevos.uvsoporta dependencias inline de scripts de PEP 723, lo que permite un uso más limpio.Como desarrollador de NodeJS, a alguien le sorprende que el problema de configuración de entornos en Python siga sin resolverse. Node tampoco es perfecto, pero no hay preocupación por modificar el entorno global.
No es necesario activar
virtualenv, y se puede crear un entorno virtual directamente sin configurar el intérprete conpyenv.Hay quien opina que es incómodo que
uvagrupe varias funciones en una sola herramienta para ejecutar una única tarea. Activar unvenvy poder ejecutar un programa varias veces resulta conveniente.uvincluye el comandouvx, con el que se pueden ejecutar scripts de Python sin instalación manual.uvx --from 'huggingface_hub[cli]' huggingface-cliA alguien le gusta
uvy quiere probarlo pronto, pero dice que no entiende el punto principal del artículo. Conpyenvypoetrytambién se pueden traer dependencias locales.Si hay otras dependencias binarias, usar Nix y
virtualenv+pip-toolspodría ser una mejor opción.Hay quien opina que primero se debe activar el entorno virtual en la "ruta correcta" y luego instalar
pandas.