我尝试获得新发布的Zend Framework 2(2.0.2)的稳定版本,该版本将通过作曲家跟踪稳定版本。
此处的示例将是2.0.3发布时,然后编辑器更新将自动更新。
问题是我正在尝试使用modules.zendframework.com中的DoctrineModule,这需要将最小稳定性设置设置为'dev'。当我这样做时,Zend Framework版本然后更改为2.0.3dev,这不是我想要的。
你们中的任何人都知道如何让dev和stable在同一个作曲家配置中混合在一起吗?
我想要发生的是zendframework / zendframework仅跟踪稳定分支,而作曲家更新返回最新的稳定版(在本例中为2.0.2),而不是dev版本。
这是我的composer.json:
{ "minimum-stability":"dev", "name": "zendframework/skeleton-application", "description": "Skeleton Application for ZF2", "license": "BSD-3-Clause", "keywords": [ "framework", "zf2" ], "homepage": "http://framework.zend.com/", "require": { "php": ">=5.3.3", "zendframework/zendframework": "2.*", "doctrine/doctrine-module": "dev-master", "doctrine/doctrine-orm-module": "dev-master", } }
使用@hakre解决方案工作composer.json
因为Doctrine通过composer引入其他依赖,所以最小稳定性必须设置为'dev'。将zendframework require设置为@stable解决了下载开发版本的问题。
"minimum-stability":"dev", "require": { "php": ">=5.3.3", "zendframework/zendframework": "2.*@stable", "doctrine/doctrine-module": "dev-master", "doctrine/doctrine-orm-module": "dev-master" }
非常感谢您的回答!
答案 0 :(得分:3)
参考手册(from minimum-stability):
检查每个软件包的所有版本的稳定性,在解决项目依赖项时,将忽略那些不如 minimum-stability 设置稳定的版本。可以在 require 或 require-dev 中完成对给定包的稳定性要求的具体更改(参见package links)。
请告诉我,如果您通过 minimum-stability 将默认值设置为 stable ,然后针对您需要的具体包,请将其标记为 beta 或 dev :
{
"require": {
"monolog/monolog": "1.0.*@beta",
"acme/foo": "@dev"
}
}