You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Changes:
- Update Swift 6 branch announcement to reflect 1.3.0 release
- Add important API note for Xcode 26+ users
- Document performAndWaitWithResult naming change
- Add migration guide for API changes
- Update both English and Chinese READMEs
- Add information about upcoming Version 2.0 development
> **🎉 Current Version (1.3.0) is Swift 6 Compatible**
12
12
>
13
-
> We've created a comprehensive **Swift 6 adaptation** with full concurrency safety, true Sendable compliance, and memory leak fixes. The new version is available in the `swift6-adaptation` branch.
13
+
> The latest release includes comprehensive Swift 6 concurrency improvements:
14
14
>
15
-
> **✨ Key Improvements:**
15
+
> **✨ What's New in 1.3.0:**
16
16
>
17
-
> - 🔒 **True Sendable Compliance** - Not just `@unchecked Sendable`
> Please test the Swift 6 version and [**create an issue**](https://github.com/fatbobman/PersistentHistoryTrackingKit/issues) with your feedback. We'll merge it to main once we have sufficient real-world validation.
32
+
>**🔜 Looking ahead:**
33
33
>
34
-
>**📖 Full Documentation:** [Swift 6 Branch README](https://github.com/fatbobman/PersistentHistoryTrackingKit/blob/swift6-adaptation/README.md)
34
+
> We're actively developing **Version 2.0** with:
35
+
>
36
+
>- Full Swift 6 strict concurrency mode
37
+
>- iOS 17+ with Actor-based architecture
38
+
>- Built-in Hook callback system
39
+
>- Tombstone mechanism for deleted objects
40
+
>- Complete Sendable safety without `@unchecked`
41
+
>
42
+
> Follow progress in the `feature/swift6-optimization-and-hook-system` branch.
43
+
44
+
## ⚠️ Important API Note for Xcode 26+ Users
45
+
46
+
Version 1.3.0+is fully compatible with Xcode 26 (Swift 6.0)
47
+
48
+
Since Xcode 26 Beta 5, Apple has added a native `performAndWait<T>(_ block:@Sendable () throws-> T) rethrows-> T` method to `NSManagedObjectContext`. To avoid naming conflicts with this system API, we renamed our extension method:
49
+
50
+
### Old (before 1.3.0)
51
+
52
+
```swift
53
+
// ❌ Conflicts with Xcode 26+ system API
54
+
let result =try context.performAndWait { ... }
55
+
```
56
+
57
+
### New (1.3.0+)
58
+
59
+
```swift
60
+
// ✅ Works with all Xcode versions
61
+
let result =try context.performAndWaitWithResult { ... }
62
+
```
63
+
64
+
**Migration:** If you were using the old `performAndWait` extension, simply rename it to `performAndWaitWithResult`. The functionality is identical.
65
+
66
+
For more details, see [Issue #6](https://github.com/fatbobman/PersistentHistoryTrackingKit/issues/6).
0 commit comments