2

我尝试获取新发布的 Zend Framework 2 (2.0.2) 的稳定版本,它将通过 composer 跟踪稳定版本。

此处的示例是当 2.0.3 发布时,composer update 将自动更新。

问题是我正在尝试使用 modules.zendframework.com 中的 DoctrineModule,这需要将最小稳定性设置设置为“dev”。当我这样做时,Zend Framework 版本会更改为 2.0.3dev,这不是我想要的。

你们中的任何人都知道在同一个作曲家配置中将 dev 和 stable 混合在一起的方法吗?

我想要发生的是 zendframework/zendframework 仅跟踪稳定分支,并且 composer update 返回最新的稳定(在本例中为 2.0.2)而不是开发版本。

这是我的composer.json:

    {
      “最低稳定性”:“开发”,
      "name": "zendframework/skeleton-application",
      "description": "ZF2 的骨架应用",
      "license": "BSD-3-Clause",
      “关键词”:[
      “框架”,
      “zf2”
      ],
      "主页": "http://framework.zend.com/",
      “要求”: {
        "php": ">=5.3.3",
        "zendframework/zendframework": "2.*",
        “教义/教义模块”:“开发大师”,  
        “教义/教义-orm-module”:“dev-master”,
      }
    }

使用 @hakre 解决方案工作 composer.json

因为 Doctrine 通过 composer 引入其他依赖项,所以必须将 minimum-stability 设置为“dev”。将 zendframework 要求设置为 @stable 解决了正在下载开发版本的问题。

      “最低稳定性”:“开发”,
      “要求”: {
        "php": ">=5.3.3",
        "zendframework/zendframework": "2.*@stable",
        “教义/教义模块”:“开发大师”,  
        “教义/教义-orm-模块”:“开发大师”
       }

非常感谢您的回答!

4

1 回答 1

4

参考手册(来自minimum-stability):

minimum-stability每个包的所有版本都经过稳定性检查,在解决项目依赖关系时将忽略那些比设置不稳定的版本。给定包的稳定性要求的特定更改可以在require或中完成require-dev(请参阅包链接)。

我会说,如果您将默认 via 设置minimum-stabilitystable,然后对于您需要它的具体包,请将它们标记为betadev

{
    "require": {
        "monolog/monolog": "1.0.*@beta",
        "acme/foo": "@dev"
    }
}
于 2012-10-07T08:56:15.083 回答