Sylius8 min

Sylius Upgrade Analyzer : Automatisez l'Audit de Migration

Par Pierre-Arthur Demengel
SyliusCLIOpen SourceDevToolsPHP

Auditer manuellement un projet Sylius pour estimer sa migration vers 2.x prenait des jours de travail et produisait des spreadsheets incomplets. J'ai donc construit un outil CLI qui automatise ce diagnostic en quelques secondes.

Le problème

La fin du support de Sylius 1.x approche. Chaque projet doit migrer vers la 2.x, mais l'ampleur des changements rend l'estimation complexe : templates, state machines, mailer, plugins, API Platform... Un audit manuel d'un projet moyen prend 2-3 jours et reste incomplet.

La solution : Sylius Upgrade Analyzer

Un outil CLI open-source qui scanne votre codebase Sylius 1.x et génère un diagnostic complet de migration.

Installation

composer require --dev pierre-arthur/sylius-upgrade-analyzer
vendor/bin/sylius-upgrade-analyzer sylius-upgrade:analyze

Prerequis

  • PHP 8.2+
  • Symfony 6.4 ou 7.2
  • Projet Sylius 1.x

49 analyseurs organises en 5 familles

1. Templates & Frontend

  • Detection des templates Sylius overrides pour migration Twig Hooks
  • Detection des classes CSS Semantic UI
  • Identification de jQuery et JS legacy

2. Deprecations & Breaking Changes

  • Conversion winzou vers Symfony Workflow
  • Migration SwiftMailer vers symfony/mailer
  • 150+ classes supprimees, services renommes, routes supprimees
  • Restructuration des passerelles de paiement
  • Migrations de formats de configuration

3. Plugins

  • Cross-référence avec le Sylius Addons Marketplace
  • Intégration Packagist pour vérification des versions

4. Grid & Resource

  • Modifications custom des grids YAML/PHP
  • Suivi de l'evolution de la syntaxe des filtres

5. API Platform

  • Mises a jour des namespaces
  • Changements de prefixes des groupes de serialisation
  • Restructuration des endpoints

Classification des problèmes

  • BREAKING : Incompatibilites critiques bloquantes
  • WARNING : Changements probablement problematiques
  • SUGGESTION : Ameliorations recommandees

Chaque issue inclut une estimation en heures et un lien vers la documentation.

Auto-fix : 41 correcteurs integres

Les fixers appliquent automatiquement les corrections courantes avec des niveaux de confiance :

  • HIGH : Application automatique sans risque (renommage service ID, migrations de config)
  • MEDIUM : Probablement correct mais a vérifier (conversion workflow)
# Dry-run pour voir les changements
vendor/bin/sylius-upgrade-analyzer sylius-upgrade:analyze --fix --dry-run

# Appliquer les corrections
vendor/bin/sylius-upgrade-analyzer sylius-upgrade:analyze --fix

6 formats de sortie

  1. Console (defaut, jauge ASCII coloree)
  2. JSON (intégration CI/CD)
  3. CSV (compatible Excel)
  4. SARIF (GitHub Code Scanning)
  5. Markdown (documentation PR)
  6. PDF (rapports professionnels via service web)

Intégration GitHub Actions

- uses: pierrearthurdemengel/sylius-upgrade-analyzer@v1
  with:
    project-path: '.'
    target-version: '2.2'
    fail-on-breaking: 'true'

Fonctionnalites avancees

  • Regles custom via .sylius-upgrade-rules.yaml
  • Gestion de baseline pour comparer les résultats entre scans
  • Sprint planning avec configuration de velocite
  • Analyse multi-projets pour les agences
  • Notifications webhook

Liens

13 projets livresGrand-Est & BelgiqueLighthouse >90Disponible immédiatement

Un projet en tete ?

Discutons de votre site web. Réponse garantie sous 24h.

Ou appelez directement :06 95 41 30 25

WhatsApp
Appeler