Ditto v1 for C++
cpp c plus plus updates version changelog
Released: Fri Sep 9th 2022, 4:11 pm
Release Notes:
- Fixed: a very rare deadlock when running on macOS and starting sync immediately after creating the Ditto instance.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Thu Jul 7th 2022, 12:53 pm
Release Notes:
- Changed: reduced total memory overhead during sync.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Wed Jun 15th 2022, 6:27 pm
Release Notes:
- Changed: reduced CRDT memory overhead.
- Changed: HTTP/WebSocket service now allows any origin for CORS, so it may be used from a webapp on localhost.
- Fixed: a peer using an online identity would fail to sync peer-to-peer after app restarts.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Wed Jun 8th 2022, 8:12 pm
Release Notes:
- Synchronized version bump release
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri Jun 3rd 2022, 12:13 am
Release Notes:
- Fixed: Ditto with
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri May 13th 2022, 7:18 am
Release Notes:
Synchronized version bump release.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Mon May 9th 2022, 5:04 am
Release Notes:
- Fixed: a correctness issue in replication when peer permissions changed in the middle of a replication exchange.
- Fixed: error when querying a collection and there was a type mismatch for a field being used in a comparison in the query.
- Fixed: restarting an app too quickly could lead to multiple connection attempts to rejoin peers in the mesh.
- Fixed: apps using
- Fixed: cloud sync would stop working when setting a newly created transport config.
- Changed: improvements to Ditto mesh performance via fastest-available-transport prioritization.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri Apr 8th 2022, 1:00 am
Release Notes:
- Synchronized version bump release
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Thu Apr 7th 2022, 11:25 pm
Release Notes:
- Changed: improved replication performance in some scenarios.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Tue Mar 22nd 2022, 3:13 am
Release Notes:
- Added: ONLINE_PLAYGROUND_V2 identity type and corresponding OnlinePlaygroundV2Identity allowing for basic authentication for playgrounds
- Deprecated: ONLINE_PLAYGROUND identity type and corresponding OnlinePlaygroundIdentity, use newly added ONLINE_PLAYGROUND_V2 and OnlinePlaygroundV2Identity instead
- Changed: improved const correctness for a lot of the C++ API
- Fixed: document IDs are now validated when synced and removed if invalid (some of our early versions of the SDK stored malformed IDs under certain circumstances)
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Mon Feb 28th 2022, 6:36 am
Release Notes:
- Added: method
- Deprecated: method
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri Feb 11th 2022, 9:38 pm
Release Notes:
- Changed: Optimized the performance of accessing the value of a
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri Jan 28th 2022, 3:21 am
Release Notes:
- Changed: improved peer-to-peer algorithms to create meshes that are more efficient and diverse.
- Changed: improved routing algorithms for more efficiency.
- Changed: improved performance of query parsing.
- Added: accessor
- Added: method
- Added: set of APIs to observe authentication status (see API reference for
- Added: method
- Added: (missing) accessor
- Deprecated: accessors
- Deprecated: methods
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Thu Dec 23rd 2021, 12:42 pm
Release Notes:
- Fixed: collections were not appearing in the data browser under certain permission configurations.
- Fixed: race condition when subscriptions were configured from multiple threads in parallel (sometimes leading to a crash).
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Mon Dec 20th 2021, 5:22 am
Release Notes:
- Reduced the opportunity for rapid memory growth in some scenarios.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Tue Dec 14th 2021, 8:32 am
Release Notes:
- Improve attachment sync performance.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Wed Dec 8th 2021, 9:25 am
Release Notes:
- Fixed an issue where document IDs that were specified inside the document's value as opposed to being specified explicitly (as a separate argument to
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Thu Nov 25th 2021, 4:11 pm
Release Notes:
- Fix an issue with write strategies not working correctly. Unexpected results could occur when performing sequences of operations on documents.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri Nov 19th 2021, 2:39 pm
Release Notes:
- Fix an issue with live queries that involved a limit, no offset, at least one document being deleted, and some other conditions being met. Live queries that met these conditions could report incorrect sets of matching documents.
- Fix an issue that could potentially lead to an infinite loop in the replication system, meaning no sync progress would be made.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri Nov 5th 2021, 3:03 pm
Release Notes:
- Ensure that when performing a
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Wed Oct 27th 2021, 3:33 am
Release Notes:
- Synchronized version bump release
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Mon Oct 25th 2021, 1:31 am
Release Notes:
- Add support for array projections to DittoQL.
- Deprecate the
- Deprecate the
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Mon Oct 18th 2021, 10:02 am
Release Notes:
- Synchronized version bump release
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Mon Oct 18th 2021, 3:00 am
Release Notes:
- Added
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Thu Oct 7th 2021, 10:09 pm
Release Notes:
- Added
- Added method
- Added
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri Sep 10th 2021, 9:21 am
Release Notes:
- Fix to stop a change in site ID from leading to an unnecessary error.
- Improve handling of persisted authentication data. Note that this might lead to a one-off change to a peer's site ID if you weren't and continue to not be specifying an explicit site ID when creating your identity.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri Sep 3rd 2021, 3:38 pm
Release Notes:
- Added support for getting information about all of the collections that the device is aware of. This is achieved by accessing
- Added multicast as a transport option to the
- Added new identity types:
- The
- Added an
- Similarly, added an
- Report an error if more than one Ditto instance is started using the same working directory.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Mon Aug 2nd 2021, 9:19 am
Release Notes:
- Added a Linux x86_64 version of the C++ to the group of published C++ SDKs.
- Improved debug logging.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Thu Jul 22nd 2021, 4:38 pm
Release Notes:
- Improve SDK API documentation extensively
- Fix crash that can occur if a Ditto
- Fix bug where sync may fail if an unusually long
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Thu Jul 8th 2021, 11:22 am
Release Notes:
- Add
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri Jun 25th 2021, 3:36 pm
Release Notes:
- Added a new find function that accepts a query containing placeholders in the form of $args.my_arg along with a map of query arguments in the form of { "my_arg": "some value" }. The placeholders in the query will be replaced by a query-appropriate representation of the relevant value from the map of query arguments.
- Added the ability to get a hash and/or a mnemonic (string) representation of the matching documents from a live query event. This means you can do something like this:
- Fix for using floats in queries.
- Accessing the store property of a Ditto instance will no longer throw an error if you have not yet activated your Ditto instance with a valid license token.
- Deprecated set_access_license and added a new function, set_license_token, which will throw an appropriate exception if your provided license token is expired or invalid somehow.
- Deprecated start_sync and added a new function, try_start_sync, which will throw an exception if your Ditto instance hasn't yet been activated via a successful call to set_license_token.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri Jun 11th 2021, 3:36 pm
Release Notes:
- Synchronized version bump release
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Thu Jun 10th 2021, 9:34 am
Release Notes:
- Synchronized version bump release
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Thu May 20th 2021, 2:39 pm
Release Notes:
- Add support for subscripting
- Deprecated
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Tue May 4th 2021, 9:02 am
Release Notes:
- If you provide an invalid query then you will now get a better error message.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Wed Apr 21st 2021, 5:29 pm
Release Notes:
- This release is not compatible with any previous SDK releases. There are a number of breaking changes both in terms of the SDK API and in terms of the internal systems used by the SDK to perform operations such as synchronization. If you have previously made use of the Ditto SDK and wish to update to this version then note that you will need to delete all existing Ditto data otherwise you will run into errors. If you have existing data that you need to keep then please contact us and we can advise you as to how you can migrate your data.
- The most notable API breaking changes are:
- Document IDs are no longer restricted to just strings. You can now create a document ID that is a string, integer, boolean, array, map, or null. This means that when making
- The
- Lots of performance improvements and bug fixes.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Thu Feb 4th 2021, 4:58 pm
Release Notes:
- Fixed a bug where mDNS advertising may continue after Ditto is stopped.
- Fixed a hang that could occur creating an attachment fetcher while requesting many attachments at once.
- Fixed sync failure when there are multiple overlapping subscriptions or live queries with the same query string for the same collection.
- Fixed a potential crash and other sync failures that could occur under certain conditions.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Fri Jan 22nd 2021, 7:09 am
Release Notes:
- Site IDs, which make up part of a Ditto identity object, are now unsigned, 64-bit integers instead of unsigned 32-bit integers.
- Fix a crash that could occur if an offset with a value greater than the number of matching documents was provided.
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Mon Jan 4th 2021, 3:12 am
Release Notes:
- Synchronized version bump release
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Mon Dec 14th 2020, 5:00 pm
Release Notes:
- Performance and stability improvements.
- Fix default data insertion such that merge semantics are consistent and duplicate data isn't created.
- Fixed a bug where documents containing attachments syncing to an instance of the C++ SDK could lead to a crash.
- Upgrade nlohmann json header from 3.7.0 to 3.9.1.
- Added
Installation:
iOS
Linux x86_64
Linux aarch64
Released: Mon Nov 23rd 2020, 1:22 pm
Release Notes:
- Added a new intermediate security identity for a shared secret key. This is a simplistic authentication mode which is normally only suitable for private apps where all the users and devices are trusted.
- Fixed an issue that prevented Counter values from syncing correctly
- Renamed DittoAttachmentStatus to DittoAttachmentFetchEvent and subsequently Incomplete status to Progre ss.
Installation:
iOS
Linux x86_64
Linux aarch64