theofidry/composer-inheritance-plugin

Composer plugin to merge multiple sub composer.json files

Fund package maintenance!
theofidry

Installs: 73 627

Dependents: 0

Suggesters: 0

Security: 0

Stars: 28

Watchers: 5

Forks: 3

Open Issues: 0

Type:composer-plugin

v1.2.0 2021-10-11 06:37 UTC

This package is auto-updated.

Last update: 2024-04-11 11:46:09 UTC


README

Package version Build Status License

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/