Make package safe for Swift 6#50
Merged
MihaelIsaev merged 4 commits intoMihaelIsaev:masterfrom Nov 9, 2024
Merged
Conversation
0xTim
approved these changes
Nov 8, 2024
MihaelIsaev
reviewed
Nov 8, 2024
MihaelIsaev
reviewed
Nov 8, 2024
MihaelIsaev
reviewed
Nov 8, 2024
MihaelIsaev
reviewed
Nov 8, 2024
Contributor
Author
|
@MihaelIsaev there's a |
Owner
MihaelIsaev
approved these changes
Nov 8, 2024
Owner
|
@ptoffy Have you tried it in action with Swift 6? I don’t have a chance to test it right now, but if everything works well, I’m ready to merge and tag it as v3. |
Owner
|
@ptoffy Have you tried it in action with Swift 6? |
Contributor
Author
|
Sorry @MihaelIsaev missed this. I have barely tried it locally and yet have to try it in a staging/prod environment, it will likely be this week. I'd suggest tagging a beta for now |
Owner
|
@ptoffy Thank you very much for your contribution! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
So after #48 and the introduction of Swift 6, some
@unchecked Sendableannotations were added. While this compiles, it's not the correct way to approach the safety concerns introduced by Swift 6. This PR attempts to fix that by (over?)annotating the package withSendable. I think this is a thing that should be done before releasing the latest major version as we're free to make breaking changes.The PR is currently in a semi-finished state as it should work as it is, but it's difficult to tell without tests. I also think that some improvements can be made to this solution as we do still have a few
classes and mutable state around but I'm open to discussions about itAlso adds a build workflow for main and PRs