Reputation: 1182
After upgrade to php8 I have a problem with php-cs-fixer
which I installed globally via composer. Right now I can not use php-cs-fixer
because every time I get:
PHP needs to be a minimum version of PHP 5.6.0 and maximum version of PHP 7.4.*.
To ignore this requirement please set `PHP_CS_FIXER_IGNORE_ENV`.
For php upgrade and usage different version of php I use https://github.com/shivammathur/homebrew-php
For previous version of php (7.4) everything works fine.
Upvotes: 9
Views: 17077
Reputation: 36
The PHP_CS_FIXER_IGNORE_ENV environment variable can be used to ignore any environment requirements. This includes requirements like missing PHP extensions, unsupported PHP versions or by using HHVM.
NOTE: Execution may be unstable when used.
PHP_CS_FIXER_IGNORE_ENV=1 php php-cs-fixer.phar fix /path/to/dir
Exit code of the fix command is built using following bit flags:
0 - OK.
1 - General error (or PHP minimal requirement not matched).
4 - Some files have invalid syntax (only in dry-run mode).
8 - Some files need fixing (only in dry-run mode).
16 - Configuration error of the application.
32 - Configuration error of a Fixer.
64 - Exception raised within the application.
Upvotes: 0
Reputation: 71
https://cs.symfony.com/doc/usage.html#environment-options
PHP_CS_FIXER_IGNORE_ENV=1 php php-cs-fixer.phar fix /path/to/dir
Upvotes: 7
Reputation: 1182
The first version of php-cs-fixer to support PHP 8 was Version 2.18 released on 18th Jan 2021.
Upvotes: 8
Reputation: 383
In the file: ./vendor/bin/php-cs-fixer
Remove the code below (starting at line 26):
elseif (!defined('PHP_VERSION_ID') || \PHP_VERSION_ID < 50600 || \PHP_VERSION_ID >= 70500) {
fwrite(STDERR, "PHP needs to be a minimum version of PHP 5.6.0 and maximum version of PHP 7.4.*.\n");
if (getenv('PHP_CS_FIXER_IGNORE_ENV')) {
fwrite(STDERR, "Ignoring environment requirements because `PHP_CS_FIXER_IGNORE_ENV` is set. Execution may be unstable.\n");
} else {
exit(1);
}
}
It's a quick fix, but it will get you back up and running.
Upvotes: -3