- Is sylius-labs/sylius-1-11-shim-bundle a Laravel package?
- No. It is a Symfony bundle built for Sylius, the Symfony-based e-commerce platform, and it has zero applicability to a Laravel codebase. If it entered your backlog through a Laravel or generic PHP package sweep, re-triage it as Sylius-only.
- How do I install Sylius111ShimBundle in a Sylius application?
- Install it with Composer and register the bundle in config/bundles.php; some setups may also need a small YAML block. Before installing, confirm the package's PHP, Symfony, and Sylius constraints against your pinned versions. Treat the install as a time-boxed bridge rather than a permanent dependency.
- What functionality does the Sylius 1.11 shim bundle add to Sylius 1.12 and above?
- It adds missing functionality from Sylius 1.11 to Sylius 1.12 and above through transitional aliases and compatibility layers. In practice a shim like this can re-register services, restore removed classes or aliases, and override upstream services so 1.11-era call sites still resolve. Build a symbol inventory from the source rather than relying on the README.
- Which Sylius and Symfony versions are compatible with this shim bundle?
- The package is intended for Sylius 1.12 and above applications that need 1.11-era behavior, but the exact PHP, Symfony, and Sylius ranges live in its composer.json. The project has a single release from November 2022, so those constraints may not cover current Sylius 1.13 or Symfony 6.4 stacks. Check constraints first because a hard conflict ends the evaluation quickly.
- Does the shim decorate services or only provide class aliases?
- It works at the container and service-graph layer, so it may re-register services, restore aliases, and decorate or override upstream services. Aliasing is relatively benign, while decoration is the risky pattern because it binds you to Sylius internals. Inspect the source to determine which services are decorated and in what order.
- Is Sylius111ShimBundle safe to use in production?
- It is mechanically easy to install, but it is fragile by design because it depends on Sylius internals that upstream does not guarantee for backward compatibility. The package has no evident maintainer activity since its November 2022 release, so assume you own any PHP 8.3 or Sylius patch-level breakage. Use it only as a time-boxed bridge, fork and vendor it, and pin it to a specific commit.
- Can this bundle help me upgrade from Sylius 1.11 to 1.12 or 1.13?
- Yes, that is its stated purpose: it restores missing 1.11 functionality in 1.12 and above so older extensions and custom code can keep resolving. However, the shim postpones upgrade work rather than removing it and adds a second removal project later. Set a written expiry date and a plan to upgrade plugins, upstream a fix, or reimplement the behavior in-house.
- What are the risks of service decoration collisions with other Sylius plugins?
- If another plugin decorates the same upstream service, decoration ordering determines whether you get double-applied logic such as duplicate adjustments or double-counted totals, or a container compile failure. The shim deliberately touches services that Sylius treats as private implementation details. Audit every third-party plugin that was written against Sylius 1.11 and verify decoration priorities before enabling it.
- How should I test a Sylius compatibility shim in my application?
- Start with a container compile and service resolution test, then exercise the 1.11-era call sites and workflows that the shim is meant to restore. Add integration tests with the third-party Sylius plugins that motivated the shim, including checks for duplicate adjustments or totals. Also test against the exact Sylius and Symfony patch versions you pin in production.
- Is there a maintained alternative to the Sylius 1.11 shim bundle?
- Usually the better answer is an upstream fix or a newer release of the third-party Sylius plugin that removed the need for 1.11 behavior. If no fix exists, reimplement the missing behavior as a first-party plugin you own behind an anti-corruption layer. Forking and vendoring this shim is a last resort, and it should carry a short expiry date.