我将如何仅更新一个上瘾的作曲家?

我期待这一点


composer update videlalvaro/php-amqplib


只会更新一个瘾,但它更新了所有内容。

我错过了什么?

PS: 这种依赖被定义为
"videlalvaro/php-amqplib": "2.2.0"


composer.json


PPS: 使用版本的作曲家
3da05c68f9561fa822c522b1815435ff990493ff 2013-10-02 14:25:06


PPPS: 实际输出:


$ composer.phar update videlalvaro/php-amqplib --no-dev
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

Problem 1
- symfony/icu v1.2.0 requires lib-icu >=4.4 -> the requested linked library icu has the wrong version installed or is missing from your system, make sure to have the extension providing it.
- symfony/icu v1.2.0 requires lib-icu >=4.4 -> the requested linked library icu has the wrong version installed or is missing from your system, make sure to have the extension providing it.
- Installation request for symfony/icu == 1.2.0.0 -> satisfiable by symfony/icu[v1.2.0].
已邀请:

帅驴

赞同来自:

团队
composer update videlalvaro/php-amqplib

只是更新这一依赖。 但是,它不会关闭依赖性制作的另一个测试 Composer.

错误消息抱怨 lib-icu 您的系统上不可用。 显然,它可以通过设置扩展来解决 PHP Intl.

如果您完成更新,您会看到类似的问题 composer 对于需要的项目 PHP 5.5 在他们的一个索赔中,将其降低到 PHP 5.4, 然后推出更新 composer 对于不需要的单独要求 PHP 5.5. 即使你没有更新 require, 需要B. PHP 5.5, 对此包的要求不会是可解决的,因此 Composer 将失败。

在您的情况下,即使您只是在尝试更新
videlalvaro/php-amqplib

到最新版本,要求
symfony/icu

不要执行并因此更新 composer 完成失败。

编辑

试图有用,我猜你重新安装了 PHP 自上次更新以来并删除或忘记建立扩展 PHP Intl. Composer 不能令人满意地满足你的要求 composer.json, 因此,默认情况下,没有任何内容,并且没有意识地满足未执行要求的更新。

因此,您基本上需要建立扩展 PHP, 必须启动现有已安装的软件,然后 Composer 将能够更新要更新的一个包,以及对其他包的要求执行要求。

小明明

赞同来自:

tl;dr:

你可以列出

一些

依赖于更新

在一个团队中

:


composer update one/dependency second/dependency other/dependency


历史:

如果要仅更新一个依赖项 /
composer update some/dependency

/, 您可能会遇到一个问题,即由于某些其他依赖性在错误的版本中设置了一些事实,请求不满足。 它不必在您的中指定
composer.json

, 它可以简单地依赖于其他一些依赖性。

E.g. 我只想只更新
google/apiclient

, 但挑战
composer update google/apiclient

抱怨
google/auth

/依赖 apiclient/ 需要
guzzlehttp/psr7

在版本中
1.2.3

. 我被安装了
1.3.0

.
guzzlehttp/psr7

没有列在我的
composer.json

. 我所要做的就是打电话给它:


composer update guzzlehttp/psr7 google/apiclient


这一切都! 只需更新所需的包,如果 composer 会告诉你你需要更新的内容 /或降级 :-// 其他一些包,在团队中列出它。

要回复问题请先登录注册