1.0.23
🛡️ Thread Safety & Swift 6 Compatibility
Major Improvements
- Swift 6 Ready: Full compatibility with Swift 6 concurrency model
- Sendable Compliance: Properly implemented Sendable protocol across all network components
- Race Condition Fixes: Eliminated potential data races in concurrent operations
Specific Enhancements
- Added thread-safe property accessors throughout APIClient
- Implemented queue-synchronized collections for requestsToRetry and activeSessions
- Created proper barrier flags for write operations to ensure safety
- Fixed StreamingSessionDelegate to safely handle concurrent data buffer access
- Enhanced SendablePromise with dedicated synchronization queue
- Added proper @unchecked Sendable handling with manual synchronization
- Improved session tracking with thread-safe cleanup
Under the Hood
- Standardized synchronization patterns with queue.sync
- Optimized lock usage to prevent potential deadlocks
- Reduced shared mutable state exposure
This version marks a significant improvement in stability for multi-threaded environments and prepares the framework for Swift 6's stricter concurrency requirements.