Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Symfony 5 compatibility #917

Closed
cedx opened this issue Nov 23, 2019 · 18 comments
Closed

Symfony 5 compatibility #917

cedx opened this issue Nov 23, 2019 · 18 comments
Labels

Comments

@cedx
Copy link
Contributor

cedx commented Nov 23, 2019

Steps to reproduce

Add a Symfony 5 package to your composer.json file:

{
  "require": {
    "symfony/process": "^5.0.0"
  }
}

Expected behavior

The installation of the Symfony 5 package succeeds.

Actual behavior

$ composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - consolidation/robo 2.0.0 requires symfony/process ^4 -> satisfiable by symfony/process[4.0.x-dev, 4.1.x-dev, 4.2.x-dev, 4.3.x-dev, 4.4.x-dev, v4.0.0, v4.0.0-BETA1, v4.0.0-BETA2, v4.0.0-BETA3, v4.0.0-BETA4, v4.0.0-RC1, v4.0.0-RC2, v4.0.1, v4.0.10, v4.0.11, v4.0.12, v4.0.13, v4.0.14, v4.0.15, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4.0.7, v4.0.8, v4.0.9, v4.1.0, v4.1.0-BETA1, v4.1.0-BETA2, v4.1.0-BETA3, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8, v4.1.9, v4.2.0, v4.2.0-BETA1, v4.2.0-BETA2, v4.2.0-RC1, v4.2.1, v4.2.10, v4.2.11, v4.2.12, v4.2.2, v4.2.3, v4.2.4, v4.2.5, v4.2.6, v4.2.7, v4.2.8, v4.2.9, v4.3.0, v4.3.0-BETA1, v4.3.0-BETA2, v4.3.0-RC1, v4.3.1, v4.3.2, v4.3.3, v4.3.4, v4.3.5, v4.3.6, v4.3.7, v4.3.8, v4.4.0, v4.4.0-BETA1, v4.4.0-BETA2, v4.4.0-RC1] but these conflict with your requirements or minimum-stability.
    - Installation request for consolidation/robo ^2.0.0 -> satisfiable by consolidation/robo[2.0.0].

It would be cool if the version constraint of Symfony packages was relaxed. Something like:

{
  "require": {
    "symfony/console": "^4.3.5 || ^5",
    "symfony/event-dispatcher": "^4 || ^5",
    "symfony/filesystem": "^4 || ^5",
    "symfony/finder": "^4 || ^5",
    "symfony/process": "^4 || ^5"
  }
}

See the Symfony policy about backward compatibility:
https://symfony.com/doc/current/contributing/community/releases.html#backward-compatibility

@DavertMik DavertMik added the bug label Dec 20, 2019
@DavertMik
Copy link
Member

Yeah, this is important. Time for Robo 3.0?

@greg-1-anderson
Copy link
Member

We won't need to bump the major version of Robo unless we make breaking changes to support Symfony 5. If code changes are needed, we will do a ^3 of Robo. I think I've seen projects using ^4 | ^5 of Symfony, so it might be possible that we can avoid code changes.

There are a few other dependencies of Robo that have to support Symfony 5 before we can add it here.

@lesichkovm
Copy link

Uninstallable because of consolidation/self-update and consolidation/log, which refer to ^4

composer require consolidation/robo
Using version ^2.0 for consolidation/robo
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)         
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Conclusion: don't install consolidation/robo 2.0.3
    - Conclusion: don't install consolidation/robo 2.0.2
    - Conclusion: don't install consolidation/robo 2.0.1
    - consolidation/robo 2.0.0 requires consolidation/log ^1.1.1 -> satisfiable by consolidation/log[1.1.1].
    - Installation request for consolidation/robo ^2.0 -> satisfiable by consolidation/robo[2.0.0, 2.0.1, 2.0.2, 2.0.3].
    - Conclusion: don't install symfony/console v5.0.5
    - consolidation/log 1.1.1 requires symfony/console ^2.8|^3|^4 -> satisfiable by symfony/console[v2.8.0, v2.8.1, v2.8.10, v2.8.11, v2.8.12, v2.8.13, v2.8.14, v2.8.15, v2.8.16, v2.8.17, v2.8.18, v2.8.19, v2.8.2, v2.8.20, v2.8.21, v2.8.22, v2.8.23, v2.8.24, v2.8.25, v2.8.26, v2.8.27, v2.8.28, v2.8.29, v2.8.3, v2.8.30, v2.8.31, v2.8.32, v2.8.33, v2.8.34, v2.8.35, v2.8.36, v2.8.37, v2.8.38, v2.8.39, v2.8.4, v2.8.40, v2.8.41, v2.8.42, v2.8.43, v2.8.44, v2.8.45, v2.8.46, v2.8.47, v2.8.48, v2.8.49, v2.8.5, v2.8.50, v2.8.52, v2.8.6, v2.8.7, v2.8.8, v2.8.9, v3.0.0, v3.0.1, v3.0.2, v3.0.3, v3.0.4, v3.0.5, v3.0.6, v3.0.7, v3.0.8, v3.0.9, v3.1.0, v3.1.1, v3.1.10, v3.1.2, v3.1.3, v3.1.4, v3.1.5, v3.1.6, v3.1.7, v3.1.8, v3.1.9, v3.2.0, v3.2.1, v3.2.10, v3.2.11, v3.2.12, v3.2.13, v3.2.14, v3.2.2, v3.2.3, v3.2.4, v3.2.5, v3.2.6, v3.2.7, v3.2.8, v3.2.9, v3.3.0, v3.3.1, v3.3.10, v3.3.11, v3.3.12, v3.3.13, v3.3.14, v3.3.15, v3.3.16, v3.3.17, v3.3.18, v3.3.2, v3.3.3, v3.3.4, v3.3.5, v3.3.6, v3.3.7, v3.3.8, v3.3.9, 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.23, v3.4.24, v3.4.25, v3.4.26, v3.4.27, v3.4.28, v3.4.29, v3.4.3, v3.4.30, v3.4.31, v3.4.32, v3.4.33, v3.4.34, v3.4.35, v3.4.36, v3.4.37, v3.4.38, v3.4.4, v3.4.5, v3.4.6, v3.4.7, v3.4.8, v3.4.9, v4.0.0, v4.0.1, v4.0.10, v4.0.11, v4.0.12, v4.0.13, v4.0.14, v4.0.15, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4.0.7, v4.0.8, v4.0.9, v4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8, v4.1.9, v4.2.0, v4.2.1, v4.2.10, v4.2.11, v4.2.12, v4.2.2, v4.2.3, v4.2.4, v4.2.5, v4.2.6, v4.2.7, v4.2.8, v4.2.9, v4.3.0, v4.3.1, v4.3.10, v4.3.11, v4.3.2, v4.3.3, v4.3.4, v4.3.5, v4.3.6, v4.3.7, v4.3.8, v4.3.9, v4.4.0, v4.4.1, v4.4.2, v4.4.3, v4.4.4, v4.4.5].
    - Can only install one of: symfony/console[v4.3.10, v5.0.5].
    - Can only install one of: symfony/console[v4.3.11, v5.0.5].
    - Can only install one of: symfony/console[v4.3.5, v5.0.5].
    - Can only install one of: symfony/console[v4.3.6, v5.0.5].
    - Can only install one of: symfony/console[v4.3.7, v5.0.5].
    - Can only install one of: symfony/console[v4.3.8, v5.0.5].
    - Can only install one of: symfony/console[v4.3.9, v5.0.5].
    - Can only install one of: symfony/console[v4.4.0, v5.0.5].
    - Can only install one of: symfony/console[v4.4.1, v5.0.5].
    - Can only install one of: symfony/console[v4.4.2, v5.0.5].
    - Can only install one of: symfony/console[v4.4.3, v5.0.5].
    - Can only install one of: symfony/console[v4.4.4, v5.0.5].
    - Can only install one of: symfony/console[v4.4.5, v5.0.5].
    - Can only install one of: symfony/console[v2.8.0, v5.0.5].
    - Can only install one of: symfony/console[v2.8.1, v5.0.5].
    - Can only install one of: symfony/console[v2.8.10, v5.0.5].
    - Can only install one of: symfony/console[v2.8.11, v5.0.5].
    - Can only install one of: symfony/console[v2.8.12, v5.0.5].
    - Can only install one of: symfony/console[v2.8.13, v5.0.5].
    - Can only install one of: symfony/console[v2.8.14, v5.0.5].
    - Can only install one of: symfony/console[v2.8.15, v5.0.5].
    - Can only install one of: symfony/console[v2.8.16, v5.0.5].
    - Can only install one of: symfony/console[v2.8.17, v5.0.5].
    - Can only install one of: symfony/console[v2.8.18, v5.0.5].
    - Can only install one of: symfony/console[v2.8.19, v5.0.5].
    - Can only install one of: symfony/console[v2.8.2, v5.0.5].
    - Can only install one of: symfony/console[v2.8.20, v5.0.5].
    - Can only install one of: symfony/console[v2.8.21, v5.0.5].
    - Can only install one of: symfony/console[v2.8.22, v5.0.5].
    - Can only install one of: symfony/console[v2.8.23, v5.0.5].
    - Can only install one of: symfony/console[v2.8.24, v5.0.5].
    - Can only install one of: symfony/console[v2.8.25, v5.0.5].
    - Can only install one of: symfony/console[v2.8.26, v5.0.5].
    - Can only install one of: symfony/console[v2.8.27, v5.0.5].
    - Can only install one of: symfony/console[v2.8.28, v5.0.5].
    - Can only install one of: symfony/console[v2.8.29, v5.0.5].
    - Can only install one of: symfony/console[v2.8.3, v5.0.5].
    - Can only install one of: symfony/console[v2.8.30, v5.0.5].
    - Can only install one of: symfony/console[v2.8.31, v5.0.5].
    - Can only install one of: symfony/console[v2.8.32, v5.0.5].
    - Can only install one of: symfony/console[v2.8.33, v5.0.5].
    - Can only install one of: symfony/console[v2.8.34, v5.0.5].
    - Can only install one of: symfony/console[v2.8.35, v5.0.5].
    - Can only install one of: symfony/console[v2.8.36, v5.0.5].
    - Can only install one of: symfony/console[v2.8.37, v5.0.5].
    - Can only install one of: symfony/console[v2.8.38, v5.0.5].
    - Can only install one of: symfony/console[v2.8.39, v5.0.5].
    - Can only install one of: symfony/console[v2.8.4, v5.0.5].
    - Can only install one of: symfony/console[v2.8.40, v5.0.5].
    - Can only install one of: symfony/console[v2.8.41, v5.0.5].
    - Can only install one of: symfony/console[v2.8.42, v5.0.5].
    - Can only install one of: symfony/console[v2.8.43, v5.0.5].
    - Can only install one of: symfony/console[v2.8.44, v5.0.5].
    - Can only install one of: symfony/console[v2.8.45, v5.0.5].
    - Can only install one of: symfony/console[v2.8.46, v5.0.5].
    - Can only install one of: symfony/console[v2.8.47, v5.0.5].
    - Can only install one of: symfony/console[v2.8.48, v5.0.5].
    - Can only install one of: symfony/console[v2.8.49, v5.0.5].
    - Can only install one of: symfony/console[v2.8.5, v5.0.5].
    - Can only install one of: symfony/console[v2.8.50, v5.0.5].
    - Can only install one of: symfony/console[v2.8.52, v5.0.5].
    - Can only install one of: symfony/console[v2.8.6, v5.0.5].
    - Can only install one of: symfony/console[v2.8.7, v5.0.5].
    - Can only install one of: symfony/console[v2.8.8, v5.0.5].
    - Can only install one of: symfony/console[v2.8.9, v5.0.5].
    - Can only install one of: symfony/console[v3.0.0, v5.0.5].
    - Can only install one of: symfony/console[v3.0.1, v5.0.5].
    - Can only install one of: symfony/console[v3.0.2, v5.0.5].
    - Can only install one of: symfony/console[v3.0.3, v5.0.5].
    - Can only install one of: symfony/console[v3.0.4, v5.0.5].
    - Can only install one of: symfony/console[v3.0.5, v5.0.5].
    - Can only install one of: symfony/console[v3.0.6, v5.0.5].
    - Can only install one of: symfony/console[v3.0.7, v5.0.5].
    - Can only install one of: symfony/console[v3.0.8, v5.0.5].
    - Can only install one of: symfony/console[v3.0.9, v5.0.5].
    - Can only install one of: symfony/console[v3.1.0, v5.0.5].
    - Can only install one of: symfony/console[v3.1.1, v5.0.5].
    - Can only install one of: symfony/console[v3.1.10, v5.0.5].
    - Can only install one of: symfony/console[v3.1.2, v5.0.5].
    - Can only install one of: symfony/console[v3.1.3, v5.0.5].
    - Can only install one of: symfony/console[v3.1.4, v5.0.5].
    - Can only install one of: symfony/console[v3.1.5, v5.0.5].
    - Can only install one of: symfony/console[v3.1.6, v5.0.5].
    - Can only install one of: symfony/console[v3.1.7, v5.0.5].
    - Can only install one of: symfony/console[v3.1.8, v5.0.5].
    - Can only install one of: symfony/console[v3.1.9, v5.0.5].
    - Can only install one of: symfony/console[v3.2.0, v5.0.5].
    - Can only install one of: symfony/console[v3.2.1, v5.0.5].
    - Can only install one of: symfony/console[v3.2.10, v5.0.5].
    - Can only install one of: symfony/console[v3.2.11, v5.0.5].
    - Can only install one of: symfony/console[v3.2.12, v5.0.5].
    - Can only install one of: symfony/console[v3.2.13, v5.0.5].
    - Can only install one of: symfony/console[v3.2.14, v5.0.5].
    - Can only install one of: symfony/console[v3.2.2, v5.0.5].
    - Can only install one of: symfony/console[v3.2.3, v5.0.5].
    - Can only install one of: symfony/console[v3.2.4, v5.0.5].
    - Can only install one of: symfony/console[v3.2.5, v5.0.5].
    - Can only install one of: symfony/console[v3.2.6, v5.0.5].
    - Can only install one of: symfony/console[v3.2.7, v5.0.5].
    - Can only install one of: symfony/console[v3.2.8, v5.0.5].
    - Can only install one of: symfony/console[v3.2.9, v5.0.5].
    - Can only install one of: symfony/console[v3.3.0, v5.0.5].
    - Can only install one of: symfony/console[v3.3.1, v5.0.5].
    - Can only install one of: symfony/console[v3.3.10, v5.0.5].
    - Can only install one of: symfony/console[v3.3.11, v5.0.5].
    - Can only install one of: symfony/console[v3.3.12, v5.0.5].
    - Can only install one of: symfony/console[v3.3.13, v5.0.5].
    - Can only install one of: symfony/console[v3.3.14, v5.0.5].
    - Can only install one of: symfony/console[v3.3.15, v5.0.5].
    - Can only install one of: symfony/console[v3.3.16, v5.0.5].
    - Can only install one of: symfony/console[v3.3.17, v5.0.5].
    - Can only install one of: symfony/console[v3.3.18, v5.0.5].
    - Can only install one of: symfony/console[v3.3.2, v5.0.5].
    - Can only install one of: symfony/console[v3.3.3, v5.0.5].
    - Can only install one of: symfony/console[v3.3.4, v5.0.5].
    - Can only install one of: symfony/console[v3.3.5, v5.0.5].
    - Can only install one of: symfony/console[v3.3.6, v5.0.5].
    - Can only install one of: symfony/console[v3.3.7, v5.0.5].
    - Can only install one of: symfony/console[v3.3.8, v5.0.5].
    - Can only install one of: symfony/console[v3.3.9, v5.0.5].
    - Can only install one of: symfony/console[v3.4.0, v5.0.5].
    - Can only install one of: symfony/console[v3.4.1, v5.0.5].
    - Can only install one of: symfony/console[v3.4.10, v5.0.5].
    - Can only install one of: symfony/console[v3.4.11, v5.0.5].
    - Can only install one of: symfony/console[v3.4.12, v5.0.5].
    - Can only install one of: symfony/console[v3.4.13, v5.0.5].
    - Can only install one of: symfony/console[v3.4.14, v5.0.5].
    - Can only install one of: symfony/console[v3.4.15, v5.0.5].
    - Can only install one of: symfony/console[v3.4.16, v5.0.5].
    - Can only install one of: symfony/console[v3.4.17, v5.0.5].
    - Can only install one of: symfony/console[v3.4.18, v5.0.5].
    - Can only install one of: symfony/console[v3.4.19, v5.0.5].
    - Can only install one of: symfony/console[v3.4.2, v5.0.5].
    - Can only install one of: symfony/console[v3.4.20, v5.0.5].
    - Can only install one of: symfony/console[v3.4.21, v5.0.5].
    - Can only install one of: symfony/console[v3.4.22, v5.0.5].
    - Can only install one of: symfony/console[v3.4.23, v5.0.5].
    - Can only install one of: symfony/console[v3.4.24, v5.0.5].
    - Can only install one of: symfony/console[v3.4.25, v5.0.5].
    - Can only install one of: symfony/console[v3.4.26, v5.0.5].
    - Can only install one of: symfony/console[v3.4.27, v5.0.5].
    - Can only install one of: symfony/console[v3.4.28, v5.0.5].
    - Can only install one of: symfony/console[v3.4.29, v5.0.5].
    - Can only install one of: symfony/console[v3.4.3, v5.0.5].
    - Can only install one of: symfony/console[v3.4.30, v5.0.5].
    - Can only install one of: symfony/console[v3.4.31, v5.0.5].
    - Can only install one of: symfony/console[v3.4.32, v5.0.5].
    - Can only install one of: symfony/console[v3.4.33, v5.0.5].
    - Can only install one of: symfony/console[v3.4.34, v5.0.5].
    - Can only install one of: symfony/console[v3.4.35, v5.0.5].
    - Can only install one of: symfony/console[v3.4.36, v5.0.5].
    - Can only install one of: symfony/console[v3.4.37, v5.0.5].
    - Can only install one of: symfony/console[v3.4.38, v5.0.5].
    - Can only install one of: symfony/console[v3.4.4, v5.0.5].
    - Can only install one of: symfony/console[v3.4.5, v5.0.5].
    - Can only install one of: symfony/console[v3.4.6, v5.0.5].
    - Can only install one of: symfony/console[v3.4.7, v5.0.5].
    - Can only install one of: symfony/console[v3.4.8, v5.0.5].
    - Can only install one of: symfony/console[v3.4.9, v5.0.5].
    - Can only install one of: symfony/console[v4.0.0, v5.0.5].
    - Can only install one of: symfony/console[v4.0.1, v5.0.5].
    - Can only install one of: symfony/console[v4.0.10, v5.0.5].
    - Can only install one of: symfony/console[v4.0.11, v5.0.5].
    - Can only install one of: symfony/console[v4.0.12, v5.0.5].
    - Can only install one of: symfony/console[v4.0.13, v5.0.5].
    - Can only install one of: symfony/console[v4.0.14, v5.0.5].
    - Can only install one of: symfony/console[v4.0.15, v5.0.5].
    - Can only install one of: symfony/console[v4.0.2, v5.0.5].
    - Can only install one of: symfony/console[v4.0.3, v5.0.5].
    - Can only install one of: symfony/console[v4.0.4, v5.0.5].
    - Can only install one of: symfony/console[v4.0.5, v5.0.5].
    - Can only install one of: symfony/console[v4.0.6, v5.0.5].
    - Can only install one of: symfony/console[v4.0.7, v5.0.5].
    - Can only install one of: symfony/console[v4.0.8, v5.0.5].
    - Can only install one of: symfony/console[v4.0.9, v5.0.5].
    - Can only install one of: symfony/console[v4.1.0, v5.0.5].
    - Can only install one of: symfony/console[v4.1.1, v5.0.5].
    - Can only install one of: symfony/console[v4.1.10, v5.0.5].
    - Can only install one of: symfony/console[v4.1.11, v5.0.5].
    - Can only install one of: symfony/console[v4.1.12, v5.0.5].
    - Can only install one of: symfony/console[v4.1.2, v5.0.5].
    - Can only install one of: symfony/console[v4.1.3, v5.0.5].
    - Can only install one of: symfony/console[v4.1.4, v5.0.5].
    - Can only install one of: symfony/console[v4.1.5, v5.0.5].
    - Can only install one of: symfony/console[v4.1.6, v5.0.5].
    - Can only install one of: symfony/console[v4.1.7, v5.0.5].
    - Can only install one of: symfony/console[v4.1.8, v5.0.5].
    - Can only install one of: symfony/console[v4.1.9, v5.0.5].
    - Can only install one of: symfony/console[v4.2.0, v5.0.5].
    - Can only install one of: symfony/console[v4.2.1, v5.0.5].
    - Can only install one of: symfony/console[v4.2.10, v5.0.5].
    - Can only install one of: symfony/console[v4.2.11, v5.0.5].
    - Can only install one of: symfony/console[v4.2.12, v5.0.5].
    - Can only install one of: symfony/console[v4.2.2, v5.0.5].
    - Can only install one of: symfony/console[v4.2.3, v5.0.5].
    - Can only install one of: symfony/console[v4.2.4, v5.0.5].
    - Can only install one of: symfony/console[v4.2.5, v5.0.5].
    - Can only install one of: symfony/console[v4.2.6, v5.0.5].
    - Can only install one of: symfony/console[v4.2.7, v5.0.5].
    - Can only install one of: symfony/console[v4.2.8, v5.0.5].
    - Can only install one of: symfony/console[v4.2.9, v5.0.5].
    - Can only install one of: symfony/console[v4.3.0, v5.0.5].
    - Can only install one of: symfony/console[v4.3.1, v5.0.5].
    - Can only install one of: symfony/console[v4.3.2, v5.0.5].
    - Can only install one of: symfony/console[v4.3.3, v5.0.5].
    - Can only install one of: symfony/console[v4.3.4, v5.0.5].
    - Installation request for symfony/console (locked at v5.0.5) -> satisfiable by symfony/console[v5.0.5].

Installation failed, reverting ./composer.json to its original content.

@iciantoine
Copy link

Hello! Do you have any update on this?

@greg-1-anderson
Copy link
Member

There were a couple dependencies keeping us from doing this. Fixed one and removed coveralls; that allowed me to create a PR to try it.

@greg-1-anderson
Copy link
Member

See #940 for comments on things that need to be fixed for Symfony 5 support in Robo.

@Sinevia
Copy link

Sinevia commented Apr 13, 2020

Can it be check that constrains are loosened so that when Symphony 6/7/8/etc comes there is no need to update again, if there are no breaking changes? If it takes 6 months for such a relatively minor update we risk Robo to be unusable for quite some time during any update of Symphony. Or even look at revising the requirement of so many dependencies on external libraries?

@greg-1-anderson
Copy link
Member

How would we know if the current version of Robo worked on Symfony 6 prior to its release?

Note that code changes to Robo are required for Symfony 5 compatibility.

@Sinevia
Copy link

Sinevia commented Apr 13, 2020

Excellent point. Which is why I would say removing the dependency is probably the best way forward. For instance can the Symphony code be downloaded and added to the Robo namespace?

@greg-1-anderson
Copy link
Member

If it takes 6 months for such a relatively minor update

How long an update takes is dependent upon how important it is. Robo is open source; folks can submit PRs for Symfony 5 compatibility if they need it.

we risk Robo to be unusable for quite some time during any update of Symphony.

Robo is not unusable during a Symfony update; you may continue using Robo with the supported version of Symfony.

Making a private copy of Symfony in Robo is not a good solution. It is a feature that Robo uses Symfony, and is therefore interoperable with any additional Symfony-based package you might want to include and use with Robo, e.g. passing a Symfony object from Robo to an external API.

@iciantoine
Copy link

iciantoine commented Apr 14, 2020

Robo is not unusable during a Symfony update; you may continue using Robo with the supported version of Symfony.

It is! I upgraded to SF5 and symfony packages are now required in 5.0.x versions so I can't install Robo anymore

@greg-1-anderson
Copy link
Member

Maybe more folks should submit pull requests fixing SF5 issues if upgrading is important.

@lesichkovm
Copy link

I second @iciantoine and its a very valid point because Robo is quite an important tool and lots of people rely on it.

@greg-1-anderson
Copy link
Member

Awesome. Two votes in favor of more community involvement with creating PRs to keep things up to date.

@c33s
Copy link
Contributor

c33s commented Apr 14, 2020

my personal opinion is not to directly depend on robo in a project. use robo.phar with its own dependencies in a different folder.

robo is a ci-, deploy-, taskrun-, ...-tool. for me its like a binary file which dos stuff. i don't want my project to break just because a tool written in for example c changed its dependencies. the same way i look at robo.

in my project there is a .robo folder where a separate composer.yaml file exists which has all the dependencies for ci tools like twigcs, phpcsfixer, robo,... all tools which are there for ensure code standards or deployment helper.

in my opinion this tool dependencies must not interfer with the project dependencies or you end up in dependency hell.

the readme ist not up to date (only used by me and @vworldat but i think you will get a direction https://gitlab.com/c33s-group/robofile/-/blob/master/README.md

@greg-1-anderson
Copy link
Member

c33s's model is the best; if you are not using Robo to build your application (c.f. Drush, Terminus), then you should just use a separate application, bundled with the task plugins you need.

@greg-1-anderson
Copy link
Member

Many issues fixed in #205, but a few remain.

@greg-1-anderson
Copy link
Member

This should largely be fixed by the 2.1.0 release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

7 participants