Release Notes: C#
Fixed
Intermittent crash when syncing over Bluetooth LE GATT with "DataTooLarge" error (#9789)
Properly cleans up native resources while disposing of a Ditto instance. Trying to access a disposed Ditto instance will now throw an `ObjectDisposedException`. (#11065)
Fixed: Calling `Dispose()` on a DittoQueryResult instance would now directly dispose its Items collection. (#11628)
Fixed
- Bug where certificate request would not check identity data hash with JWT's (#11537)
- Bug where the certificate request would fail with big permissions (#11537)
Fixed
Windows P2P LAN only used IPv4 while advertising the service on IPv6 too (#11308)
Added
- Support for light JWTs (separating identity data) (#11063)
Fixed
- A potential panic if an f64::Nan is compared to a u64 or i64 during collation.
Added
- Support for .NET MAUI for iOS and Android. (#5794)
- Support for Xamarin Android.. (#5082)
- Support for Xamarin iOS Simulators. (#6081)
- Ditto.Version static 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 ExecuteAsync() on DittoStore that executes a DQL query and returns a DittoQueryResult containing 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)
- The SmallPeerInfo property to Ditto allowing you to configure the collection and sync of Small Peer Info. (#10517
Deprecated
- DittoLanConfig.MulticastEnabled property. (#10126)
Changed
- Ditto .NET SDK for iOS and macOS 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
- Bluetooth and LAN transports fail to stop on Windows and Linux. (#8809)
- 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)
Updated 12 Mar 2024
Did this page help you?