You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Upon inspection, composer.json actually has two slightly contradictory statements:
require: php is >=7.1.3
config: platform: php is 7.2.28.
It could make sense if the intent is to offer different levels of support for different scenarios, eg
Downstream consumers who use robo as a library - for which the minimum is 7.1.
Downstream consumers who use robo as an application/PHAR - for which the minimum is 7.2.
Note: I locally edited the config: platform: php to pin to 7.1.3 and cleared composer.lock / vendor. Given appropriate dependencies, ./robo --help was fine.
If the intent is to consistently support PHP 7.1+, then change config: platform: php to 7.1.
If the intent is to consistently support PHP 7.2+, then change require: php to 7.2.
If the intent is to some kind of mixed-support situation, then keep composer.json -- but update the application's entrypoint (./robo?) to check the version and give an error message to explain the mixed-support.
The text was updated successfully, but these errors were encountered:
I clarified the PHP version support intentions in the README. The platform.php setting is 7.2 because that is the PHP version required by Symfony 5. Symfony 4 and PHP 7.1 are also supported when using Robo as a library.
The disposition of PHP version support is a bit confusing. I was expecting it to work on 7.1.3+ b/c
composer.json
pointed to that version.Below are a couple different procedures to see the confusion.
Steps to reproduce (A)
robo.phar
(2.1.0).robo --help
Expected behavior (A)
Show help screen
Actual behavior (A)
Upon inspection, the PHAR file is missing the
stream_isatty()
polyfill fromsymfony/polyfill-php72
.Steps to reproduce (B)
https://github.com/consolidation/Robo/
composer install
./robo --help
Expected behavior (B)
Show help screen
Actual behavior (B)
Upon inspection,
composer.json
actually has two slightly contradictory statements:require: php
is>=7.1.3
config: platform: php
is7.2.28
.It could make sense if the intent is to offer different levels of support for different scenarios, eg
robo
as a library - for which the minimum is 7.1.robo
as an application/PHAR - for which the minimum is 7.2.Note: I locally edited the
config: platform: php
to pin to7.1.3
and clearedcomposer.lock
/vendor
. Given appropriate dependencies,./robo --help
was fine.System Configuration
Suggestions
config: platform: php
to 7.1.require: php
to 7.2.composer.json
-- but update the application's entrypoint (./robo
?) to check the version and give an error message to explain the mixed-support.The text was updated successfully, but these errors were encountered: