Ce qui se passe
Astral publie une intégration expérimentale entre uv (gestionnaire de
paquets et d'environnements) et ty (vérificateur de types et serveur de
langage). Principe : uv connaît l'environnement et les dépendances, ty connaît le
code ; ensemble, ty vérifie le code contre l'environnement réel plutôt que de
le deviner. Deux nouveautés pratiques.
Les scripts PEP 723
La norme PEP 723 permet à un script de déclarer ses dépendances en en-tête :
# /// script
# requires-python = ">=3.12"
# dependencies = ["requests"]
# ///uv s'en servait déjà pour exécuter le script. ty lit maintenant ces métadonnées, aussi bien en ligne de commande que dans l'éditeur : il découvre les scripts du projet, demande à uv de préparer un environnement pour chacun, et vérifie chaque script contre ses propres exigences, même si elles diffèrent de celles du projet. Dans l'éditeur, complétion, survol et « aller à la définition » suivent les dépendances déclarées.
Comme installer des dépendances peut exécuter du code tiers, la préparation automatique est optionnelle. Dans VS Code, avec l'extension ty :
{
"ty.experimental.useUv": "on"
}En ligne de commande :
TY_UV=scripts ty checkuv check
uv check est un point d'entrée unique de diagnostic, qui démarre avec ty :
il prépare l'environnement du projet, installe les dépendances, puis vérifie le
code. Astral prévoit d'y ajouter Ruff pour réunir lint et typage.
uv check
uv check --package <nom>
uv check --all-packages
uv check --script exemple.pyDans un workspace, --package cible un paquet et --all-packages les vérifie
tous. La commande utilise la version de ty enregistrée dans le lockfile :
poste et CI partagent la même version sans épingle à maintenir à part. Le hook
pre-commit de ty passe aussi par uv check. Si vous ne lancez jamais la
commande, rien ne change pour uv ; le binaire ty est installé à part, à la
première utilisation.
Ce qui est prévu et ce qui manque
L'intégration repose sur uv workspace metadata, une vue structurée des
paquets, dépendances et interpréteur. À terme, Astral veut activer les scripts
par défaut et préparer automatiquement l'environnement des projets standards. Il
travaille aussi à détecter les dépendances inutilisées, en croisant ce que uv
sait des dépendances et ce que ty comprend du code. Limite : c'est une
préversion, et ty n'a pas encore de version stable.
Comment s'y prendre
- Installer uv 0.12.3 ou plus et ty 0.0.76 ou plus.
- Essayer
uv checksur un projet ; la commande active l'intégration sans réglage. - Pour les scripts, activer
ty.experimental.useUvdans l'éditeur ou lancerTY_UV=scripts ty check.
Source : Astral, 24 octobre 2026. Source en anglais.