Releases: objectbox/objectbox-c
Releases · objectbox/objectbox-c
v0.21.1-alpha0
CHANGELOG.md: minor edits for 0.21.0
v0.21.0
- In-memory databases!
- Various Sync improvements and new APIs
Check the changelog for details.
PS.: ObjectBox is hiring a C++ developer.
v0.20.0
- Various internal improvements
- Sync clients may now supply multiple URLs for client-side load balancing and failover
Check changelog for details.
PS.: ObjectBox is hiring a C++ developer.
v0.19.0
A few of the changes:
- New K/V validation option on opening the store
- Support scalar vector types with basic queries (APIs only, no generator support)
- Fixes two query issues
Check the full changelog for details.
PS.: ObjectBox is hiring a C++ developer.
v0.18.1
Recommended bugfix release; please update.
- Fixes "Could not put (-30786)", which may occur in some corner cases on some platforms.
PS.: ObjectBox is hiring a C++ developer.
v0.18.0
- Date properties can now be tagged as expiration time; which can be then be easily evicted
- Tree API: various additions and improvements, e.g. OBXTreeOptionFlags to configure the tree behavior
- New query condition to match objects that have a given number of relations
- New "max data size" store setting
- Enabled stricter compiler settings
- Added stacktraces on errors (Linux only; very lightweight as it uses external addr2line or llvm-symbolizer)
- Added log callback for most important logs
- Consolidated "user data" passing as the last parameter
- Various internal improvements
C++
- Added BoxTypeless, QueryBuilderBase and QueryBase:
these can be used without generated code and template types. - New APIs to get the schema IDs for entity types and properties
- Added two methods to Store to await asynchronous processing
- Added "internal" namespace so that internal members do not spill into the obx namespace
- Move more implementations to OBX_CPP_FILE
Sync
- Custom protocols for Sync: plugin your own messaging protocol, which ObjectBox Sync will run on
- Improvements to run Sync Server with limited disk space (e.g. on small devices)
- Tree Sync improvements; e.g. consolidate conflicts
- WebSockets (sync protocol) is now a feature, which can be turned off (special build version)
- Performance optimizations
Check changelog for details
v0.17.0
- Added a "weak store" API providing weak reference for stores (typically used by background threads)
- Added Store ID API, e.g. getting a store by its ID
- Various internal improvements including minor optimizations for binary size and performance
C++
- New "OBX_CPP_FILE" define to place declarations in a single .cpp/.cc file: improves compilation time and results
- New "Exception" base class for all thrown exceptions
- Various internal improvements, e.g. a "internal" namespace to better distinguish from userland API
v0.16.0
Allow UTF-8 for database directories on Windows (has been available for other platforms before).
C++
- Promoted
Options
to a top level class, as nested classes cannot be declared forward - New
#define
to disable FlatBuffers includes to simplify new project setup - Rename
Exception
toDbException
Check changelog for details
v0.15.2
- Add store cloning
- Fix attaching to a reopened store
See also https://cpp.objectbox.io
v0.15.1
This version fixes non-unique indexes triggering unique constraint violations in corner cases (introduced in 0.15.0)