> Les bases > Démarrage > UV
UV
UV fournit les fonctionnalités de pip et virtualenv.
Principales commandes :
- uv init myProject : crée un directory myProject avec un fichier pyproject.toml, un directory .git. Il faut alors aller dans ce directory pour rajouter des packages, car uv regarde l'existence de pyproject.toml
- on peut aussi créer myProject, aller dedans et faire uv init
- pyproject.toml indique les requirements des packages tandis que uv.loc indique les versions exactes des packages
- uv add --help ou uv add -h : l'aide sur uv add.
- uv add pandas : rajoute le package pandas et ses dépendances. pyproject.toml est modifié.
- uv add pandas==3.0.6 : rajoute une version bien précise du package pandas.
- uv remove pandas : enlève un package (ainsi que dépendances inutiles)
- uv pip show pandas : infos sur un package.
- uv pip list : affiche les packages installés
- uv tree : affiche l'arbre des dépendances entre packages.
- uv run script.py : lance un script en vérifiant que l'environnement est bien à jour par rapport au fichier uv.lock (en faisant un lock et un sync)
- uv lock --upgrade : upgrade tous les packages qui peuvent l'être.
- uv lock --upgrade-package pandas : upgrade un seul package
- uv add --dev pytest : rajoute un package, mais comme package seulement pour le dev.
- uv export --no-dev --no-emit-project -o ~/requirements.txt : crée un fichier de requirements pour installer les mêmes packages dans un autre projet (sans les packages de dev et dans le projet lui-même)
- uv add -r requirements.txt : installe tous les packages présents dans requirements.txt (permet de transférer une config).
- uv sync : installe les versions indiquées dans uv.lock. Typiquement, après avoir fait un git pull, uv sync met à jour le repository local par rapport au pyproject.toml et uv.lock récupéré du git pull
- uv lock : met à jour le fichier uv.lock par rapport aux versions installées.
- uv lock -check : vérifie si uv.lock est bien à jour.
Copyright python-simple.com

programmer en python, tutoriel python, graphes en python, Aymeric Duclert