From 7afbcc8a914d2192093e380efc905bc1d38ab4a2 Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Fri, 5 Jul 2024 13:41:57 -0700 Subject: [PATCH] Upgrade to core v14.11.1 --- CHANGELOG.md | 70 +++++++++++++++++-- Package.swift | 2 +- .../ObjectServerTests/RLMObjectServerTests.mm | 6 +- dependencies.list | 4 +- 4 files changed, 71 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 130175e413..aceaded790 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,7 @@ x.y.z Release notes (yyyy-MM-dd) ============================================================= ### Enhancements -* Added support for filtering logs by category. Users wil have more fine grained control over +* Added support for filtering logs by category. Users wil have more fine grained control over the log level for each category as well. ```swift Logger.setLogLevel(.info, category: Category.Storage.transactions) @@ -13,13 +13,72 @@ x.y.z Release notes (yyyy-MM-dd) ([#8020](https://github.com/realm/realm-swift/issues/8020)). ### Fixed -* ([#????](https://github.com/realm/realm-swift/issues/????), since v?.?.?) -* None. +* App change notifications were being sent too soon when a new user was logged + in, resulting in the user's profile being empty if it was read from within + the change notification (since v10.51.0). ### Deprecations -* `RLMLogger.level`/`Logger.level` has been deprecated in favor of using `RLMLogger.setLevel:forCategory:`/`Logger.setLevel(:category:)` and `RLMLogger.getLevelForCategory:`/`Logger.getLevel(for:)`. +* `RLMLogger.level`/`Logger.level` has been deprecated in favor of using + `RLMLogger.setLevel:forCategory:`/`Logger.setLevel(:category:)` and + `RLMLogger.getLevelForCategory:`/`Logger.getLevel(for:)`. * It is not recommended to initialize a `RLMLogger/Logger` with a level anymore. +### Compatibility +* Realm Studio: 15.0.0 or later. +* APIs are backwards compatible with all previous releases in the 10.x.y series. +* Carthage release for Swift is built with Xcode 15.4.0. +* CocoaPods: 1.10 or later. +* Xcode: 15.1.0-16 beta 3. + +### Internal +* Upgraded realm-core from v14.11.0 to 14.11.1 + +10.52.2 Release notes (2024-07-19) +============================================================= + +### Enhancements + +* Server-side role and permissions changes no longer require a client reset to + update the local Realm. ([Core #7440](https://github.com/realm/realm-core/pull/7440)) + +### Fixed + +* Deleting an object with a `List> 1) == key.value` when removing links to an object (either by + reassigning the link or by deleting the object). This could happen if the link + came from a collection inside a `AnyRealmValue`, any `Map`, or a + `List`, and there were more than 256 objects of the type which + contained the link. + ([Core #7594](https://github.com/realm/realm-core/issues/7594), since v10.8.0) +* Fix the assertion failure `array.cpp:319: Array::move() Assertion failed: + begin <= end [2, 1]` when deleting objects containing collections nested + inside a `AnyRealmValue` when this caused bptree leaves to be merged. + ()[Core #7839](https://github.com/realm/realm-core/issues/7839), since v10.51.0). +* `SyncSession.wait(for .upload)` was inconsistent in how it handled commits + which do no produce any changesets to upload (such as modifying flexible sync + subscriptions). Previously if all unuploaded commits had empty changesets and + the session had never completed a download it would wait for download + completion, and otherwise it would complete immediate. It now always + completes immediately. ([Core #7796](https://github.com/realm/realm-core/pull/7796)). +* The sync client could hit an assertion failure if a session is resumed while + the session is being suspended. ([Core #7860](https://github.com/realm/realm-core/issues/7860), since v10.27.0) +* If a sync session was interrupted by a disconnect or restart while downloading + a bootstrap (a set of downloads caused by adding or changing a query + subscription), stale data from the previous bootstrap could be included when + the session reconnected and completed downloading the bootstrap. This could + lead to objects stored in the database that do not match the actual state of + the server and potentially leading to compensating writes. + ([Core #7827](https://github.com/realm/realm-core/issues/7827), since v10.27.0) +* Fixed unnecessary server roundtrips when there was no download to acknowledge + ([Core #2129](https://jira.mongodb.org/browse/RCORE-2129), since v10.51.0). + ### Compatibility * Realm Studio: 15.0.0 or later. * APIs are backwards compatible with all previous releases in the 10.x.y series. @@ -28,7 +87,8 @@ x.y.z Release notes (yyyy-MM-dd) * Xcode: 15.1.0-15.4.0. ### Internal -* Upgraded realm-core from ? to ? + +* Upgraded realm-core from v14.10.2 to 14.11.0 10.52.1 Release notes (2024-06-28) ============================================================= diff --git a/Package.swift b/Package.swift index 16878bcd1c..66121b3e34 100644 --- a/Package.swift +++ b/Package.swift @@ -3,7 +3,7 @@ import PackageDescription import Foundation -let coreVersion = Version("14.10.2") +let coreVersion = Version("14.11.1") let cocoaVersion = Version("10.52.1") let cxxSettings: [CXXSetting] = [ diff --git a/Realm/ObjectServerTests/RLMObjectServerTests.mm b/Realm/ObjectServerTests/RLMObjectServerTests.mm index ec5d69d80a..a9dd1cc26d 100644 --- a/Realm/ObjectServerTests/RLMObjectServerTests.mm +++ b/Realm/ObjectServerTests/RLMObjectServerTests.mm @@ -534,7 +534,7 @@ - (void)testInvalidPasswordAuthentication { [self.app loginWithCredential:credentials completion:^(RLMUser *user, NSError *error) { XCTAssertNil(user); RLMValidateError(error, RLMAppErrorDomain, RLMAppErrorInvalidPassword, - @"invalid username/password"); + @"unauthorized"); [expectation fulfill]; }]; @@ -551,7 +551,7 @@ - (void)testNonExistingEmailAuthentication { [self.app loginWithCredential:credentials completion:^(RLMUser *user, NSError *error) { XCTAssertNil(user); RLMValidateError(error, RLMAppErrorDomain, RLMAppErrorInvalidPassword, - @"invalid username/password"); + @"unauthorized"); [expectation fulfill]; }]; @@ -936,7 +936,7 @@ - (void)testEncryptedSyncedRealmWrongKey { c.encryptionKey = RLMGenerateKey(); RLMAssertRealmExceptionContains([RLMRealm realmWithConfiguration:c error:nil], RLMErrorInvalidDatabase, - @"Failed to open Realm file at path '%@': Realm file decryption failed (Decryption failed: unable to decrypt after 0 seconds", + @"Failed to open Realm file at path '%@': Realm file decryption failed (Decryption failed: page 0 in file of size ", c.fileURL.path); } diff --git a/dependencies.list b/dependencies.list index 85117c97f4..79f673c9a2 100755 --- a/dependencies.list +++ b/dependencies.list @@ -1,3 +1,3 @@ VERSION=10.52.1 -REALM_CORE_VERSION=v14.10.2 -STITCH_VERSION=b4f0184c963eed8f6cc5e857fac147bef10966d7 +REALM_CORE_VERSION=v14.11.1 +STITCH_VERSION=2f308db6f65333728a101d1fecbb792f9659a5ce