diff --git a/UPGRADING.md b/UPGRADING.md index 767e293871e..db8e1da6017 100644 --- a/UPGRADING.md +++ b/UPGRADING.md @@ -3,6 +3,8 @@ - The minimum PHP version was raised to PHP 8.1.17. +- Dictionaries were refactored and are now automatically generated and validated with the new `bin/gen_callmap.sh` script, see [here »](https://psalm.dev/docs/contributing/editing_callmaps/) for the full documentation. + - [BC] The configuration settings `ignoreInternalFunctionFalseReturn` and `ignoreInternalFunctionNullReturn` are now defaulted to `false` - [BC] Switched the internal representation of `list` and `non-empty-list` from the TList and TNonEmptyList classes to an unsealed list shape: the TList, TNonEmptyList and TCallableList classes were removed. @@ -12,7 +14,7 @@ - [BC] The only optional boolean parameter of `TKeyedArray::getGenericArrayType` was removed, and was replaced with a string parameter with a different meaning. - [BC] The `TDependentListKey` type was removed and replaced with an optional property of the `TIntRange` type. -- + - [BC] `TCallableArray` and `TCallableList` removed and replaced with `TCallableKeyedArray`. - [BC] Class `Psalm\Issue\MixedInferredReturnType` was removed diff --git a/composer.json b/composer.json index 6d3691cf1b4..eb6be456124 100644 --- a/composer.json +++ b/composer.json @@ -54,7 +54,7 @@ "phpstan/phpdoc-parser": "^1.6", "phpunit/phpunit": "^9.6", "psalm/plugin-mockery": "^1.1", - "psalm/plugin-phpunit": "^0.18", + "psalm/plugin-phpunit": "^0.19", "slevomat/coding-standard": "^8.4", "squizlabs/php_codesniffer": "^3.6", "symfony/process": "^4.4 || ^5.0 || ^6.0 || ^7.0" diff --git a/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php b/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php index 078c8403771..6fcf8ac0730 100644 --- a/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php +++ b/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php @@ -193,7 +193,7 @@ final class ProjectAnalyzer private const PHP_VERSION_REGEX = '^(0|[1-9]\d*)\.(0|[1-9]\d*)(?:\..*)?$'; - private const PHP_SUPPORTED_VERSIONS_REGEX = '^(5\.[456]|7\.[01234]|8\.[0123])(\..*)?$'; + private const PHP_SUPPORTED_VERSIONS_REGEX = '^(5\.[456]|7\.[01234]|8\.[01234])(\..*)?$'; /** * @param array $generated_report_options diff --git a/src/Psalm/Internal/CliUtils.php b/src/Psalm/Internal/CliUtils.php index a5d5e977ab3..6b0d6bb3e44 100644 --- a/src/Psalm/Internal/CliUtils.php +++ b/src/Psalm/Internal/CliUtils.php @@ -517,6 +517,7 @@ public static function runningInCI(): bool || isset($_SERVER['JENKINS_URL']) || isset($_SERVER['SCRUTINIZER']) || isset($_SERVER['GITLAB_CI']) + || isset($_SERVER['CI']) || isset($_SERVER['GITHUB_WORKFLOW']) || isset($_SERVER['DRONE']); }