webimpress/composer-extra-dependency

Composer 插件,用于要求额外的依赖

0.2.2 2017-10-17 17:15 UTC

This package is auto-updated.

Last update: 2024-09-07 15:28:14 UTC


README

Build Status Coverage Status

此 composer 插件允许您在安装过程中要求用户指定的版本 composer 依赖。它修改 composer.json 文件并在 require 部分添加所需包。

当您的库支持某些依赖的多个版本,并且您希望强制用户使用显式依赖而不是依赖库的隐式依赖时,这可能很有用。

用法

在您的库中要求该包

# composer require webimpress/composer-extra-dependency

更新您的 composer.json 文件:在 extra.dependency 部分添加您想要与库一起安装的包。

{
    "name": "my/package",
    "description": "This is my package",
    "extra": {
        "dependency": [
            "package/to-require",
            ...
        ]
    },
    "require": {
        "php": "^5.6 || ^7.0",
        "webimpress/composer-extra-dependency": "^0.1 || ^1.0",
        ...
    }
    ...  
}

然后,在安装您的库时,用户将被提示。

# Enter the version of package/to-require to require (or leave blank to use the latest version): 

在提供版本后,用户的 composer.json 将被更新(包将在 require 部分添加,版本由用户提供)。

如果用户没有提供版本,插件将尝试在最新版本中找到匹配平台要求和其他依赖的包。在此情况下,composer.json 也将被更新,并将安装包。

插件始终在更新/安装包后运行,以检查用户 composer.json 文件中是否有需要显式要求的依赖。

如果依赖已经在用户的 composer.json 中提供(在 requirerequire-dev 部分中),则插件不会执行任何操作。

请注意,插件仅在 开发交互模式 下工作。这意味着当提供 --no-dev--no-interaction 标志时,插件不会执行任何操作。