-
Notifications
You must be signed in to change notification settings - Fork 216
[Explicit Module Builds] Emit a JSON file that specifies details of explicit Swift module dependencies #133
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 |
Sources/SwiftDriver/Explicit Module Builds/ExplicitModuleBuildHandler.swift
Outdated
Show resolved
Hide resolved
Sources/SwiftDriver/Explicit Module Builds/ExplicitModuleBuildHandler.swift
Outdated
Show resolved
Hide resolved
Sources/SwiftDriver/Explicit Module Builds/ExplicitModuleBuildHandler.swift
Outdated
Show resolved
Hide resolved
Sources/SwiftDriver/Explicit Module Builds/ExplicitModuleBuildHandler.swift
Outdated
Show resolved
Hide resolved
f4eb16b to
d9a63cc
Compare
nkcsgexi
left a comment
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.
Thank you for adopting this so fast!
Sources/SwiftDriver/Explicit Module Builds/ExplicitModuleBuildHandler.swift
Outdated
Show resolved
Hide resolved
| self.sourceInfoPath = sourceInfoPath | ||
| } | ||
|
|
||
| private enum CodingKeys : String, CodingKey { |
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.
We shouldn't need the CodingKeys if we use these keys as the field names.
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 mostly just wanted to stick to the Swift naming convention (Types start with an uppercase letter, variables start with a lowercase latter), but I don't have a strong preference.
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.
That's fair. How about we change the compiler-side to use keys conforming to the Swift naming convention and remove CodingKeys?
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.
Yeah, that'd be great!
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.
Here is the change: swiftlang/swift#32507
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.
@nkcsgexi , I've addressed the comments, but the change now has to wait for swiftlang/swift#32507 to be picked up by the next master snapshot toolchain.
2b83afd to
d0a0da6
Compare
|
@swift-ci please test |
c4b99b8 to
ade77cd
Compare
nkcsgexi
left a comment
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.
Thank you, @artemcm !
c8b256a to
defa4fc
Compare
|
@swift-ci test |
Sources/SwiftDriver/Explicit Module Builds/ExplicitModuleBuildHandler.swift
Outdated
Show resolved
Hide resolved
Sources/SwiftDriver/Explicit Module Builds/ExplicitModuleBuildHandler.swift
Show resolved
Hide resolved
defa4fc to
5cb5a9c
Compare
|
We haven't had a new snapshot toolchain on swift.org for a few days now, and this change has a dependency on one of Xi's changes that was made after the most recent one one was created. So this will need to wait a little bit until it can be tested in the CI. |
5cb5a9c to
b817ead
Compare
|
@swift-ci please test |
1 similar comment
|
@swift-ci please test |
|
@swift-ci test |
|
@swift-ci please test |
…xplicit Swift module dependencies This PR implements the interface expected by the frontend, as built in: swiftlang/swift#32355 swiftlang/swift#32450 Swift module's explicit Swift module dependencies are now encoded in a JSON file, passed with `-explicit-swift-module-map-file` Resolves rdar://problem/64533451
…/input gathering to match swift
b817ead to
33480f2
Compare
|
@swift-ci please test |
1 similar comment
|
@swift-ci please test |
This PR implements the interface expected by the frontend, as built by @nkcsgexi in:
swiftlang/swift#32355
swiftlang/swift#32450
Swift module's explicit Swift module dependencies are now encoded in a JSON file, passed with
-explicit-swift-module-map-file. The key benefit is that now the frontend doesn't need to deserialize the .swiftmodule file just to collect the module's name.Resolves rdar://problem/64533451