1
0
Fork 0

Better error message for present but incompatible versions

hhvm-nightly (and next week's release) now report 4.x, so all the 3.x
constraints are now giving misleading error messages with this patch.

Before:

```
    - facebook/fbexpect v2.3.0 requires hhvm ^3.28 -> you are running this with PHP and not HHVM.
```

After:

```
    - facebook/fbexpect v2.3.0 requires hhvm ^3.28 -> your HHVM version (4.0.0-dev) does not satisfy that requirement.
```
pull/7913/head
Fred Emmott 2019-02-06 12:51:30 -08:00
parent bac2ef3dfd
commit 17788c76f6
No known key found for this signature in database
GPG Key ID: 06C22A9D789FCA28
1 changed files with 9 additions and 4 deletions

View File

@ -175,13 +175,18 @@ abstract class Rule
return $text . ' -> your HHVM version does not satisfy that requirement.';
}
if ($targetName === 'hhvm') {
return $text . ' -> you are running this with PHP and not HHVM.';
}
$packages = $pool->whatProvides($targetName);
$package = count($packages) ? current($packages) : phpversion();
if ($targetName === 'hhvm') {
if ($package instanceof CompletePackage) {
return $text . ' -> your HHVM version ('.$package->getPrettyVersion().') does not satisfy that requirement.';
} else {
return $text . ' -> you are running this with PHP and not HHVM.';
}
}
if (!($package instanceof CompletePackage)) {
return $text . ' -> your PHP version ('.phpversion().') does not satisfy that requirement.';
}