Composer Inheritance Plugin
Opinionated version of Wikimedia composer-merge-plugin to work in pair with bamarni/composer-bin-plugin.
Usage
If you are familiar with bamarni/composer-bin-plugin, you know that you can easily manage several namespaces without impacting your project dependencies. There is however one issue: the composer.json
files in your vendor-bin
directory are completely isolated from your project root composer.json
. It is possible thanks to wikimedia/composer-merge-plugin to change that. This library pre-configure this plugin to work more nicely out of the box.
Live example: https://github.com/nelmio/alice
/nelmio-alice-project
├── composer.json <-- uses bamarni/composer-bin-plugin to manage vendor-bin
├── composer.lock
├── vendor/
└── vendor-bin/
├── laravel
| ├── composer.json <-- uses theofidry/composer-inheritance-plugin to
| | inherit from the root `composer.json` and add
| | dependencies related to Laravel to test the
| | Laravel bridge
| ├── composer.lock
| └── vendor/
└── symfony
├── composer.json <-- uses theofidry/composer-inheritance-plugin to
| inherit from the root `composer.json` and add
| dependencies related to Symfony to test the
| Symfony bridge
├── composer.lock
└── vendor/