This repository has been archived by the owner on Nov 27, 2023. It is now read-only.
Releases: chris-araman/CombineCloudKit
Releases · chris-araman/CombineCloudKit
1.0.2: Remove Dependencies
📦 Removed a dependency on swift-format
, as it's used only during development. Swift Package Manager doesn't yet provide a way to distinguish development dependencies.
1.0.1: Swift 5.5
This release brings support for Swift 5.5 and Xcode 13, including Mac Catalyst 13.
Test Improvement:
- Recorder: make use of XCTestCase.expectation
Build Dependency Bumps:
- CocoaPods 1.11.2
- Jazzy 0.14.1
- swift-format 0.50500.0
Commit History: 1.0.0...1.0.1
1.0.0: ⛅️ Initial Release
Broad Support
CombineCloudKit is supported everywhere Combine is supported.
- Swift 5.1 and later
- Xcode 11 and later
- macOS 10.15 and later
- iOS and iPadOS 13 and later
- tvOS 13 and later
- watchOS 6 and later
Testing of CombineCloudKit on watchOS requires Swift 5.4 or later and watchOS 7.4 or later.
There is also preliminary support for the as-yet-unreleased Swift 5.5 and Xcode 13, including support for Mac Catalyst 13.
Metrics
Documentation: 💯%
Code Coverage: > 98%
Changes since 0.5.1
Features:
- Add support for
RecordSavePolicy
andclientChangeTokenData
inCCKDatabase.save
- Documentation changes in preparation for Xcode 13's DocC
Test Improvements:
- Added a series of
ErrorInjectionTests
to insure errors are propagated to callers - Implemented
DecisionSpace
to deterministically enumerate and test each error path - Improve coverage of
QueryPublisher
- Remove dependency on @groue/CombineExpectations
Infrastructure Improvements:
- Continuous Integration improvements with @mxcl/xcodebuild
- Lint Markdown and YAML with @prettier/prettier
Reliable Output
- 🐛 Fixed an issue that caused some publishers to occasionally complete before publishing output:
CCKContainer.accountStatus
CCKDatabase.deleteAtBackgroundPriority
CCKDatabase.fetchAtBackgroundPriority
CCKDatabase.saveAtBackgroundPriority
Code Coverage
- ♻️
Progress
now conforms to theRawRepresentable
protocol - ⚖️ Several extension methods we refactored to reduce code duplication
- ⚙️ Added more unit tests and mocks
- 🔍 93% code coverage
Public Protocols
- 📚 Publish and document
CCKContainer
andCCKDatabase
protocols - ♻️ Refactor mocks
- 🔍 70% code coverage
Dependency Injection
- 🦜 Unit tests for many operations, injecting mocked
CKContainer
,CKDatabase
andCKDatabaseOperation
classes.- 🔍 Code Coverage: 69%
- 🐛 FIX: defer output until after a subscription is received
- ⬆️ CombineExpectations 0.9.0
Continuous Integration
- Build and test across a wide matrix of supported platforms, Swift releases, and Xcode releases
- Code coverage infrastructure
- Lint automation
- Documentation improvements
Declare CocoaPods Test Spec
0.2.1 0.2.1: Declare CocoaPods Test Spec
Support CocoaPods
0.2.0 0.2.0: Support CocoaPods