feat(core): merge target configurations from plugin results #19935
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.
Current Behavior
If multiple plugins identify the same target on the same project, whichever plugin identified the target last "wins", in that it completely overwrites the already present target.
Since
project.json
is implemented as a plugin, this means the configuration insideproject.json
overwrites the full target block that was identified by any plugin.Expected Behavior
If the already identified target, and the newly found target are "compatible (either only 1 specifies executor, or the executor matches), then we can merge the target configurations.
This enables overwriting 1 or 2 properties in the
project.json
, while inference takes care of the rest.Related Issue(s)
Fixes #