Outils
Mago est un seul binaire qui regroupe quatre outils. Ils partagent la configuration, le parseur et le runtime, vous pouvez donc utiliser n'importe quelle combinaison sans payer pour les outils que vous n'exécutez pas.
Formateur
Un formateur de code déterministe. Il produit une sortie stable et conventionnelle qui suit PER-CS par défaut et prend en charge des préréglages pour les styles PSR-12, Laravel et Drupal. Pas de roulette de configuration, pas de débat.
Linter
Un catalogue organisé de règles couvrant la correction, la cohérence, la clarté, la redondance, la sûreté, la sécurité et quelques autres préoccupations. La plupart des problèmes sont accompagnés d'une correction automatique. Les intégrations de frameworks ajoutent des règles spécifiques à Symfony, Laravel, PHPUnit, Doctrine et d'autres.
Analyseur
Un moteur d'analyse statique qui détecte les erreurs de types et les bugs logiques avant l'exécution. Compatible avec les annotations Psalm et PHPStan, avec prise en charge des génériques, des types conditionnels et du raffinement de flux.
Guard architectural
Applique les règles de dépendance et les conventions structurelles. Utile lorsque vous voulez interdire certains chemins use, codifier les frontières entre couches ou affirmer que le code d'une partie du projet n'importe jamais le code d'une autre.