Skip to content

v0.3.0-preview

Pre-release
Pre-release
Compare
Choose a tag to compare
@leemaguire leemaguire released this 15 Sep 16:07
· 77 commits to main since this release
1a3e097

Fixed

  • Windows would not compile under Release build configuration as aligned_storage parameters were
    incorrectly set.
  • Fix memory leak on internal::bridge::notification_token caused by missing destructor.
  • Fix memory leak on internal::bridge::binary caused by wrong destructor being called.
  • The default schema mode was incorrectly set to Automatic and not AdditiveDiscovered when using a Synced Realm.
  • Fix iterator on experimental::Results
  • Fix issue where properties on a link column could not be queried.
  • operator bool() on link properties incorrectly returned true when the link was null.
  • The default schema mode was incorrectly set to Automatic and not AdditiveDiscovered when using a Synced Realm.

Enhancements

  • Add support for the Decimal128 data type (realm::decimal128).
  • Add app::get_current_user()
  • Add user::is_logged_in()
  • Add ability to set custom http headers. The http headers should be passed when constructing a realm::App and when in
    possession of a config derived from realm::user::flexible_sync_configuration() by calling foo_config.set_custom_http_headers(...);.
  • Add operator!=() to collections.
  • Add set_schema_version(uint64_t)
  • Add managed<std::vector<T*>>::push_back(const managed<T*>&)
  • Add box<managed<V*>>::box& operator=(const managed<V*>& o)
  • Add box<managed<V*>>::box& operator=(const managed<V>& o)

Breaking Changes

  • managed<>::value() has been renamed to managed<>::detach() to better convey that the returned value will be unmanaged. In the case where the value is a
    pointer type it is up to the consumer of the value to manage the lifetime of the object.
  • sync_session::wait_for_upload_completion & sync_session::wait_for_download_completion now returns a realm::status in its callback instead of a std::error_code.
  • is_connection_level_protocol_error, is_session_level_protocol_error & is_client_error has been removed from realm::sync_error and is replaced by
    realm::sync_error::user_info(), realm::sync_error::compensating_writes_info(), & realm::sync_error::get_status().
  • Data ingest Realms must now specify a schema containing the Asymmetric objects and their dependencies e.g experimental::open<experimental::AllTypesAsymmetricObject, experimental::EmbeddedFoo>(user.flexible_sync_configuration()).

Compatibility

  • Fileformat: Generates files with format v22.

Internals

  • Upgraded to Core v13.20.1