将Symfony从3.3.2升级到3.4 / Twig不兼容

时间:2018-10-10 14:24:39

标签: symfony twig composer-php

我不知道我是否缺少明显的东西。因此,我正在尝试将Symfony从3.3.2更新到3.4。我检查了

的问题
php composer.phar update symfony/symfony --with-dependencies

我收到以下反馈:

Problem 1
- Conclusion: don't install twig/twig v2.5.0
- Conclusion: don't install twig/twig v2.4.8
- Conclusion: don't install twig/twig v2.4.7
- Conclusion: don't install twig/twig v2.4.6
- Conclusion: don't install twig/twig v2.4.5
- Conclusion: don't install twig/twig v2.4.4
- Conclusion: don't install twig/twig v1.35.4
- Conclusion: don't install twig/twig v1.35.3
- Conclusion: don't install twig/twig v1.35.2
- Installation request for twig/twig (locked at v1.34.2, required as ^1.0||^2.0) -> satisfiable by twig/twig[v1.34.2].
- Conclusion: don't install twig/twig v1.35.1
- symfony/symfony v3.4.0 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.1 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.10 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.11 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.12 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.13 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.14 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.15 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.16 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.17 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.2 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.3 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.4 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.5 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.6 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.7 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.8 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- symfony/symfony v3.4.9 requires twig/twig ^1.35|^2.4.4 -> satisfiable by twig/twig[v1.35.0, v1.35.1, v1.35.2, v1.35.3, v1.35.4, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.5.0].
- Conclusion: don't install twig/twig v1.35.0
- Installation request for symfony/symfony 3.4.* -> satisfiable by symfony/symfony[v3.4.0, v3.4.1, v3.4.10, v3.4.11, v3.4.12, v3.4.13, v3.4.14, v3.4.15, v3.4.16, v3.4.17, v3.4.2, v3.4.3, v3.4.4, v3.4.5, v3.4.6, v3.4.7, v3.4.8, v3.4.9]

我不理解的是我必须安装新版本的twig,但与此同时我不应该安装的事实之间的矛盾。我检查了Symfony的文档,但是什么也没找到。无论如何,我尝试使用各种版本的树枝进行更新都没有成功。 我仍然可以遵循此解决方案,但是我担心自己会弄乱代码。

How to properly update Symfony3.3 to Symfony4.X?

编辑1

我在另一个论坛上看到了一个解决方案。我尝试过,所以删除了composer.lock和供应商目录。现在重新下载了软件包,但是在此过程中出现以下错误:

[RuntimeException]                                                           
An error occurred when executing the "'cache:clear --no-warmup'" command:  
In ParameterBag.php line 102:
You have requested a non-existent parameter "mailer_port". Did you mean this: "mailer_host"?`

编辑2

旧作曲家

"require": {
    "php": ">=5.5.9",
    "doctrine/doctrine-bundle": "^1.6",
    "doctrine/orm": "^2.5",
    "friendsofsymfony/user-bundle": "~2.1.2",
    "incenteev/composer-parameter-handler": "^2.0",
    "sensio/distribution-bundle": "^5.0.19",
    "sensio/framework-extra-bundle": "^3.0.2",
    "symfony/monolog-bundle": "^3.1.0",
    "symfony/polyfill-apcu": "^1.0",
    "symfony/swiftmailer-bundle": "^2.3.10",
    "symfony/symfony": "3.3.2",
    "twig/twig": "^1.0||^2.0"
},
"require-dev": {
    "doctrine/doctrine-fixtures-bundle": "^3.0",
    "sensio/generator-bundle": "^3.0",
    "symfony/phpunit-bridge": "^4.1"

新作曲家

"require": {
    "php": ">=5.5.9",
    "doctrine/doctrine-bundle": "^1.6",
    "doctrine/orm": "^2.5",
    "friendsofsymfony/user-bundle": "~2.1.2",
    "incenteev/composer-parameter-handler": "^2.0",
    "sensio/distribution-bundle": "^5.0.19",
    "sensio/framework-extra-bundle": "^3.0.2",
    "symfony/monolog-bundle": "^3.1.0",
    "symfony/polyfill-apcu": "^1.0",
    "symfony/swiftmailer-bundle": "^2.3.10",
    "symfony/symfony": "~3.4",
    "twig/twig": "~1.35|~2.44"
},
"require-dev": {
    "doctrine/doctrine-fixtures-bundle": "^3.0",
    "sensio/generator-bundle": "^3.0",
    "symfony/phpunit-bridge": "3.3.2"

有人知道应该怎么做吗?

1 个答案:

答案 0 :(得分:0)

尝试写回"twig/twig": "^1.0||^2.0",然后将"sensio/framework-extra-bundle": "^3.0.2"更改为"sensio/framework-extra-bundle": "^5.0.0",这是我在composer.json和新Symfony 3.4的composer.json之间可以看到的唯一区别.16项目。