Fix GlobalState collection to ignore the Composer proxy #4846
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes composer/composer#10387
Composer 2.2 introduces some additional indirection for binaries to allow everyone to use custom PHP versions e.g.
php7.4 vendor/bin/phpunit
and ensure thatvendor/phpunit/phpunit/phpunit
is executed with php7.4 always (this previously worked only in cases/platforms where symlinks were supported).Ideally this would be fixed in older PHPUnit versions too if possible.. The patch applies down to PHPUnit 4.x as far as I can tell.
I can workaround it to some extent in Composer using the global var
__PHPUNIT_ISOLATION_BLACKLIST
/__PHPUNIT_ISOLATION_EXCLUDE_LIST
to mark the included (vendor/phpunit/phpunit/phpunit) file excluded but that is only going to fix it for PHPUnit 6+, and I am not sure how reliable that is going to be in the wild if third party code blindly overwrites the global instead of merging their values into it.