[5.5] Fixes issue with multiple dont-discover packages #22443
Merged
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.
Currently the
PackageManefest::build()
process will only honor the firstdont-discover
that it encounters, ignoring the rest.This is because array union (+=) doesn't work as the original author intended. Instead, using
array_merge
will produce a complete list of packages to ignore.Adding this use case in
/fixtures/vendor/composer/installed.json
, breaks theFoundationPackageManifestTest::testAssetLoading()
unit test as expected, and the provided fix resolves the issue making the test pass again.