Skip to content

Realm JavaScript v10.10.0

Compare
Choose a tag to compare
@kneth kneth released this 11 Nov 14:54
4002ab7

Deprecations

  • EmailPasswordAuth method calls using positional arguments are being deprecated in favour of using a single object dictionary argument. See "Examples of how to update to the new API" in the description of #4041 for examples of how to update each method call.
    • The existing methods will be removed in the next major version.
    • The existing methods will continue to work but will output a deprecation warning to the console in development mode when used, of the form: Deprecation warning from Realm: resetPassword(password, token, token_id) is deprecated and will be removed in a future major release. Consider switching to resetPassword({ password, token, token_id }).

Enhancements

  • New consistent API for EmailPasswordAuth methods, using a single object dictionary rather than positional arguments, to fix inconsistencies and make usage clearer. The existing API is being deprecated (see above). (#3943)

Fixed

  • Aligned implementation with API documentation and TS defs: timeOutBehavior should be "openLocalRealm". (since v10.0.0)
  • Using sort, distinct, or limit as property name in query expression would cause an Invalid predicate error. (realm/realm-java#7545, since v10.0.2)
  • Fixed a rare assertion failure or deadlock when a sync session. (realm/realm-core#4931)
  • Fixed a rare segfault which could trigger if a user was being logged out while the access token refresh response comes in. (realm/realm-core#4944, since v10.0.0)
  • Fixed a user being left in the logged in state when the user's refresh token expires. (realm/realm-core#4882, since v10.0.0)
  • Allow for EPERM to be returned from fallocate(). This improves support for running on Linux environments with interesting file systems, like AWS Lambda. Thanks to @ztane for reporting and suggesting a fix. (realm/realm-core#4957 and #1832)
  • Sync progress notifiers would not trigger when the downloadable bytes size would equal 0. (realm/realm-core#4989, since v10.3.0-rc.1)

Compatibility

  • MongoDB Realm Cloud.
  • Realm Studio v11.0.0.
  • APIs are backwards compatible with all previous releases of Realm JavaScript in the 10.5.x series.
  • File format: generates Realms with format v22 (reads and upgrades file format v5 or later for non-synced Realm, upgrades file format v10 or later for synced Realms).

Internal

  • Upgraded Realm Core from v11.4.1 to v10.6.0.
  • Added use of ccache in build scripts, XCode projects and the integration tests GHA workflow.
  • Dropped using install-local in the integration tests, in favour of a more involved Metro configuration.
  • Added combined type definition for Realm.object and Realm.objectForPrimaryKey so they can be cleanly wrapped.
  • Changed Apple/Linux temporary directory to default to the environment's TMPDIR if available. This is primarily used by tests. (realm/realm-core#4921)
  • Added colorized compiler diagnostics if using Ninja.
  • Minor speed improvement in property setters. (#4058 and realm/realm-core#5011)