diff --git a/CHANGELOG.md b/CHANGELOG.md index 429dbec1bf..6534b96500 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,61 @@ +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. +* 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.10.2 to 14.11.0 + 10.52.1 Release notes (2024-06-28) ============================================================= diff --git a/Package.swift b/Package.swift index 16878bcd1c..b5ac14dfe3 100644 --- a/Package.swift +++ b/Package.swift @@ -3,8 +3,8 @@ import PackageDescription import Foundation -let coreVersion = Version("14.10.2") -let cocoaVersion = Version("10.52.1") +let coreVersion = Version("14.11.0") +let cocoaVersion = Version("10.52.2") let cxxSettings: [CXXSetting] = [ .headerSearchPath("."), 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/Realm/Realm-Info.plist b/Realm/Realm-Info.plist index 435536d9cc..6aa3b35e0c 100644 --- a/Realm/Realm-Info.plist +++ b/Realm/Realm-Info.plist @@ -17,11 +17,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 10.52.1 + 10.52.2 CFBundleSignature ???? CFBundleVersion - 10.52.1 + 10.52.2 NSHumanReadableCopyright Copyright © 2014-2021 Realm. All rights reserved. NSPrincipalClass diff --git a/dependencies.list b/dependencies.list index 85117c97f4..d9f6776c5a 100755 --- a/dependencies.list +++ b/dependencies.list @@ -1,3 +1,3 @@ -VERSION=10.52.1 -REALM_CORE_VERSION=v14.10.2 -STITCH_VERSION=b4f0184c963eed8f6cc5e857fac147bef10966d7 +VERSION=10.52.2 +REALM_CORE_VERSION=v14.11.0 +STITCH_VERSION=2f308db6f65333728a101d1fecbb792f9659a5ce