Skip to content
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

Use implementation-only imports #3404

Merged
merged 1 commit into from
Apr 15, 2021
Merged

Use implementation-only imports #3404

merged 1 commit into from
Apr 15, 2021

Conversation

neonichu
Copy link
Contributor

This makes it so compiling a manifest won't require the presence of the Foundation .swiftmodule

This makes it so compiling a manifest won't require the presence of the Foundation .swiftmodule
@neonichu
Copy link
Contributor Author

@swift-ci please smoke test

@abertelrud
Copy link
Contributor

This makes sense to me, and is good cleanup. It wouldn't affect any existing manifests, right, since they would have had to independently import Foundation in order to have access to the symbols? Since PackageDescription wasn't actually reexporting anything. Do I understand that right?

@neonichu
Copy link
Contributor Author

It wouldn't affect any existing manifests, right, since they would have had to independently import Foundation in order to have access to the symbols? Since PackageDescription wasn't actually reexporting anything. Do I understand that right?

Yep, that's right.

@neonichu neonichu merged commit ce50cb0 into main Apr 15, 2021
@neonichu neonichu deleted the impl-only-foundation branch April 15, 2021 00:18
@natecook1000
Copy link
Member

This does impact existing manifests, as apparently some Foundation symbols are exported. For example, the swift-standard-library-preview package manifest uses StringProtocol.capitalized, which is added by Foundation, so this change meant the manifest could no longer be compiled. See: apple/swift-standard-library-preview#4

neonichu added a commit that referenced this pull request May 6, 2021
neonichu added a commit that referenced this pull request May 6, 2021
neonichu added a commit that referenced this pull request Jun 3, 2021
This reverts commit ce50cb0.

(cherry picked from commit 12a6e82)
neonichu added a commit that referenced this pull request Jun 9, 2021
This reverts commit ce50cb0.

(cherry picked from commit 12a6e82)
bitjammer pushed a commit to bitjammer/swift-package-manager that referenced this pull request Jul 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants