从Symfony演示存储库来看,我很难确定要更新symfony
软件包的目标软件包。
在这里看看:https://github.com/symfony/demo/blob/master/composer.json
在我之前的项目中,有一个独特的symfony/symfony
软件包,因此很清楚在哪里进行安装。
现在,我的应用程序的版本为4.2.5。我尝试更新extras
下底部的symfony版本:https://github.com/symfony/demo/blob/master/composer.json,然后运行composer update symfony/symfony
。
结果:
$ composer update symfony/symfony
Package "symfony/symfony" listed for update is not installed. Ignoring.
Loading composer repositories with package information
Updating dependencies (including require-dev)
Restricting packages listed in "symfony/symfony" to "4.4.*"
Nothing to install or update
很明显,程序有所变化,我确定某个地方有文档,但是我找不到它。
答案 0 :(得分:2)
没有看到您的composer.json文件,很难给您确切的说明。 Symfony既是框架,又是组件的集合,因此我们需要了解如何以及完全安装了什么。
例如,在一个正在运行的特定项目中,这些都是我更新为4.4的所有依赖项:
"symfony/cache": "^4.4.0",
"symfony/config": "^4.4.0",
"symfony/console": "^4.4.0",
"symfony/dependency-injection": "^4.4",
"symfony/dotenv": "^4.4.0",
"symfony/filesystem": "^4.4.0",
"symfony/finder": "^4.4.0",
"symfony/flex": "^1.2",
"symfony/framework-bundle": "^4.4.0",
"symfony/http-client": "^4.4.0",
"symfony/http-client-contracts": "^2.0.0",
"symfony/http-foundation": "^4.4.0",
"symfony/http-kernel": "^4.4.0",
"symfony/messenger": "^4.4.0",
"symfony/monolog-bundle": "^3.4",
"symfony/polyfill-mbstring": "^1.12.0",
"symfony/profiler-pack": "^1.0",
"symfony/routing": "4.4.0",
最重要的是,extra
键:
"extra": {
"symfony": {
"allow-contrib": true,
"require": "4.4.*"
}
最重要的可能是"symfony/framework-bundle"
,但您可能还会有更多。
在这种情况下,几乎所有依赖都被显式声明,即使它们中的某些已经被安装为另一个软件包的依赖,但是我们希望实际声明所有真实依赖。