- Is megogo/multiple-inheritance-bundle a Laravel package?
- No. megogo/multiple-inheritance-bundle is a Symfony 2 bundle, and Laravel has no bundle inheritance model. Laravel's composition primitives are service providers, config, route, and view merging, and Composer autoloading, so there is no architectural slot for this package.
- Can I install megogo/multiple-inheritance-bundle in a Laravel app with Composer?
- You can run composer require, but nothing in Laravel will consume it. There is no Laravel service provider, no bundle resolution hook, and no supported way to register multiple parents in a Laravel application. Installing it only adds an unused, abandoned dependency to your lock file.
- What does multiple inheritance actually do in this Symfony bundle?
- In this bundle, multiple inheritance means one child bundle can draw resources from several parent bundles using a precedence chain. It works by hooking the Symfony kernel's bundle resolution and resource path lookup at container compile time. That is bundle resource inheritance, not PHP class multiple inheritance, and the kernel API it patches no longer exists in modern Symfony.
- Which Symfony versions support this bundle?
- It targets Symfony 2.x-era bundle inheritance, which was deprecated in Symfony 4.0 and removed in Symfony 5.0. That means it does not apply to any currently supported Symfony release, let alone Laravel. Treat any use as pinned to an end-of-life framework.
- Does it work with PHP 8 and modern Composer?
- There is no compatibility statement for PHP 8.x, modern Twig, or Composer 2 semantics. The package targets a PHP 5.x-era runtime and an end-of-life Symfony major version. Anything you build on it inherits that compatibility ceiling.
- Is this package maintained and safe for production?
- The repository is archived, has about 5 stars and 0 dependents, and shows a composite score of 0.0425, which matches an internal tool published and later abandoned. There is no security response path and no user base exercising edge cases. The failure mode is silent resource shadowing, which tends to appear in production rather than in CI.
- What are the alternatives to multiple-inheritance-bundle for sharing behavior across Laravel modules?
- Use a shared Composer package with a ServiceProvider that calls mergeConfigFrom, loadViewsFrom, and loadRoutesFrom, plus view namespace precedence for overrides. That gives you reusable modules with overridable views and config using only documented framework behavior. It is roughly a day of work and avoids kernel patching entirely.
- How do I override views, config, and routes from a shared package in Laravel?
- Rely on Laravel's native package patterns: mergeConfigFrom for config defaults, loadViewsFrom with a namespace for templates, and loadRoutesFrom for routes. View namespace precedence handles overrides deterministically, and published config lets applications customize values without editing vendor code. No bundle inheritance mechanism is needed.
- How should I test resource override precedence if I inherit a legacy Symfony app using this bundle?
- If you must keep a legacy Symfony 2.x fork, pin it to a specific commit and add a smoke test that asserts resource-resolution precedence for every inherited bundle. In Laravel, test the native alternative instead by asserting that your package's config merges correctly and that view namespace overrides resolve in the expected order.
- When, if ever, should I use megogo/multiple-inheritance-bundle?
- Only in a legacy-scoped case: an existing Symfony 2.x application you cannot migrate, where you vendor and pin a fork. Even then, a targeted compiler pass that prepends Twig, translation, or asset paths is usually cheaper and easier to own. Do not adopt it for new Laravel or Symfony work, and record any legacy use as technical debt with a migration ticket.