SDK Setup Guides
...
Swift
Release Notes
Ditto v3 for Swift
swift ios updates version changelog
Released: Thu Aug 10th 2023, 7:07 am
Improved
Changed: Improved clarity of error messages when data on disk cannot be read by this version following a downgrade from a newer version of Ditto. (#9267)
Improved
Changed: Print some internal errors in a more human-readable format. (#9495)
Released: Fri Jun 30th 2023, 8:25 pm
Fixed
Fixed: a potential crash if a document attachment was malformed (#9045)
Released: Wed Jun 14th, 2023, 8:23 am
Fixed
Fixed: a crash when using the
Released: Mon May 22nd 2023, 4:34 pm
Improved
Synchronized version bump release
Released: Thu May 18th, 2023, 11:33 pm
Added
Added: dSYMs are now bundled inside the XCFramework to improve crash report symbolication.
Improved
Changed: The dSYMs directory has been removed from the root directory of the CocoaPods artifact since it's no longer required now that dSYMs are bundled inside XCFreameworks.
Released: Fri Apr 7th, 2023, 9:28 am
Fixed
Fixed: Resolved an issue with logging when the stdout is not available.
Released: Wed Mar 15, 2023, 6:00 pm
Fixed
Fixed: Issue where Ditto instance using
Fixed
Fixed: Potential crash on Windows and Linux from invoking
Released: Tue Feb 28, 2023, 9:31 pm
Improved
Changed: some threads spawned by the SDK no longer wait up to 30 seconds before being stopped.
Added
Changed: added more logging when a peer is unable to connect to another peer because of no overlapping supported protocol versions.
Fixed
Fixed: replication hanging under some circumstances, especially WebSocket connections to Big Peer
Fixed
Fixed: canceling subscriptions for queries with args would not work, the subscription would remain active indefinitely.
Fixed
Fixed: some memory leaks.
Released: Fri Jan 27, 2023, 4:10 pm
Improved
Changed: Slow or blocked write transactions now log hints showing the waiting and blocking transactions
Released: Thu Jan 26, 2023, 6:35 am
Fixed
Fixed: an issue that could cause Ditto to hang if more than 500 peers were encountered.
Released: Mon Jan 23, 2023, 10:05 am
Fixed
Resolved an issue where presence evictions could deadlock on startup with large numbers of peers
Released: Fri Jan 20, 2023, 1:20 pm
Fixed
Fixed issue preventing clean Ditto shutdown
Released: Fri Jan 13, 2023, 6:57 pm
Added
Added: DiskUsage class which can be used to monitor disk usage.
Added
Added: diskUsage property to Ditto class for access to a DiskUsage instance.
Added
Added: diskUsagePublisher() method to Ditto class, returning a DiskUsagePublisher.
Added
Added: DiskUsageItem class which contains data about the space used by files in the Ditto working directory.
Improved
Changed: better readability of data sizes and durations in logs.
Released: Fri Dec 16, 2022, 5:38 am
Improved
Removed: the DittoRGA constructor. You cannot create new RGAs.
Improved
Removed: the deprecated DittoMutableRGA type. You cannot mutate existing RGAs.
Improved
Deprecated: DittoDocument.typed<Codable>(as:) method.
Improved
Deprecated: DittoMutableDocument.typed<Codable>(as:) method.
Improved
Deprecated: DittoTypedDocument<Decodable> class.
Improved
Deprecated: DittoCollection.upsert<Encodable>(_,writeStrategy:) method.
Improved
Deprecated: DittoPendingIDSpecificOperation.update<Codable>(using:) method.
Improved
Deprecated: DittoScopedWriteTransaction.upsert<Codable>(_,writeStrategy:) method.
Improved
Deprecated: DittoWriteTransactionPendingIDSpecificOperation.update<Codable>(using:) method.
Improved
Removed: observe() and observeWithNextSignal() methods of DittoPendingCollectionsOperation, DittoPendingCursorOperation, and DittoPendingIDSpecificOperation. Please use the corresponding observeLocal(deliverOn:eventHandler:) and observeLocalWithNextSignal(deliverOn:eventHandler:) variants along with a separate call to subscribe() instead. See https://docs.ditto.live/ios/common/concepts/syncing-data#subscribe
Added
Added: class DittoPresence as entry point for all of presence functionality, accessible via the newly introduced presence property on the Ditto object.
Added
Added: struct DittoPresenceGraph and related sub-types DittoAddress, DittoConnection, DittoConnectionType, and DittoPeer.
Added
Added DittoPresence.GraphPublisher, replaces the now deprecated Ditto.RemotePeersPublisher. You can get a graph publisher via the graphPublisher() on the newly introduced DittoPresence (accessible via newly introduced presence property of Ditto).
Improved
Deprecated: methods observePeers() and observePeersV2() of Ditto, please use observe() of DittoPresence instead (accessible via newly introduced presence property of Ditto).
Improved
Deprecated: DITRemotePeer, replaced by DITPeer.
Improved
Deprecated: DITPeersObserver, replaced by DITObserver protocol.
Improved
Deprecated: DITPeersObserverV2, replaced by DITObserver protocol.
Improved
Deprecated: Ditto.RemotePeersPublisher and corresponding remotePeersPublisher() method on Ditto. Please use newly introduced DittoPresence.GraphPublisher and method graphPublisher() of DittoPresence instead.
Improved
Removed: all persistenceDirectory arguments from all of the identity type constructors.
Improved
Changed: performance improvements.
Added
Added: disableSyncWithV2 method to Ditto. This allows you to explicitly opt-in to disabling the ability to sync with Ditto peers running any version of the SDK in the v2 series of releases. Assuming this succeeds then this peer will only be able to sync with other peers using SDKs in the v3 series of releases. Note that this disabling of sync spreads to peers that sync with a peer that has disabled, or has (transitively) had disabled, syncing with v2 SDK peers.
Improved
Improved: reliability if app crashes occur while persisting authentication data.
Added
Added: statusPublisher() method to DittoAuthenticator.
Added
Added: DittoAuthenticator.StatusPublisher, a Combine publisher for DittoAuthenticationStatus change events.
Improved
Improved: log increased detail to help debug blocked write transactions.
Released: Mon Dec 12, 2022, 5:19 am
Improved
Synchronized version bump release
Released: Tue Dec 6, 2022, 8:01 am
Fixed
Fixed: Incorrect import of DITAddress.h header in DittoObjC, which was causing an issue in DittoSwift.
Improved
Improved: reliability if app crashes occur while persisting authentication data.
Released: Thu Dec 1, 2022, 12:01 pm
Improved
Removed: the DittoRGA constructor. You cannot create new RGAs.
Improved
Removed: the deprecated DittoMutableRGA type. You cannot mutate existing RGAs.
Improved
Deprecated: DittoDocument.typed<Codable>(as:) method.
Improved
Deprecated: DittoMutableDocument.typed<Codable>(as:) method.
Improved
Deprecated: DittoTypedDocument<Decodable> class.
Improved
Deprecated: DittoCollection.upsert<Encodable>(_,writeStrategy:) method.
Improved
Deprecated: DittoPendingIDSpecificOperation.update<Codable>(using:) method.
Improved
Deprecated: DittoScopedWriteTransaction.upsert<Codable>(_,writeStrategy:) method.
Improved
Deprecated: DittoWriteTransactionPendingIDSpecificOperation.update<Codable>(using:) method.
Improved
Removed: observe() and observeWithNextSignal() methods of DittoPendingCollectionsOperation, DittoPendingCursorOperation, and DittoPendingIDSpecificOperation. Please use the corresponding observeLocal(deliverOn:eventHandler:) and observeLocalWithNextSignal(deliverOn:eventHandler:) variants along with a separate call to subscribe() instead. See https://docs.ditto.live/ios/common/concepts/syncing-data#subscribe
Added
Added: class DittoPresence as entry point for all of presence functionality, accessible via the newly introduced presence property on the Ditto object.
Added
Added: struct DittoPresenceGraph and related sub-types DittoAddress, DittoConnection, DittoConnectionType, and DittoPeer.
Added
Added DittoPresence.GraphPublisher, replaces the now deprecated Ditto.RemotePeersPublisher. You can get a graph publisher via the graphPublisher() on the newly introduced DittoPresence (accessible via newly introduced presence property of Ditto).
Improved
Deprecated: methods observePeers() and observePeersV2() of Ditto, please use observe() of DittoPresence instead (accessible via newly introduced presence property of Ditto).
Improved
Deprecated: DITRemotePeer, replaced by DITPeer.
Improved
Deprecated: DITPeersObserver, replaced by DITObserver protocol.
Improved
Deprecated: DITPeersObserverV2, replaced by DITObserver protocol.
Improved
Deprecated: Ditto.RemotePeersPublisher and corresponding remotePeersPublisher() method on Ditto. Please use newly introduced DittoPresence.GraphPublisher and method graphPublisher() of DittoPresence instead.
Improved
Removed: all persistenceDirectory arguments from all of the identity type constructors.
Improved
Changed: performance improvements.
Added
Added disableSyncWithV2 method to Ditto. This allows you to explicitly opt-in to disabling the ability to sync with Ditto peers running any version of the SDK in the v2 series of releases. Assuming this succeeds then this peer will only be able to sync with other peers using SDKs in the v3 series of releases. Note that this disabling of sync spreads to peers that sync with a peer that has disabled, or has (transitively) had disabled, syncing with v2 SDK peers.
Updated 14 Mar 2024
Did this page help you?