Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

realm

Package Overview
Dependencies
Maintainers
5
Versions
401
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

realm - npm Package Versions

23
41

12.14.0

Diff

Changelog

Source

12.14.0 (2024-11-12)

Enhancements

  • Added excludeFromIcloudBackup option to the Realm constructor to exclude the realm files from iCloud backup. (#4139 and #6927)
const realm = new Realm({
  schema: [
    /* your schema */
  ],
  // Set to true to exclude from iCloud backup, false to include, defaults to false
  excludeFromIcloudBackup: true,
});

Fixed

  • Fix build failure from duplicate libreactnative.so files. I.e. "2 files found with path 'lib/arm64-v8a/libreactnative.so' from inputs" (#6918, since v12.13.2)

Compatibility

  • React Native >= v0.71.4
  • Realm Studio v15.0.0.
  • File format: generates Realms with format v24 (reads and upgrades file format v10).

Internal

realmnpm
published 12.13.2 •

Changelog

Source

12.13.2 (2024-10-30)

Fixed

  • Fixed build error on React Native Android when used with React Native 0.76, due to the merge of dynamic libraries. (#6908 since React Native v0.76.0).
  • Filtering notifications with backlink columns as last element could sometimes give wrong results (realm/realm-core#7530, since Realm JS v10.6.2-beta.1)
  • Fix crash during client app shutdown when Logger log level is set higher than Info. (realm/realm-core#7969, since Realm JS v12.3.1)
  • If File::rw_lock() fails to open a file the exception message does not contain the filename (realm/realm-core#7999, since Realm JS v6.1.0)
  • Fallback to hashed filename will fail if length of basename is between 240 and 250 (realm/realm-core#8007, since Realm JS v10.0.0)
  • Having a query with a number of predicates ORed together may result in a crash on some platforms (strict weak ordering check failing on iphone) (realm/realm-core#8028, since Realm JS v12.8.0)
  • The events library would attempt to upload backup files created as part of file format upgrades, causing backup copies of those backups to be made, looping until the maximum file name size was reached (realm/realm-core#8040, since Realm JS v10.18.0).

Compatibility

  • React Native >= v0.71.4
  • Realm Studio v15.0.0.
  • File format: generates Realms with format v24 (reads and upgrades file format v10).

Internal

  • Upgraded Realm Core from v14.12.0 to v14.13.1.
realmnpm
published 20.0.0 •

realmnpm
published 12.13.1 •

Changelog

Source

12.13.1 (2024-08-21)

Fixed

  • Fixed a build error on React Native iOS and Android from a change in the CallInvoker's invokeAsync call signature. (#6851 since v12.12.0 in combination with React Native >= v0.75.0).

Compatibility

  • React Native >= v0.71.4
  • Realm Studio v15.0.0.
  • File format: generates Realms with format v24 (reads and upgrades file format v10).

Internal

<!-- * Either mention core version or upgrade --> <!-- * Using Realm Core vX.Y.Z --> <!-- * Upgraded Realm Core from vX.Y.Z to vA.B.C -->
realmnpm
published 12.13.0 •

Changelog

Source

12.13.0 (2024-08-14)

Enhancements

Fixed

  • Fixed an Invalid column key exception when using an RQL "BETWEEN" query on an int or timestamp property across links. (realm/realm-core#7935, since v12.12.0)
  • Fixed conflict resolution bug which could sometimes cause an Invalid prior_size exception to prevent synchronization (realm/realm-core#7893, since v12.10.0)
  • Fixed bug which would prevent eventual consistency during conflict resolution. Affected clients would experience data divergence and potentially consistency errors as a result. (realm/realm-core#7955, since v12.10.0)
  • Fixed issues loading the native Realm libraries on Linux ARMv7 systems when they linked against our bundled OpenSSL resulting in errors like unexpected reloc type 0x03. (realm/realm-core#7947, since v12.7.0)
  • Sync client may report duplicate compensating write errors. (realm/realm-core#7708, since v12.10.0)
  • String serialization of timestamps with a sufficiently large timestamp value could overflow an int causing undefined behavior, causing potentially bad values for the month/day/year values in stringified dates. (realm/realm-core#7934)
  • App subscription callback was getting fired before the user profile was retrieved on login, leading to an empty user profile when using the callback. (realm/realm-core#7889, since v12.9.0)

Compatibility

  • React Native >= v0.71.4
  • Realm Studio v15.0.0.
  • File format: generates Realms with format v24 (reads and upgrades file format v10).

Internal

  • Upgraded Realm Core from v14.11.0 to v14.12.0.
realmnpm
published 12.12.1 •

Changelog

Source

12.12.1 (2024-07-25)

Fixed

  • Fixed compiler error when building binding for React Native iOS: "'React-featureflags/react/featureflags/ReactNativeFeatureFlags.h' file not found" (#6808, since v12.12.0)

Compatibility

  • React Native >= v0.71.4
  • Realm Studio v15.0.0.
  • File format: generates Realms with format v24 (reads and upgrades file format v10).

Internal

  • Removed an unused import in the binding for React Native Android. (#6808, since v12.12.0)
realmnpm
published 12.12.0 •

Changelog

Source

12.12.0 (2024-07-23)

Deprecations

  • The callback for SyncSession.addProgressNotification taking transferred and transferable arguments is deprecated and will be removed. See Enhancements below for the new callback supporting both Flexible Sync and Partition-Based Sync. (#6743)
  • AppConfiguration.app is no longer used by Atlas Device Sync. It will be removed in future SDK releases and should not be used. (#6785)

Enhancements

  • Added support for "bridgeless" React Native on iOS and Android, a part of the "new architecture". (#6737)
  • Added progress notifications support for Flexible Sync using an estimate as the new callback argument. The estimate is roughly equivalent to an estimated value of transferred / transferable in the deprecated Partition-Based Sync callback. (#6743)
realm.syncSession?.addProgressNotification(
  ProgressDirection.Upload,
  ProgressMode.ReportIndefinitely,
  (estimate) => console.log(`progress: ${estimate}/1.0`)
);
  • It is no longer an error to set a base url for an App with a trailing slash - for example, https://services.cloud.mongodb.com/ instead of https://services.cloud.mongodb.com - before this change that would result in a 404 error from the server. (realm/realm-core#7791)
  • Performance has been improved for range queries on integers and timestamps when using the BETWEEN operator. (realm/realm-core#7785)
  • On Windows devices Device Sync will additionally look up SSL certificates in the Windows Trusted Root Certification Authorities certificate store when establishing a connection. (realm/realm-core#7882)
  • Role and permissions changes no longer require a client reset to update the Realm on-device. (realm/realm-core#7440)

Fixed

  • Opening an Flexible Sync Realm asynchronously may not wait to download all data. (realm/realm-core#7720, since v10.12.0)
  • Clearing a list of mixed in an upgraded file would lead to an assertion failing. (realm/realm-core#7771, since 12.7.0-rc.0)
  • Sync client can crash if a session is resumed while the session is being suspended. (realm/realm-core#7860, since v10.18.0)
  • If a sync session is interrupted by a disconnect or restart while downloading a bootstrap, stale data from the previous bootstrap may be included when the session reconnects and downloads the bootstrap. This can lead to objects stored in the database that do not match the actual state of the server and potentially leading to compensating writes. (realm/realm-core#7827, since v10.18.0)
  • Fixed unnecessary server roundtrips when there is no download to acknowledge. (realm/realm-core#2129, since v12.10.0)
  • Realm.App.Sync.SyncSession#uploadAllLocalChanges() was inconsistent in how it handled commits which did not produce any changesets to upload. Previously it would sometimes complete immediately if all commits waiting to be uploaded were empty, and at other times it would wait for a server roundtrip. It will now always complete immediately. (realm/realm-core#7796)
  • Realm#writeCopyTo() on an encrypted Realm without explicitly specifying a new encryption key would only work if the old key happened to be a valid nul-terminated string. (realm/realm-core#7842, since v12.10.0).
  • You could get unexpected merge results when assigning to a nested collection. (realm/realm-core#7809, since v12.7.0-rc.0)
  • When mapTo is used to have an alias for a property name, Realm.Results#sorted() doesn't recognize the alias leading to errors like Cannot sort on key path 'NAME': property 'PersonObject.NAME' does not exist. (#6779, since v11.2.0)
  • A mixed property with a collection could sometimes end up with a combination of values assigned by different clients. (realm/realm-core#7809, since v12.9.0)
  • Fixed removing backlinks from the wrong objects if the link came from a nested list, nested dictionary, top-level dictionary, or list of mixed, and the source table had more than 256 objects. This could manifest as array_backlink.cpp:112: Assertion failed: int64_t(value >> 1) == key.value when removing an object. (realm/realm-core#7594, since v10.6.0)
  • Fixed a bug when removing an object from a nested collection could lead to an assert with the message array.cpp:319: Array::move() Assertion failed: begin <= end [2, 1]. (realm/realm-core#7839, since v12.9.0)

Compatibility

  • React Native >= v0.71.4
  • Realm Studio v15.0.0.
  • File format: generates Realms with format v24 (reads and upgrades file format v10).

Internal

  • Adding a CallInvoker-based scheduler for Core on React Native and removing the "flush ui queue" workaround. (#6791)
  • Refactors throwing uncaught exceptions from callbacks dispatched onto the event loop from C++ on React Native. (#6772)
  • Upgraded Realm Core from v14.10.0 to v14.11.0. (#6744)
realmnpm
published 12.11.1 •

Changelog

Source

12.11.1 (2024-06-25)

Fixed

  • path option in the Realm configuration not being set when using a synced Realm. (#6754, since v12.8.0). Note: if you have been using a custom path configuration with your synced Realm, this fix will lead to a re-download of its data in the custom path.

Compatibility

  • React Native >= v0.71.4
  • Realm Studio v15.0.0.
  • File format: generates Realms with format v24 (reads and upgrades file format v10).
realmnpm
published 12.11.0 •

Changelog

Source

12.11.0 (2024-06-17)

Enhancements

  • Building for iOS and Android has been optimized for compatibility with future React Native versions, by deferring compilation of JSI dependent code to the dependent app's build. (#6650)

Compatibility

  • React Native >= v0.71.4
  • Realm Studio v15.0.0.
  • File format: generates Realms with format v24 (reads and upgrades file format v10).
realmnpm
published 12.10.0 •

Changelog

Source

12.10.0 (2024-06-14)

Enhancements

  • Report the originating error that caused a client reset to occur. (realm/realm-core#6154)
  • Reduce the size of the local transaction log produced by creating objects, improving the performance of insertion-heavy transactions. (realm/realm-core#7734)
  • A counter presentation data type has been introduced. The int data type can now be used as a logical counter for performing numeric updates that need to be synchronized as sequentially consistent events rather than individual reassignments of the number. (#6694)
    • See the API docs for more information about the usage, or get a high-level introduction about counters in the documentation.
class MyObject extends Realm.Object {
  _id!: BSON.ObjectId;
  counter!: Realm.Types.Counter;

  static schema: ObjectSchema = {
    name: "MyObject",
    primaryKey: "_id",
    properties: {
      _id: { type: "objectId", default: () => new BSON.ObjectId() },
      counter: "counter",
      // or: counter: { type: "int", presentation: "counter" },
    },
  };
}

const realm = await Realm.open({ schema: [MyObject] });
const object = realm.write(() => {
  return realm.create(MyObject, { counter: 0 });
});

realm.write(() => {
  object.counter.increment();
  object.counter.value; // 1
  object.counter.decrement(2);
  object.counter.value; // -1
});

Fixed

  • After compacting, a file upgrade would be triggered. This could cause loss of data for synced Realms. (realm/realm-core#7747, since 12.7.0-rc.0)
  • The function immediatelyRunFileActions was not added to the bindgen's opt-list. This could lead to the error TypeError: app.internal.immediatelyRunFileActions is not a function. (#6708, since v12.8.0)
  • Encrypted files on Windows had a maximum size of 2 GB even on x64 due to internal usage of off_t, which is a 32-bit type on 64-bit Windows. (realm/realm-core#7698, since the introduction of encryption support on Windows - likely in v1.11.0)
  • Tokenizing strings for full-text search could lead to undefined behavior. (realm/realm-core#7698, since v11.3.0-rc.0)
  • A non-streaming progress notifier would not immediately call its callback after registration. Instead you would have to wait for a download message to be received to get your first update - if you were already caught up when you registered the notifier you could end up waiting a long time for the server to deliver a download that would call/expire your notifier. (#7627, since v12.8.0)

Compatibility

  • React Native >= v0.71.4
  • Realm Studio v15.0.0.
  • File format: generates Realms with format v24 (reads and upgrades file format v10).

Internal

  • Upgraded Realm Core from v14.7.0 to v14.10.0. (#6701)
  • Added privacy manifest for Apple App Store. First released in v12.8.1-alpha.0 only. (#6638)
23
41
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc