Config format and Symfony: let's talk about DX
Présentation par Nicolas Grekas sur l'amélioration de la Developer Experience des formats de configuration Symfony à l'API Platform Conference 2025

Cette sketchnote a été réalisée lors de l'API Platform Conference 2025. Elle illustre la présentation "Config format and Symfony: let's talk about DX" donnée par Nicolas Grekas, core contributor Symfony, qui propose des améliorations significatives de l'expérience développeur pour la configuration Symfony.
Contenu de la présentation
La présentation s'ouvre sur une citation de Ryan Weaver : "Be aggressive, focus on beginner", établissant le principe directeur d'une DX optimale pour les débutants. Le problème identifié : Symfony offre 3 choix de formats de configuration (YAML, PHP, XML), créant de la confusion, notamment avec le format XML encore présent. L'objectif : réduire les choix pour simplifier l'expérience.
Nicolas Grekas détaille trois cibles d'amélioration :
Remove XML dependency : éliminer progressivement la dépendance au XML via une analyse automatique. Le processus inclut :
- Self analysis des composants et features
- Process all : traiter tous les fichiers de configuration
- Find the latest mandatory XML config file : identifier et migrer les derniers fichiers XML obligatoires
Improve YAML : améliorer le format YAML en ajoutant un JSON Schema pour la validation et la complétion automatique, applicable à la fois aux fichiers YAML Symfony et aux bundles. Cette validation permet de détecter les erreurs avant l'exécution.
Improve PHP : optimiser la configuration PHP avec la génération d'array shapes, permettant aux IDEs de fournir une meilleure analyse statique et auto-complétion.
Le but final est d'offrir :
- Auto completion : suggestions intelligentes dans l'IDE
- Static analysis : détection d'erreurs avant exécution
- Symbol referencing : navigation dans la configuration
- Automated patching : corrections automatiques
- Compile time only : validation à la compilation, illustré par un robot symbolisant l'automatisation