Fichier pyproject.toml pour Python
Le fichierpyproject.toml est une manière moderne de spécifier dans un seul fichier l’ensemble des prérequis du système de build et des dépendances de votre projet. Ce guide montre comment créer, configurer et utiliser pyproject.toml pour garantir la cohérence entre les environnements de développement et de production.
Qu’est-ce qu’un fichier pyproject.toml ?
Un fichierpyproject.toml liste les dépendances, le système de build et d’autres métadonnées de votre projet Python. Cela permet :
- À vous et à votre équipe de maintenir des environnements identiques
- Aux nouveaux collaborateurs de reproduire l’environnement à l’identique
- De configurer séparément les dépendances de développement et de production
Créer le fichier pyproject.toml
Commencez par créer un fichier nommé
pyproject.toml à la racine de votre projet.Définir les détails de votre projet
Dans le fichier
Le nom du projet doit être composé de lettres ASCII, de chiffres, de traits de soulignement « _ », de traits d’union « - » et de points « . ». Il ne doit pas commencer ni se terminer par un trait de soulignement, un trait d’union ou un point. Par exemple :
pyproject.toml, commencez par définir les métadonnées de votre projet. Nous allons définir le nom du projet, la version, la description et d’autres informations pertinentes.Le nom du projet doit être composé de lettres ASCII, de chiffres, de traits de soulignement « _ », de traits d’union « - » et de points « . ». Il ne doit pas commencer ni se terminer par un trait de soulignement, un trait d’union ou un point. Par exemple :
pyproject.toml
Lister les dépendances du projet
Ensuite, nous allons lister les dépendances requises pour notre projet. Nous pouvons spécifier à la fois les dépendances de développement et de production. Les dépendances de production sont listées sous la section
Vous pouvez spécifier des versions pour vos dépendances à l’aide d’opérateurs de comparaison comme
dependencies, tandis que les dépendances de développement peuvent être listées sous optional-dependencies avec un nom de groupe spécifique (par exemple, dev).Vous pouvez spécifier des versions pour vos dépendances à l’aide d’opérateurs de comparaison comme
==, >=, <… Dans l’exemple ci-dessous, nous ne spécifions pas de versions. Cela signifie que la dernière sera installée.
Il est recommandé de spécifier des versions exactes pour garantir la reproductibilité et éviter les ruptures dues à des mises à jour incompatibles en production.pyproject.toml
Configurer le système de build
Enfin, nous devons spécifier les prérequis du système de build. Cela est nécessaire pour que des outils comme pip sachent comment construire et installer votre projet. Nous utiliserons
setuptools comme backend de build, un choix courant pour les projets Python, mais vous pouvez en choisir d’autres comme poetry.pyproject.toml
Installer les dépendances avec pip
Pour installer les dépendances listées dans votre fichierpyproject.toml, vous pouvez utiliser pip ou d’autres outils prenant en charge pyproject.toml. Cela vous permet de travailler sur votre projet tout en ayant les dépendances installées.
pyproject.toml, installera les dépendances listées sous dependencies et configurera votre projet pour le développement. Si vous souhaitez également installer les dépendances de développement, vous pouvez utiliser :
Bonnes pratiques et conseils :
- Restez à jour : Révisez et mettez à jour
pyproject.tomlrégulièrement à mesure que vous ajoutez de nouvelles dépendances - Utilisez des versions exactes : Utilisez toujours
==au lieu de>,>=ou aucune version pour éviter les surprises en production - Gestion de versions : Committez
pyproject.tomldans git pour suivre les changements de dépendances et les mises à jour de version - Environnement isolé : Maintenez un environnement virtuel par projet pour éviter les conflits globaux
- Testez localement : Avant de déployer, testez le fichier avec
pip install .dans un nouvel environnement
Prochaines étapes
Une fois votre fichierpyproject.toml configuré :
- Committez-le dans votre dépôt Git.
- Hébergez votre projet sur Square Cloud.
- Configurez le deploy automatique via GitHub.
- Bienvenue dans l’hébergement professionnel d’applications Python !
pyproject.toml bien structuré est la base de toute application Python réussie, garantissant que votre application fonctionne parfaitement sur Square Cloud.
