Journal UV un énième packageur python

Posté par  . Licence CC By‑SA.
Étiquettes :
10
23
déc.
2024

On se moque facilement des projets js qui vont et qui viennent mais python n’est pas en reste avec ses toolchains. Pour moi qui n’utilise pas beaucoup python, je dois perpétuellement me référer à la série d’articles pour vérifier quel outil est la “bonne” façon de faire (ou en tout cas pas trop désuète) et comment l’appeler (parce que python -m pip install requests ne me vient pas du premier coup).

Et l’autre jour on m’a dit qu’il y avait un outil qui a l’air super : uv. Encore un nouveau, super. Il lave plus blanc que blanc, il rend le poil brillant, il fait revenir l’être aimé,… ? Bien sûr et pour cocher toutes les cases il est écrit en rust.

Bon il s’avère que j’étais sur un petit outil en python donc essayons la doc d’installation :

curl -LsSf https://astral.sh/uv/install.sh | sh

(Quand je vais leur raconter ça sur linuxfr, faudra que ce soit un vendredi.)

Et l’usage ?

  • créer un projet ? uv init dossier
  • ajouter une dépendance ? uv add ma-super-bibliothèque
  • lancer mon projet ? uv run mon-script.py

Ok c’est rapide ça utilise un environnement virtuel, ça m’a créé quelques fichiers

  • pyproject.toml
  • uv.lock
  • .env/
  • .python-version

Ouai je vois bien à quoi sert chaque fichier.

Au final pour mon usage simple ça fait le job très bien. Je ne sais pas s’il peut servir à créer des wheel comme il faut etc, mais pour ce que je fais de python il a l’air simple et efficace. Il installe les dépendances plus vite que pip et les commandes sont simples à mémoriser.

  • # Série d'articles

    Posté par  (Mastodon) . Évalué à 6 (+3/-0).

    je dois perpétuellement me référer à la série d’articles

    Tu parles de cette série d'articles ? J'attends la troisième partie avec tellement d'impatience, j'ai un projet en suspend depuis des mois parce que je me dis que cette partie va sans doute m'apprendre ce qu'il faut pour le faire correctement.

    • [^] # Re: Série d'articles

      Posté par  . Évalué à 2 (+0/-0).

      Oui j'ai oublié d'ajouter le lien après la rédaction et j'ai toujours du mal à la retrouver.

      https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • # Rust ?

    Posté par  (Mastodon) . Évalué à 8 (+5/-0).

    Bien sûr et pour cocher toutes les cases il est écrit en rust.

    Comme ça, plutôt que de devoir installer une toolchain, il faut en installer deux !

    • [^] # Re: Rust ?

      Posté par  . Évalué à 3 (+1/-0).

      Pour le coup non puisque je ne le compile pas moi-même j'ai décidé il y a bien longtemps de faire confiance à mon gestionnaire de paquet. Ça demande d'installer quelque chose plutôt que d'utiliser ce qui est dans une installation de python vanilla (ou en tout cas ce qui est sur ma machine), mais je trouve que le confort de l'usage en vaut la peine.

      https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • # Par les auteurs de ruff

    Posté par  . Évalué à 1 (+0/-0).

    Uv m'a l'air intéressant, j'ai bien envie de l'utiliser "pour de vrai" dans le futur.

    uv est développé par Astral, la boîte qui est derrière ruff, un linter/formateur pour python. Et comme ruff fonctionne vachement bien (et vite), j'ai un a priori positif sur uv.

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.