-
-
Notifications
You must be signed in to change notification settings - Fork 172
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
Fix up Fluent provider for Sendable-correct FluentKit #774
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #774 +/- ##
==========================================
- Coverage 60.10% 59.84% -0.27%
==========================================
Files 15 15
Lines 386 381 -5
==========================================
- Hits 232 228 -4
+ Misses 154 153 -1
|
.enableUpcomingFeature("IsolatedDefaultValues"), | ||
.enableUpcomingFeature("GlobalConcurrency"), | ||
.enableUpcomingFeature("StrictConcurrency"), | ||
.enableExperimentalFeature("StrictConcurrency=complete"), |
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.
You did it the other way around. You should remove strict concurrency from here and add existential any, since this is for Swift 5.8.
Also you don't need to use the upcoming StrictConcurrency flag. They did upgrade the flag to an upcoming feature for Swift 5.10, but it's backward compatible.
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.
No. The only reason the Swift 5.9 manifest exists is because it's unsafe to use ExistentialAny
with 5.8 (SwiftPM had a bug in 5.8 which caused the setting to virally propagate to anything using the package). StrictConcurrency
, on the other hand, is harmless in 5.8 - yes, it's also ineffectual, but I leave it in to avoid having more of a disconnect than necessary between the two manifests (simplifies dealing with it next time there's a version bump). And yes, I'm aware of the dual flag being unnecessary, but I've used it elsewhere so I'm using it here, if you don't like it go open PRs against the other five repos I've copy-pasted this to 😛
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.
Alright, fine. 😛
These changes are now available in 4.10.0
Updates the Fluent provider for the 1.48.0 release of FluentKit, which adds mostly-complete
Sendable
-correctness. Also bumps minimum Swift version to 5.8, matching FluentKit.