Industrialiser un projet Python

Un script qui marche sur votre machine, c'est un début. Un projet que toute l'équipe peut installer, vérifier, tester et livrer en une commande, c'est autre chose. On met en place l'outillage moderne brique par brique, et on apprend une méthode pour débugger sans deviner.

Durée : 2 jours · Niveau : intermédiaire

Pour qui : les développeurs et équipes Python dont les projets ont grandi plus vite que l'outillage.

Prérequis : écrire du Python régulièrement.

Industrialising a Python project

Jour 1 — Un projet qui tient debout

  • Installer Python et ses projets avec uv
  • Décrire le projet dans pyproject.toml
  • Dépendances, groupes et fichier lock
  • Organiser le code : layout src, packages, points d'entrée
  • Confectionner une API publique
  • Formatter et linter le code avec ruff
  • Les annotations de type, vérifiées par mypy
  • Normaliser ses commandes avec poethepoet ou just
  • Des logs plutôt que des print

Jour 2 — Tester, vérifier, livrer

  • Les tests avec pytest
  • Mesurer la couverture
  • Les hooks pre-commit
  • L'intégration continue : GitHub Actions ou GitLab CI
  • Construire et publier un package
  • Documenter le projet
  • Une méthode de debug : lire la stack trace par le bas
  • breakpoint(), pdb et ipdb
  • python -X dev et rich.traceback

Passez au niveau supérieur en Python !