-
-
Notifications
You must be signed in to change notification settings - Fork 40
Sendable fixes and other cleanup #135
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
Conversation
…lves a lot of marking things Sendable, or marking things nonisolated(unsafe) in conjunction with a lock. LeafTag.defaultTags remains a distinct problem. Also got rid of the use of NonBlockingFileIO in NIOLeafFiles. Renamed Exports.swift -> Character+Identities.swift.
… of the time than, and at best only equivalent to, just doing .replacing(_:with:) (in 6.0+) or .replacingOccurrences(of:with:) (in 5.10).
…f paths and dates (tests no longer fail for users in DST-active timezones)
…en running anything other than Darwin or a Glibc Linux (i.e. especially not Android)
The failure of the integration tests is spurious; the |
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.
Overall this LGTM, I'd add Vapor's .swift-format
file and formatting CI given all the style changes
…Core, alphabetize)
… exclude instead of resources to silence SwiftPM about the test templates, use the NIO singletons in tests
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.
Couple of minor nits, nothing major
…ascades from it. It is not used and was cluttering up the code to no purpose. Also cleaned up LeafDataStorage a lot in general and removed a chunk of other unused code on it and LeafData.
…f String to Error, we are not stuck with setting the bad example of actually using that conformance. Remove all such instances, using LeafError(.unknownError()) instead.
…l-only testing support methods we don't need (there is no public interface to directly specify an unsearchable source, not sure why sources even have that feature), exclude all performance tests on Android (they break there), get rid of a few unnecessary force-unwraps, get rid of the last usages of .trimmingCharacters(in:)
These changes are now available in 1.13.0
The big changes in this PR are making the code
Sendable
-clean and minimally strict Concurrency-correct (emphasis on "minimally", there's still a bunch of stuff with futures going on). Accordingly with the release of Swift 6.1, the package also now requires a minimum version of Swift 5.10.Additional changes:
EventLoopFuture.wait()
.