SDK Guides
Swift

Release Notes: Swift v4.5

Swift Version 4.5.4

Fixed

Intermittent crash when syncing over Bluetooth LE GATT with "DataTooLarge" error (#9789)

Swift Version 4.5.3

Synchronized version bump release — no changes

Swift Version 4.5.2

Synchronized version bump release — no changes

Swift Version 4.5.1

Added

  • Support for light JWTs (separating identity data)

Fixed

  • A potential panic if an f64::Nan is compared to a u64 or i64 during collation
  • Swift SDK would report as being Objective-C via Small Peer Info in the portal

Swift Version 4.5.0



This version drops support for iOS 13 and earlier. All devices that support iOS 13 also support iOS 14 and iOS 15. (#9842)



Added

  • Ditto.version class property providing access to the semantic version of the SDK. (#10223)
  • class DittoQueryResultItem representing a single match of a DQL query. (#10319, #10394)
  • class DittoQueryResult representing the result of executing a DQL query. (#10319, #10394)
  • method execute() on DittoStore that executes a DQL query and returns a DittoQueryResult containig DittoQueryResultItems for each match. (#10319, #10394)
  • class DittoSyncSubscription that configures Ditto to receive updates from remote peers about documents matching the subscription's query. It's a DQL counterpart and successor to the old Subscription class. (#10395, #10394)
  • method registerSubscription() on DittoSync that installs and returns a SyncSubscription. (#10395, #10394)
  • property subscriptions on DittoSync providing access to all currently active sync subscriptions. (#10395, #10394)
  • property sync on Ditto of type DittoSync to serve as an entry point for sync functionality. (#10395, #10394)
  • class DittoStoreObserver on DittoStore that configures Ditto to invoke an observation handler whenever results for its query change. (#10396, #10394)
  • method registerObserver() on DittoStore that installs and returns a DittoStoreObserver. (#10396, #10394)
  • property observers on DittoStore providing access to all currently active store observers. (#10396, #10394)

Deprecated

  • DittoLANConfig.isMulticastEnabled property.. (#10126)

Changed

  • Ditto SDK is built and tested with Xcode 14.3.1. (#10177)

Improved

  • Performance by implementing bipartite distance-aware mesh topology. (#10632)
  • Memory usage and performance of Documents. (#10736)
  • Reduced metadata accumulation after eviction by clearing remote summaries. (#7065)
  • Serialization performance. (#9112)

Fixed

  • Made logging more robust to failed writes in a specific set of circumstances. (#10077)
  • Addressed a warning from SQLite that sometimes occurs on startup about a schema change. (#10501)
  • Presence graph may not show all active connections. (#10507)
  • When observing peers, isConnectedToDittoCloud property may be incorrect. (#10534)
  • initial logging events now use the same format as all other logs. (#10611)
  • mesh could choose random connections. (#10711)
  • A bug with Ditto's internal crash handler. (#10022)