我在composer-dev邮件列表上问了这个问题,但社区没有SO那么活跃。
我最近发布了this package on Packagist和1.0.0-dev版本,之后不久我添加了一些文档并将其发布为1.0.1。 (两个版本都使用Git标签完成)
使用简单的require foo/bar ~1.0
Composer测试部署时,告诉我“您的要求无法解析为可安装的软件包集”。
当我将显式版本指定为“1.0.1”
所以我尝试用require foo/bar dev-master
将其拉下来,这很好。然后我编辑了composer.json,将“dev-master”改为“1.0.1”并运行composer update
- 这现在给出了一个更明确的消息“无法找到所请求的包foo / bar 1.0.1”。
版本1.0.1显然在Packagist网站上,所以我不知道我做错了,作曲家没有识别它。
答案 0 :(得分:0)
我做了以下事情:
mkdir testdir
cd testdir
composer init
// answer all questions with default values, resulting in a new, clean composer.json
composer require loco/swizzle:~1.0
结果:
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing psr/log (1.0.0)
Downloading: 100%
- Installing monolog/monolog (1.7.0)
Downloading: 100%
- Installing symfony/event-dispatcher (v2.4.1)
Downloading: 100%
- Installing guzzle/guzzle (v3.8.1)
Downloading: 100%
- Installing loco/swizzle (1.0.1)
Downloading: 100%
您提供的信息无法复制您的问题。我得到的composer.json是:
{
"name": "test/test",
"authors": [
{
"name": "Test User",
"email": "test@test.example"
}
],
"require": {
"loco/swizzle": "~1.0"
}
}
答案 1 :(得分:0)
我讨厌以这种方式回答我自己的问题,但看起来非常像Packagist在更新软件包时有延迟。
即使正确实施了服务挂钩,我发现通常需要几分钟才能使用新部署的版本更新测试版本。
在这个特殊的日子,它似乎需要数小时,但最好的任何人都可以告诉我,我上面列出的步骤没有任何问题。