Skip to content

Symfony 8 compatibility: the XML service configuration format is no longer supported #55

Description

Summary

gally/sylius-plugin loads its whole service graph from XML through Symfony\Component\DependencyInjection\Loader\XmlFileLoader. That format is deprecated since Symfony 7.4 and removed in Symfony 8.0, so the connector cannot boot on Symfony 8 as-is. Converting the 8 DI files to PHP (or YAML) is the only change needed on the connector side — nothing else in the plugin looks Symfony-8-blocking.

Checked against v2.3.0 (also true of v2.2.1).

Minor, but they belong in the same pass:

  • extra.symfony.require is still ^5.4 || ^6.0 while the plugin requires sylius/sylius: ^2.0 (Symfony 6.4/7.x). Stale, and it will silently pick the wrong recipe versions.
  • Dev dependencies pin ^6.4 || ^7.1 for symfony/browser-kit, debug-bundle, dotenv, intl, web-profiler-bundle, so the plugin's own test application can't be built on Symfony 8 even once the loader is fixed.
  • For reference, sylius/grid-bundle already declares ^6.4 || ^7.2 || ^8.0 on every Symfony component it uses, so that dependency is not what holds this back.

Reproduction

  1. Install the plugin on a Sylius 2.3 application.
  2. Force Symfony 8
  3. bin/console cache:clear → container compilation fails on the XML loader.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions