When running phan on core or extensions with a php7.4 it can shows some suggestion for the code which are not usable, because CI is running with 7.2 as current required version.
Example:
PhanPluginDuplicateExpressionAssignmentOperation Can simplify this assignment to $attributes['class'] ??= '' (requires php version 7.4 or newer)
Should the config have '_target_php_version' or 'minimum__target_php_version'?
// The PHP version that the codebase will be checked for compatibility against. // For best results, the PHP binary used to run Phan should have the same PHP version. // (Phan relies on Reflection for some types, param counts, // and checks for undefined classes/methods/functions) // // Supported values: `'5.6'`, `'7.0'`, `'7.1'`, `'7.2'`, `'7.3'`, `'7.4'`, `null`. // If this is set to `null`, // then Phan assumes the PHP version which is closest to the minor version // of the php executable used to execute Phan. // // Note that the **only** effect of choosing `'5.6'` is to infer that functions removed in php 7.0 exist. // (See `backward_compatibility_checks` for additional options) '_target_php_version' => null, // The PHP version that will be used for feature/syntax compatibility warnings. // // Supported values: `'5.6'`, `'7.0'`, `'7.1'`, `'7.2'`, `'7.3'`, `'7.4'`, `null`. // If this is set to `null`, Phan will first attempt to infer the value from // the project's composer.json's `{"require": {"php": "version range"}}` if possible. // If that could not be determined, then Phan assumes `_target_php_version`. 'minimum__target_php_version' => null,