🇫🇷 Français | 🇬🇧 English
Mettre à jour les dépendances :
composer update --ignore-platform-reqsLe fichier phpstan.neon à la racine du projet contient la configuration suivante :
parameters:
level: 1
paths:
- core
- desktop
- install
- mobile
excludePaths:
- vendor/*
tmpDir: .phpstan.cache
baseline: phpstan-baseline.neon
reportUnmatchedIgnoredErrors: false
includes:
- phpstan-baseline.neonNotes importantes :
- Niveau d'analyse : 1 / 10 (0 = minimum, 10 = maximum)
- Le baseline permet d'ignorer les erreurs existantes
- Les erreurs corrigées sont automatiquement retirées des erreurs détectées
vendor/bin/phpstan analyse --configuration phpstan.neon- Variable might not be defined :
// Erreur
function maFonction() {
if($condition) {
$variable = 'valeur';
}
echo $variable; // Erreur : variable non définie si condition fausse
}
// Solution
function maFonction() {
$variable = null; // Initialisation par défaut
if($condition) {
$variable = 'valeur';
}
echo $variable;
}- Method X not found in class Y :
// Erreur
$object->methodQuiNexistePas();
// Solution
// Vérifier si la méthode existe dans la classe
// Ou utiliser une interface/classe abstraite pour définir le contrat- Cannot call method X on mixed :
// Erreur
$result = getData(); // getData() retourne mixed
$result->method(); // Erreur : impossible d'appeler une méthode sur mixed
// Solution
if (is_object($result)) {
$result->method();
}Si une erreur ne peut pas être corrigée ou doit être ignorée, ajoutez un commentaire PHPStan :
/** @phpstan-ignore-next-line */
$resultat = codeProblematiqueQuiNeDoitPasEtreModifie();Si de nombreuses erreurs existantes doivent être ignorées :
vendor/bin/phpstan analyse --configuration phpstan.neon --generate-baselineLe workflow GitHub Actions vérifie automatiquement le code à chaque push et pull request sur la branche alpha. En cas d'échec :
- Consultez les logs de l'action pour voir les erreurs
- Reproduisez l'analyse en local
- Corrigez les erreurs ou mettez à jour le baseline si nécessaire
Un processus automatique a été mis en place pour maintenir le baseline à jour :
- Après chaque merge sur alpha, le système vérifie si des erreurs du baseline peuvent être supprimées
- Si des erreurs ont été corrigées et peuvent être retirées du baseline :
- Une nouvelle branche
update-phpstan-baselineest créée - Une Pull Request est automatiquement ouverte
- La PR contient uniquement la mise à jour du fichier
phpstan-baseline.neon
- Une nouvelle branche
- Cette PR peut être revue et mergée comme toute autre PR
👉 Note : Il n'est pas nécessaire de mettre à jour le baseline manuellement, le système automatique s'en charge lorsque des erreurs sont corrigées.
- Exécutez PHPStan localement avant de commiter
- Corrigez les erreurs plutôt que de les ignorer quand c'est possible
- Pour les nouvelles classes/méthodes, essayez de ne pas générer de nouvelles erreurs
- Commentez le code clairement quand vous devez ignorer une erreur
- Laissez le système automatique gérer la mise à jour du baseline
- Revoyez les PRs de mise à jour du baseline pour vérifier que les erreurs retirées ont bien été corrigées intentionnellement
Besoin d'aide supplémentaire ? Consultez la documentation officielle de PHPStan.