neclimdul/composer-installers-extender

扩展composer/installers插件以接受任何任意的包类型。

安装: 55,716

依赖项: 0

建议者: 0

安全: 0

星标: 1

关注者: 1

分支: 52

类型:composer-plugin

2.0.4 2023-06-13 18:01 UTC

README

注意:这是主包的临时分支,以便测试来自oomphinc#26的安装程序名称修复。这不是永久仓库,你应该关注该问题,因为有一天它将消失。

Composer Installers Extender

composer-installers-extenderComposer的一个插件,允许任何包安装到除项目默认vendor目录之外的任何目录。此插件扩展了composer/installers插件,允许任何任意的包类型通过它们的自定义安装程序进行处理。

composer/installers插件支持有限数量的包类型,我们认识到任何任意的包类型都需要安装到除vendor之外的特定目录。此插件允许通过composer/installers插件处理更多包类型,并从它们的显式安装路径映射和包属性的占位符替换中受益。

如何安装

oomphinc/composer-installers-extender添加为项目的依赖项

$ composer require oomphinc/composer-installers-extender

此插件需要至少PHP 7.1。如果你使用的是较低的PHP版本,请使用最新的稳定1.x版本

$ composer require oomphinc/composer-installers-extender:^1.1

如何使用

composer/installers插件是此插件的依赖项,如果尚未添加,将自动添加。

要支持额外的包类型,请在composer.json中的extra属性中添加这些类型的数组

使用composer/installers < v1.0.13

{
    "extra": {
        "installer-types": ["library"]
    }
}

使用composer/installers >= v1.0.13

{
    "extra": {
        "installer-types": ["drupal-library"]
    }
}

然后在添加到installer-paths时引用该类型

使用composer/installers < v1.0.13

{
    "extra": {
        "installer-types": ["library"],
        "installer-paths": {
            "special/package/": ["my/package"],
            "path/to/libraries/{$name}/": ["type:library"]
        }
    }
}

使用composer/installers >= v1.0.13

{
    "extra": {
        "installer-types": ["drupal-library"],
        "installer-paths": {
            "special/package/": ["my/package"],
            "path/to/libraries/{$name}/": ["type:drupal-library"]
        }
    }
}

默认情况下,未指定type的包将被视为类型library。添加对此类型的支持允许将这些包放置在不同的安装路径。

如果已将类型添加到installer-types中,插件将尝试在映射中查找显式的安装程序路径。如果没有通过名称或类型匹配,将使用所有包的默认安装程序路径。

请参阅composer/installers的README,了解包和类型匹配的支持语法以及路径中支持替换的占位符(例如,{$name})。

许可证

MIT许可证