-
-
Notifications
You must be signed in to change notification settings - Fork 1
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
Introduce RWLock, ManagedAsynchronousAccess and DataDescriptor #17
Conversation
@PSchmiedmayer The CI is currently failing as we are still using Xcode 15 as the stable release. I would avoid setting all the GitHub jobs to use the |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #17 +/- ##
==========================================
+ Coverage 83.06% 90.44% +7.38%
==========================================
Files 9 13 +4
Lines 301 596 +295
==========================================
+ Hits 250 539 +289
- Misses 51 57 +6
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report in Codecov by Sentry.
|
69c7af7
to
3d1ac1d
Compare
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.
Amazing; job! Looks great @Supereg!
Introduce RWLock, ManagedAsynchronousAccess and DataDescriptor
♻️ Current situation & Problem
This PR adds the
RWLock
,RecursiveRWLock
andManagedAsynchronousAccess
infrastructure that was previously introduced in SpeziBluetooth (see StanfordSpezi/SpeziBluetooth#45 and StanfordSpezi/SpeziBluetooth#47).This changes require the Swift 6 toolchain. Therefore, we increase the required swift tools version to 6.0.
This PR introduces the final changes for the SpeziFoundation 2.0 release (assuming #16 is merged beforehand).
⚙️ Release Notes
RWLock
andRecursiveRWLock
ManagedAsynchronousAccess
sending
closure withwithTimeout
instead of a@Sendable
one.DataDescriptor
type.📚 Documentation
Updated the documentation catalog, adding a new "Concurrency" topics section.
✅ Testing
Added unit test for the new components.
📝 Code of Conduct & Contributing Guidelines
By submitting creating this pull request, you agree to follow our Code of Conduct and Contributing Guidelines: