Composer tilde语法(下一个重要版本)

时间:2014-08-18 12:37:28

标签: composer-php packagist

我已将amnah/yii2-user packagist库从composer安装到我的项目中。该项目的composer.json相关需求部分如下所示:

" amnah / yii2-user":" ~2.0"

据我了解,这应该安装最新版本的主要版本" 2"。当我通过composer show amnah/yii2-user -v检查已安装的软件包时,我看到以下版本信息:

versions : dev-master, 2.1.0-alpha4, 2.1.0-alpha3, 2.1.0-alpha2, 2.1.0alpha,
     

* 2.0.0-alpha2,2.0.0-alpha,1.0.0-beta

因此安装了2.0.0-alpha22.1版本将被忽略。它不应该像

那样工作
  

另一种看待它的方法是使用〜指定最小值   版本,但允许指定的最后一位数字。

正如文件所述?我需要安装最新的2.x版本。我错过了什么?

1 个答案:

答案 0 :(得分:1)

如果您需要安装最新的2.x版本,则应使用~2.1 if" latest"意味着当时版本2.1是最新发布的版本。

但我想知道你为什么要安装alpha版本。通常,Composer默认只安装稳定版本,没有发布候选版本(rc),beta版本,alpha版本或开发版本。您是否为minimum-stability和/或preferred-stability添加了设置?

因此,如果您想要alpha版本,则需要~2.1@alpha

请注意:您正在使用的项目确实需要yiisoft/yii2: *yiisoft/yii2-authclient: * - 星号,这意味着任何版本都足够了。 Yii本身声称发布的1.1版本与较新的2.0系列(尚未发布)不兼容,无论这意味着什么。