Releases: realm/realm-js
Releases · realm/realm-js
Realm JavaScript v3.4.1
Enhancements
- None.
Fixed
- Fixed a bug when the sync client reconnect after failing to integrate a changeset. The bug would lead to further corruption of the client's Realm file. (RSYNC-48, since v2.3.0-alpha.1)
Compatibility
- Realm Object Server: 3.23.1 or later.
- APIs are backwards compatible with all previous release of realm in the 2.x.y series.
- File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
Internal
- Upgrade from Realm Sync v4.7.12 to v4.8.2.
Realm JavaScript v3.4.0
Enhancements
- Support mirroring of binary files. Thanks to @malice00. (#2501)
- Performance significantly improved when making a query on the property of a linked table, when the property is indexed. (realm/realm-core#3432)
- Added a CocoaPod Podspec file, enabling autolinking for React Native on iOS. (#2586)
Fixed
- On Android, the Realm file could be corrupted when using encrypted realms. It has never been reported in this project. (realm/realm-core#3427)
- Fixed a segmentation fault when calling
Realm.deleteAll()
afterRealm.deleteModel()
. (#2597, since v1.12.0)
Compatibility
- Realm Object Server: 3.23.1 or later.
- APIs are backwards compatible with all previous release of realm in the 2.x.y series.
- File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
Internal
- Updated from Realm Core v5.23.5 to v5.23.6.
- Updated from Realm Sync v4.7.10 to v4.7.12.
- Fixed an out-of-range bug in Windows builds. In debug mode, the exception
can't dereference out of range vector iterator
would be thrown and the process would terminate. (realm/realm-object-store#832) - Fixed a couple of flaky tests.
- Upgraded to Xcode 10.3 for building and testing.
Realm JavaScript v4.0.0-alpha.1
NOTE: This version bumps the Realm file format to version 10. It is not possible to downgrade version 9 or earlier. Moreover, older files will automatically be upgraded to the new file format. Files created by Realm JavaScript prior to v1.0.0, might to be upgradeable.
Breaking changes
- Support of the old timestamp type has been removed, and older files cannot be upgraded. The new timestamp type was introduced in v1.0.0.
Realm.delete(Realm.Collection)
will conserve the order i.e., if aRealm.Results
is[1, 2, 3]
(pseudo-notation),Realm.delete(2)
will produce[1, 3]
.- It is only possible to compact a Realm when a single instance is open. Consider to use configuration parameter
shouldCompactOnLaunch
in the future. - Schemas are not cached but will be reread when opening a Realm. This has an impact of default values as they are not persisted in the Realm files.
Enhancements
- Added
Realm.objectForObjectId()
. (realm/realm-js-private#401) - Added
Realm.Object.objectId()
which returns a unique identifier for the object. (realm/realm-js-private#401)
Fixed
- None.
Compatibility
- Realm Object Server: 3.23.1 or later.
- APIs are backwards compatible with all previous release of Realm JavaScript in the 4.x.y series.
- File format: generates Realms with format v10 (reads and upgrades file format v5 and later).
Internal
- Updated to Realm Core v6.0.0-alpha.23.
- Updated to Realm Sync v4.7.1-core6.4.
Realm JavaScript v3.3.0
Enhancements
- Improve performance of changeset scanning when syncing data. This happens on a background thread, so it shouldn't have any visible effect.
Fixed
- Fixed incorrect return type of
Realm.Sync.addListener()
in API doc and Typescript definition. (#2566, since v2.23.0) - Added
react-native.config.js
to distribution file. (#2564 and #2460, since v3.2.0) - Fixed user methods (authentication, etc.) when running on the Electron main process, where
XMLHttpRequest
isundefined
. (#2274, since v2.24.0)
Compatibility
- Realm Object Server: 3.23.1 or later.
- APIs are backwards compatible with all previous release of realm in the 2.x.y series.
- File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
Internal
- Cleaned up the console output produced by
./tests
. (#2548) - Added a
README.md
to the React Test App directory. (#2561) - Using the 'deprecated-react-native-listview' instead of
ListView
from the 'react-native' package. Thanks to @Kevin-Lev. (#2568) - Updated to Realm Sync from 4.7.8 to 4.7.10.
Realm JavaScript v3.3.0-rc.1
Enhancements
- Improve performance of changeset scanning when syncing data. This happens on a background thread, so it shouldn't have any visible effect.
Fixed
- None.
Compatibility
- Realm Object Server: 3.23.1 or later.
- APIs are backwards compatible with all previous release of realm in the 2.x.y series.
- File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
Internal
- Cleaned up the console output produced by
./tests
. (#2548) - Updated to Realm Sync from 4.7.8 to 4.7.10.
Realm JavaScript v3.2.0
Enhancements
Realm.Sync.Adapter
can now accept a predicate function filter instead of a regex. (#2539)
Fixed
- Chained OR equals queries on an unindexed string column failed to match any results if any of the strings were 64 bytes or longer. (realm/realm-core#3386, since v2.27.0-rc.2).
- Fixed serialization of a query which looks for a null timestamp. This only affects query based sync. (realm/realm-core#3388, since v3.0.0)
- Fixed VS Code React Native debugger context. Thanks to @sam-drew. ([#2476)(https://github.com//issues/2476))
Compatibility
- Realm Object Server: 3.23.1 or later.
- APIs are backwards compatible with all previous release of realm in the 2.x.y series.
- File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
Internal
- Updated to Realm Core v5.23.5.
- Updated to Realm Sync v4.7.8.
Realm JavaScript v3.1.0
Enhancements
- Added support for Client Resync which can automatically recover the local Realm in case the server is rolled back. This largely replaces the Client Reset mechanism. It is configured using
Realm.Sync.Configuration.clientResyncMode
. Three modes are available:'recover'
,'discard
', and'manual'
but currently only'manual'
is supported for query-based sync. Default is'recover'
for full sync and'manual'
for query-based sync. (#2328)
Fixed
- Fixed check for if the partial sync schema needs to be initialized. (realm/realm-object-store#843)
Compatibility
- Realm Object Server: 3.23.1 or later.
- APIs are backwards compatible with all previous release of realm in the 2.x.y series.
- File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
Internal
- None.
Realm JavaScript v3.0.0
Breaking Changes
- Reworked the internal implementation of the permission API. For the most part, the method signatures haven't changed or where they have changed, the API have remained close to the original (e.g.
Results<T>
has changed toT[]
).- Changed the return type of
User.getGrantedPermissions
fromResults<Permission>
toPermission[]
. This means that the collection is no longer observable like regular Realm-backed collections. If you need to be notified for changes of this collection, you need to implement a polling-based mechanism yourself. Permission.mayRead/mayWrite/mayManage
have been deprecated in favor of a more-consistentAccessLevel
API.- Removed the
User.openManagementRealm
method. - Changed the return type of
User.applyPermissions
fromPromise<PermissionChange>
toPromise<void>
.
- Changed the return type of
Enhancements
- Added
User.getPermissionOffers
API to get a collection of all permission offers the user has created.
Fixed
- Named pipes on Android are now created with 0666 permissions instead of 0600. This fixes a bug on Huawei devices which caused named pipes to change owners during app upgrades causing subsequent ACCESS DENIED errors. This should have no practical security implications. (realm/realm-core#3328, since v0.10.0)
- fix error screen shown in React Native when refreshAdminToken and refreshAccessToken receive error result
Compatibility
- Realm Object Server: 3.23.1 or later.
- APIs are backwards compatible with all previous release of realm in the 2.x.y series.
- File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
Internal
- Updated to Realm Core v5.23.2.
- Updated to Realm Sync v4.7.4.
- Add support for direct access to sync workers on Cloud, bypassing the Sync Proxy.
Realm JavaScript v2.29.2
Enhancements
- None.
Fixed
- Fixed Coop with Jitsi-Meet iOS SDK. Thanks to @djorkaeffalexandre. (#2193)
- Fixed Gradle build error with Android Studio 3.5+. Thanks to @MarcBernstein. (#2468)
Compatibility
- Realm Object Server: 3.21.0 or later.
- APIs are backwards compatible with all previous release of realm in the 2.x.y series.
- File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
Internal
- Added support for Electron v4.2. (#2452)
- Upgraded to Realm Sync v4.7.3.
Realm JavaScript v2.30.0-beta.1
Enhancements
- [React Native only] Don't throw an exception when HTTP requests time out as it can indicate that the device is offline. (RJS-4)
Fixed
- <How to hit and notice issue? what was the impact?> (#????, since v?.?.?)
- Fixed Gradle build error with Android Studio 3.5+.
Compatibility
- Realm Object Server: 3.21.0 or later.
- APIs are backwards compatible with all previous release of realm in the 2.x.y series.
- File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
Internal
- Added support for Electron v4.2 (#2452)