Composer php 编写器版本模式不工作

Composer php 编写器版本模式不工作,composer-php,Composer Php,在我的composer中,我有以下模块的版本定义: "my-module": "1.*" 在我将模块标签版本更改为1.0.10之前,一切正常 奇怪的是,composer总是加载1.0.9。 我可以将模式更改为“1.0.*”,但我找不到任何有关“1.*”不起作用的信息 顺便说一句,我正在使用Composer版本1.4.1查找特定版本未更新的原因,您可以运行Composer为什么不打包/name版本,Composer将列出阻止安装该特定版本的所有依赖项 我有一种感觉,在你的情况下,你会发现另一个你

在我的composer中,我有以下模块的版本定义:

"my-module": "1.*"
在我将模块标签版本更改为1.0.10之前,一切正常

奇怪的是,composer总是加载1.0.9。 我可以将模式更改为
“1.0.*”
,但我找不到任何有关
“1.*”
不起作用的信息


顺便说一句,我正在使用Composer版本1.4.1

查找特定版本未更新的原因,您可以运行
Composer为什么不打包/name版本
,Composer将列出阻止安装该特定版本的所有依赖项


我有一种感觉,在你的情况下,你会发现另一个你还没有考虑过的包裹。如果存在composer.lock文件(您应该将其包含在repo中),则需要运行
composer update my module
。我不再使用*作为版本约束。我想您的应用程序需要此错误修复,因此最好使用
我的模块“^1.0.10”
我删除了composer.lock和供应商文件夹,然后运行
composer安装。请注意,如果我将模式更改为
“1.0.*”
它可以工作,但是
“1.*”
不工作。首先,您不应该简单地删除composer.lock,这是有原因的。不要再使用星号通配符了。这并不能防止在应用程序的未来版本中,由于其他软件包的依赖关系,您的版本再次下降到1.0.8或类似版本,当您删除composer.lock时,您甚至可能会错过这一点。您是否尝试过使用
“^1.0.10”
?我认为“1.*”甚至是无效的,请参阅文档:这可能很有趣:@normm通过删除composer.lock和我试图模拟全新设置的供应商文件夹<代码>“1.*”
是有效的,但似乎不能正常工作,正如我前面所写的,如果我将其更改为
“1.0.*”
,它就会正常工作。我只是想知道这是作曲家的问题还是记录在案的行为。