Symfony / BrowserKit / Panther -- "don't install symfony/symfony v3...."

Symfony / BrowserKit / Panther -- "don't install symfony/symfony v3...."

我很难解决与 Symfony、BrowserKit 和 Panther 无头测试库相关的作曲家依赖管理问题。

我有三个基本环境,其中两个是相互关联的。

  1. 本地 Ubuntu 桌面,php 7.2.15 -- 工作
  2. 本地 Virtualbox 运行在 Ubuntu 本地 Ubuntu 桌面上,php 7.2.15 -- 失败
  3. 远程暂存服务器,php 7.2.10 -- 失败

命令:

SYMFONY_ENV=dev composer install

错误:

Problem 1
- Conclusion: don't install symfony/symfony v3.4.22
- Conclusion: don't install symfony/symfony v3.4.21
- Conclusion: don't install symfony/symfony v3.4.20
- Conclusion: don't install symfony/symfony v3.4.19
- Conclusion: don't install symfony/symfony v3.4.18
- Conclusion: don't install symfony/symfony v3.4.17
- Conclusion: don't install symfony/symfony v3.4.16
- Conclusion: don't install symfony/symfony v3.4.15
- Conclusion: don't install symfony/symfony v3.4.14
- Conclusion: don't install symfony/symfony v3.4.13
- Conclusion: don't install symfony/symfony v3.4.12
- Conclusion: don't install symfony/symfony v3.4.11
- Conclusion: don't install symfony/symfony v3.4.10
- Conclusion: don't install symfony/symfony v3.4.9
- Conclusion: don't install symfony/symfony v3.4.8
- Conclusion: don't install symfony/symfony v3.4.7
- Conclusion: don't install symfony/symfony v3.4.6
- Conclusion: don't install symfony/symfony v3.4.5
- Conclusion: don't install symfony/symfony v3.4.4
- Conclusion: don't install symfony/symfony v3.4.3
- Installation request for symfony/panther ^0.3.0 -> satisfiable by symfony/panther[v0.3.0].
- Conclusion: don't install symfony/symfony v3.4.2
- Conclusion: don't install symfony/symfony v3.4.1
- symfony/panther v0.3.0 requires symfony/browser-kit ^4.0 -> satisfiable by symfony/browser-kit[v4.2.0, v4.2.1, v4.2.2, v4.2.3].
- don't install symfony/browser-kit v4.2.0|don't install symfony/symfony v3.4.0
- don't install symfony/browser-kit v4.2.1|don't install symfony/symfony v3.4.0
- don't install symfony/browser-kit v4.2.2|don't install symfony/symfony v3.4.0
- don't install symfony/browser-kit v4.2.3|don't install symfony/symfony v3.4.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.18, v3.4.19, v3.4.2, v3.4.20, v3.4.21, v3.4.22, v3.4.3, v3.4.4, v3.4.5, v3.4.6, v3.4.7, v3.4.8, v3.4.9].

Composer.json

"name": "symfony/framework-standard-edition",
"license": "MIT",
"type": "project",
"description": "The \"Symfony Standard Edition\" distribution",
"autoload": {
    "psr-4": {
        "AppBundle\": "src/AppBundle"
    },
    "classmap": [ "app/AppKernel.php", "app/AppCache.php" ]
},
"autoload-dev": {
    "psr-4": { "Tests\": "tests/" },
    "files": [ "vendor/symfony/symfony/src/Symfony/Component/VarDumper/Resources/functions/dump.php" ]
},
"require": {
    "php": ">=7.1",
    "doctrine/doctrine-bundle": "^1.6",
    "doctrine/orm": "^2.5",
    "friendsofsymfony/rest-bundle": "^2.4",
    "incenteev/composer-parameter-handler": "^2.0",
    "jms/serializer-bundle": "^2.4",
    "nesbot/carbon": "^1.34",
    "sensio/distribution-bundle": "^5.0.19",
    "sensio/framework-extra-bundle": "^5.0.0",
    "symfony/monolog-bundle": "^3.1.0",
    "symfony/polyfill-apcu": "^1.0",
    "symfony/swiftmailer-bundle": "^2.6.4",
    "symfony/symfony": "^3.4",
    "twig/twig": "^1.0||^2.0"
},
"require-dev": {
    "symfony/debug": "^3.4",
    "sensio/generator-bundle": "^3.0",
    "symfony/phpunit-bridge": "^3.4",
    "symfony/var-dumper": "^3.4",
    "symfony/panther": "^0.2.0",
    "symfony/browser-kit": "^4.2"
},
"scripts": {
    "symfony-scripts": [
        "Incenteev\ParameterHandler\ScriptHandler::buildParameters",
        "Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap",
        "Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache",
        "Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::installAssets",
        "Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::installRequirementsFile",
        "Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::prepareDeploymentTarget"
    ],
    "post-install-cmd": [
        "@symfony-scripts"
    ],
    "post-update-cmd": [
        "@symfony-scripts"
    ]
},
"config": {
    "platform": {
        "php": "7.1.3"
    },
    "sort-packages": true
},
"extra": {
    "symfony-app-dir": "app",
    "symfony-bin-dir": "bin",
    "symfony-var-dir": "var",
    "symfony-web-dir": "web",
    "symfony-tests-dir": "tests",
    "symfony-assets-install": "relative",
    "incenteev-parameters": {
        "file": "app/config/parameters.yml"
    },
    "branch-alias": {
        "dev-master": "3.4-dev"
    }
}

但是,如果我从 composer.json

的 "require-dev" 中删除以下行
    "symfony/panther": "^0.2.0",
    "symfony/browser-kit": "^4.2"

然后,它在所有三种环境中都有效!

当然,我会在 运行 每次测试之前删除我的 ./vendor 文件夹和 composer.lock 文件。

非常感谢任何帮助!

据我所知,symfony/panther 不支持您使用的 Symfony 3.4。

在 Symfony Panther GitHub 存储库中查看以下问题:#79 and #142