Use unique out
path for private named tasks - fixes #2107
#2108
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.
This change ensures, we always use the
super
-out
path when we try to store metadata and scratch files for private named tasks. As private tasks can't be seen from other traits/classes in the same module hierarchy, our previous logic to detect potential collisions of the metadata location fails. Hence we now keep theisPrivate
property in the named target.I also added a test case that reproduce the initial issue but now succeeds.
This is a binary compatibility breaking change.
By applying the same approach and tracking also
public
-ness of a target, there is potential to fix also other issues likeThis PR should be merged after
out/
-layout fromfoo.overridden
tofoo.super
#2262