标记作曲家包更新

时间:2014-07-29 09:02:35

标签: php git composer-php versioning

我有一个PHP编写器包,需要"illuminate/support":"4.1.*"才能与Laravel 4.1集成一起使用。我有一个新的Laravel项目,现在是4.2。*。我相信我现在需要更新包以要求"illuminate/support":"4.2.*"(由于作曲家错误)。我如何在包中保持对Laravel v4.1和v4.2的支持?

这是我的作曲家包composer.json文件:

{
    "name": "appointedd/appointedd-php",
    "description": "",
    "authors": [
        {
            "name": "Billy Jones",
            "email": "billy@appointedd.com"
        }
    ],
    "require": {
        "php": ">=5.3.0",
        "illuminate/support": "4.1.*",
        "guzzlehttp/guzzle": "~4.0"
    },
    "autoload": {
        "psr-0": {
            "Appointedd\\Appointedd": "src/"
        }
    },
    "minimum-stability": "stable"
}

目前标有版本0.0.3。我是否应该将composer.json文件更新为要求4.2。*并将其标记为0.1.0或使用更有意义的名称?

1 个答案:

答案 0 :(得分:1)

问题是4.1和4.2之间的差异是否需要以不同的方式支持它。语义版本控制应该保证较新的次要版本仅引入与BC兼容的功能和错误修复。

关于您的问题,您可以在composer.json文件中添加版本范围,如here所述:

  

范围> = 1.0> = 1.0,< 2.0> = 1.0,< 1.1 | > = 1.2使用比较   运算符,您可以指定有效版本的范围。有效运营商   是>,> =,<,< =,!=。您可以定义多个范围,以a分隔   逗号,将被视为逻辑AND。管道符号|将会   被视为逻辑OR。 AND的优先级高于OR。

在你的情况下,它会是这样的:

"illuminate/support": ">=4.1.0,<4.3",