- Can I use openclassrooms/doctrine-cache-extension-bundle in a Laravel application?
- No. This is a Symfony2 bundle built on the pre-Flex bundle pattern, with a Bundle class, a DependencyInjection extension, a compiler pass, and registration in app/AppKernel.php. Laravel uses its own service container and cache abstraction, so there is no service provider, facade, or config bridge for it. Laravel developers should use Laravel's cache stores or a PSR-6/PSR-16 package instead.
- What does openclassrooms/doctrine-cache-extension-bundle actually do?
- The overview says it extends Doctrine Cache capabilities and wires cache providers and related services into Symfony. It does not specify whether it adds named cache regions, key namespacing, invalidation hooks, warmers, or a particular adapter. You have to read the source and the compiler pass to know the exact behavior, and those options have very different risk profiles.
- Which PHP, Symfony, and Doctrine versions does this bundle support?
- The realistic floor is roughly PHP 5.5 through 7.1, Symfony ^2.7, doctrine/doctrine-bundle ^1.6, and doctrine/cache ^1.5. The composer.json require and suggest blocks are the go/no-go artifact, so read them before planning anything. It is designed for a Symfony 2.7/2.8 application whose kernel is AppKernel and whose bundles are registered manually.
- Does this bundle work on PHP 8.1 or Symfony 6?
- Almost certainly not. doctrine/cache 2.0 removed the concrete adapters this bundle extends, and Symfony's DI component has changed several method signatures and deprecation boundaries since 2.8. Composer resolution will likely fail on a modern PHP 8.1+ / Symfony 6+ matrix. It is also not compatible with Symfony Flex recipes, autowiring-first service definitions, or the symfony/cache component.
- How do I install and register doctrine-cache-extension-bundle in a Symfony 2 app?
- Install it with Composer, then register the bundle class in app/AppKernel.php and add its configuration under app/config/ in YAML. There is no Flex recipe and no automatic bundle discovery. This only applies to a legacy Symfony 2 application that already treats Doctrine Cache as its caching abstraction.
- Is doctrine/cache 1.x abandoned, and what replaces it?
- Yes, doctrine/cache 1.x is formally abandoned, with symfony/cache named as the replacement. Pulling this bundle transitively pins that unmaintained tree along with Symfony 2.8, which lost security support in November 2018. Modern applications should use PSR-6 cache pools such as cache.app, cache.adapter.redis, or framework.cache.pools instead.
- Is this bundle safe to use in production?
- The risk is concentrated in supply chain rather than code quality. Symfony 2.8 is end-of-life, doctrine/cache 1.x is abandoned, and the bundle shows no stars, no dependents, and no stated release history or CI. There is no evidence of recent production use, CVE watching, or issue triage. Do not introduce it into a modern application.
- What alternatives should Laravel or Symfony developers use instead?
- Laravel developers should use the framework's cache facade and stores, such as Redis or Memcached drivers, or a PSR-6 package if an interface is required. Symfony developers should use symfony/cache with cache.app, cache.adapter.* services, or namespaced pools configured through framework.cache.pools. For ORM query caching, use doctrine/orm's second-level cache configuration rather than a separate bundle.
- Can I fork or vendor this bundle if I must keep its behavior?
- Verify the license in the repository first, since it is not confirmed in the provided materials and determines whether vendoring or forking is permitted. If you must keep the behavior, vendor the bundle into src/ or a private Satis or Composer path repository at a pinned commit. Then schedule extraction of its behavior into an app-local service so a future Symfony upgrade is not blocked by it.
- How should I evaluate this package before adopting it?
- Start with composer.json, then clone the repository and run composer why-not against your target Symfony and PHP constraints in a throwaway container. Check the license, tests, CI configuration, and whether an actively maintained fork exists at OpenClassrooms. If the host application is on Symfony 3.4 or newer, treat the answer as a hard no and reimplement the behavior against symfony/cache.