Skip to content

Build private swift interface files from stdlib #64587

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

Merged
merged 1 commit into from
Mar 29, 2023

Conversation

etcwilde
Copy link
Contributor

We have various pieces of SPI that are getting used in tests that are failing occasionally (at least for me). The swiftmodule file has the SPI, so if the compiler loads from the swiftmodule file, everything works fine. If the compiler loads the interface from the swiftinterface file, it fails to find the startOnMainActor declaration.

It looks like we produce .private.swiftinterface for swiftsytanx and I don't see -emit-private-swift-interface-path in any of the Swift-Syntax cmake files, so maybe I'm doing this wrong?

We have various pieces of SPI that are getting used in tests that are
failing occasionally. The swiftmodule file has the SPI, so if the
compiler loads from the swiftmodule file, everything works fine. If the
compiler loads the interface from the swiftinterface file, it fails to
find the `startOnMainActor` declaration.
@etcwilde
Copy link
Contributor Author

@swift-ci please test

Copy link
Contributor

@xymus xymus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks good. We should be careful that they're not included in most of our distributed products if we don't want clients outside the Swift projects to rely on unstable SPIs.

@etcwilde
Copy link
Contributor Author

@swift-ci Please Build Toolchain macOS Platform

@etcwilde etcwilde merged commit 8378431 into swiftlang:main Mar 29, 2023
@etcwilde
Copy link
Contributor Author

Toolchain failure:

fatal error: /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: can't write to output file (No space left on device)

@etcwilde etcwilde deleted the ewilde/emit-private-interfaces branch April 2, 2023 05:43
edymtt pushed a commit to edymtt/swift that referenced this pull request May 17, 2023
We have various pieces of SPI that are getting used in tests that are
failing occasionally. The swiftmodule file has the SPI, so if the
compiler loads from the swiftmodule file, everything works fine. If the
compiler loads the interface from the swiftinterface file, it fails to
find the `startOnMainActor` declaration.

Addresses rdar://108900952

(cherry picked from commit 14956ef,
 swiftlang#64587)
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.

2 participants