标记 Composer 包更新
-
20-12-2019 - |
题
我有一个 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
或者使用更有意义的名称?
解决方案
问题是 4.1 和 4.2 之间有什么区别,您需要以不同的方式支持它。语义版本控制应保证较新的次要版本仅引入 BC 兼容的功能和错误修复。
至于你的问题,你可以在你的 composer.json
文件,如上所述 这里:
范围> = 1.0> = 1.0,<2.0> = 1.0,<1.1 | > = 1.2通过使用比较操作员,您可以指定有效版本的范围。有效的操作员是>,> =,<,<=,!=。您可以定义由逗号隔开的多个范围,该范围将被视为逻辑。管道符号|将被视为逻辑或。AND 的优先级高于 OR。
在你的情况下,它会是这样的:
"illuminate/support": ">=4.1.0,<4.3",
不隶属于 StackOverflow