-
Notifications
You must be signed in to change notification settings - Fork 459
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
Swift 6 concurrency error on _StorageClass.defaultInstance
#1729
Comments
@FranzBusch @gjcairo fyi - since I think you all mentioned working on full Swift 6 language mode. I guess starting with generated code would unblock folks first. While #1561 might be sorta large to pull off in a non breaking way, I do wonder if that resolves a lot of this since I think the name map could get a lot simpler (no need for interning, etc.) |
@tbkka fyi also |
I agree tackling the generated code is the most important thing. I do think we need to do all of this in a non-breaking way for now. Right now we are working through our other repos to make sure they compile without errors in Swift 6. |
We can upgrade to the Swift 6 toolchain separately; need some fixes in SwiftProtobuf first (like apple/swift-protobuf#1729). --------- Signed-off-by: Michael Rebello <[email protected]>
Do you have any idea of how soon this repo can be made compatible with Swift 6? We have a library that depends on this repo, and we're nearing a v1.0 release for it. We were hoping the v1.0 release could use Swift 6, but this issue is a blocker for that. |
I think it'd be very helpful to get a complete list of Swift 6 issues you see. The specific concurrency issue here should be solveable using |
Can someone that is seeing this issue see if they can recreated it by modifying #1737? I made attempt at ensuring the generate file had the Storage and also enabling v6 language mode on the packages, but I can't seem to get the warnings/errors in the new CI step. |
@Lukasa Manually changing that line to
@thomasvl I wonder if this could be related to the fact that CI is running on |
On my Mac with Xcode 16.2 installed, using the github main branch, |
@rebello95 skimming back through, I don't think it was said, what version of SwiftProtobuf are you pulling in? Are you maybe on an older release? |
I'm seeing this on 1.28.2. It's reproducible on this commit when trying to build the Connect-Swift project in Xcode 16.2. |
That commit is changing the main |
Ah, I dug through all the config files in the connect-swift project after reading your comment and noticed that one of them was still running on 1.25.2 instead of 1.28.2 🤦🏽 so importantly it was missing the changes from 3bc7630. I was able to get it working by updating that in connectrpc/connect-swift#331. I apologize for the unnecessary concern. Thank you for your help with this @thomasvl 🙏🏽 |
After some discussion in apple/swift-protobuf#1729, I noticed that the compilation error when building with Swift 6 is actually an issue with the config in `Tests/UnitTests/ConnectLibraryTests/buf.gen.yaml` which was still running on `1.25.2` instead of `1.28.2` like other parts of the project. Changes in this PR: - Updates that directory to run on `1.28.2` which includes apple/swift-protobuf@3bc7630 and resolves the problem described in the aforementioned issue - Switches CI to use Xcode 16.2 and macOS 15 - Switches our `Package.swift` to use Swift 6 when available via `swiftLanguageVersions: [.version("6"), .v5]` - Updates the Eliza SPM app to use Swift 6 This is related to #310, but we will not be able to actually implement those until we fully switch to using Swift 6 (a breaking change). --------- Signed-off-by: Michael Rebello <[email protected]>
When building with Xcode 16.0 and the Swift 6 toolchain, the following error occurs with a generated
_StorageClass
type:I read through #1560 which discussed this a bit, but based on this comment I opted to open a new issue.
This can reproduced on this Connect-Swift branch, but I think this is an issue with any generated
_StorageClass
when building with Swift 6.The text was updated successfully, but these errors were encountered: