-
Notifications
You must be signed in to change notification settings - Fork 204
[Incremental] Obviate the need for a reverse mapping from swiftdeps to swift #728
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@swift-ci please test |
…ping the swift file in the dependency source of the graph nodes
@swift-ci please test |
} | ||
} | ||
self.previous = previous | ||
self.disappeared = disappeared.sorted {$0.name < $1.name} | ||
} | ||
|
||
func isANewInput(_ file: VirtualPath) -> Bool { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can this traffic in handles?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll look into it--good thought!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that changing SourceFile
to only traffic in handles would be a good idea, but it leaks out into other code and it might be better to keep this PR as narrow as reasonable. I'll address this idea in a future PR.
Took a brief pass over this and LGTM. Thanks for fixing up the modeling here. Going to hold off on approving and leave that to @artemcm who can give you a more thorough review. |
Thank you very much for taking a look so quickly. You are welcome. I'll look into your suggestion about using handles. I like it. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a huuuge improvement not just to the model, but to the readability of much of the affected code. Thanks!
let currentSet: Set<VirtualPath.Handle> | ||
|
||
/// Handles of the input files in the previous invocation | ||
private let previous: Set<VirtualPath.Handle> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: Would be nice if this was called previousSet
to match the above property.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yup, done!
@@ -269,12 +269,13 @@ extension IncrementalCompilationState.FirstWaveComputer { | |||
|
|||
return inputsToBeCertainlyRecompiled.reduce(into: Set()) { | |||
speculativelyRecompiledInputs, certainlyRecompiledInput in | |||
let speculativeDependents = moduleDependencyGraph.collectInputsInvalidatedBy(input: certainlyRecompiledInput) | |||
let speculativeDependents = moduleDependencyGraph.collectInputsInvalidatedBy(changedInput: certainlyRecompiledInput) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the names cleanup!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My pleasure!
@artemcm Thank you for the quick review and the kind words. |
@swift-ci please test |
The macOS CI appears broken right now, could this pull be the culprit? No hurry, just reporting it so it can be fixed eventually, cc @drexin. |
I'll take a look!
… On Jun 26, 2021, at 2:15 AM, buttaface ***@***.***> wrote:
The macOS CI appears broken right now <https://ci.swift.org/job/swift-PR-macos/>, could this pull be the culprit? No hurry, just reporting it so it can be fixed eventually, cc @drexin <https://github.com/drexin>.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub <#728 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AADQTUBW2TFUYFJTESZP52DTUWLCVANCNFSM47HDJ74A>.
|
swiftlang/swift#38120 Should fix it as soon as I can test and merge it. I had improved a remark the new driver utters when you pass in -driver-show-incremental.
But I had not fixed the lit test--my bad! Sorry. This PR generalizes the pattern-match.
Thanks
- David
… On Jun 26, 2021, at 9:54 AM, David Ungar ***@***.***> wrote:
I'll take a look!
> On Jun 26, 2021, at 2:15 AM, buttaface ***@***.*** ***@***.***>> wrote:
>
>
> The macOS CI appears broken right now <https://ci.swift.org/job/swift-PR-macos/>, could this pull be the culprit? No hurry, just reporting it so it can be fixed eventually, cc @drexin <https://github.com/drexin>.
>
> —
> You are receiving this because you modified the open/close state.
> Reply to this email directly, view it on GitHub <#728 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AADQTUBW2TFUYFJTESZP52DTUWLCVANCNFSM47HDJ74A>.
>
|
Obviate the need for a reverse mapping from swiftdeps to swift by keeping the swift file in the dependency source of the graph nodes.
Remove
BidirectionalMap
andInputDependencySourceMap
.Bump the minor version number of the priors.
Fixes rdar://77998890