From becc93324f6a6a5ccc7a2ea3f3f40f94fa57ce49 Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Mon, 9 Oct 2023 14:25:35 -0700 Subject: [PATCH] Upgrade to core 13.23.0 (#8391) --- CHANGELOG.md | 21 ++++++++++++ Package.swift | 2 +- .../RLMAsymmetricSyncServerTests.mm | 33 ------------------- Realm/RLMMigration.mm | 2 +- Realm/RLMObjectBase.mm | 7 ++-- Realm/RLMObjectStore.mm | 3 +- Realm/Tests/MigrationTests.mm | 4 +-- dependencies.list | 2 +- 8 files changed, 29 insertions(+), 45 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 038e311d54..e553968039 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,24 @@ +x.y.z Release notes (yyyy-MM-dd) +============================================================= +### Enhancements +* None. + +### Fixed +* ([#????](https://github.com/realm/realm-swift/issues/????), since v?.?.?) +* None. + + + +### Compatibility +* Realm Studio: 14.0.1 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.0.0. +* CocoaPods: 1.10 or later. +* Xcode: 14.1-15.0.0. + +### Internal +* Upgraded realm-core from 13.22.0 to 13.23.0 + 10.43.0 Release notes (2023-09-29) ============================================================= diff --git a/Package.swift b/Package.swift index 945ee62829..45d6818b4d 100644 --- a/Package.swift +++ b/Package.swift @@ -3,7 +3,7 @@ import PackageDescription import Foundation -let coreVersion = Version("13.22.0") +let coreVersion = Version("13.23.0") let cocoaVersion = Version("10.43.0") let cxxSettings: [CXXSetting] = [ diff --git a/Realm/ObjectServerTests/RLMAsymmetricSyncServerTests.mm b/Realm/ObjectServerTests/RLMAsymmetricSyncServerTests.mm index 9f6d7c401b..4ccc61a6bb 100644 --- a/Realm/ObjectServerTests/RLMAsymmetricSyncServerTests.mm +++ b/Realm/ObjectServerTests/RLMAsymmetricSyncServerTests.mm @@ -87,27 +87,6 @@ + (bool)_realmIgnoreClass { } @end -#pragma mark UnsupportedLinkObject - -@interface UnsupportedLinkObject : RLMAsymmetricObject -@property RLMObjectId *_id; -@property RLM_GENERIC_ARRAY(Person) *objectArray; -@end - -@implementation UnsupportedLinkObject -+ (NSDictionary *)defaultPropertyValues { - return @{@"_id": [RLMObjectId objectId]}; -} - -+ (NSString *)primaryKey { - return @"_id"; -} - -+ (bool)_realmIgnoreClass { - return true; -} -@end - #pragma mark UnsupportedObjectLinkAsymmetric @interface UnsupportedObjectLinkAsymmetric : RLMObject @@ -232,18 +211,6 @@ - (void)testUnsupportedAsymmetricLinkAsymmetricThrowsError { XCTAssert([error.localizedDescription containsString:@"Property 'UnsupportedLinkAsymmetric.objectArray' of type 'array' cannot be a link to an asymmetric object."]); } -- (void)testUnsupportedAsymmetricLinkObjectThrowsError { - RLMUser *user = [self userForSelector:_cmd]; - RLMRealmConfiguration *configuration = [user flexibleSyncConfiguration]; - configuration.objectClasses = @[UnsupportedLinkObject.self, Person.self]; - NSError *error; - RLMRealm *realm = [RLMRealm realmWithConfiguration:configuration error:&error]; - XCTAssertNil(realm); - // Schema validation allows this but then creating the column fails. This is - // a core bug and this test will start failing as soon as it's fixed. - XCTAssert([error.localizedDescription containsString:@"List of objects not supported in asymmetric table"]); -} - - (void)testUnsupportedObjectLinksAsymmetricThrowsError { RLMUser *user = [self userForSelector:_cmd]; RLMRealmConfiguration *configuration = [user flexibleSyncConfiguration]; diff --git a/Realm/RLMMigration.mm b/Realm/RLMMigration.mm index bddf6d894e..df6532fb3a 100644 --- a/Realm/RLMMigration.mm +++ b/Realm/RLMMigration.mm @@ -106,7 +106,7 @@ - (void)enumerateObjects:(NSString *)className block:(__attribute__((noescape)) } } -- (void)execute:(RLMMigrationBlock)block objectClass:(Class)dynamicObjectClass { +- (void)execute:(RLMMigrationBlock)block objectClass:(::Class)dynamicObjectClass { if (!dynamicObjectClass) { dynamicObjectClass = RLMDynamicObject.class; } diff --git a/Realm/RLMObjectBase.mm b/Realm/RLMObjectBase.mm index 410a3177c3..8dbf6f48b9 100644 --- a/Realm/RLMObjectBase.mm +++ b/Realm/RLMObjectBase.mm @@ -38,11 +38,8 @@ #import #import -using namespace realm; - const NSUInteger RLMDescriptionMaxDepth = 5; - static bool isManagedAccessorClass(Class cls) { const char *className = class_getName(cls); const char accessorClassPrefix[] = "RLM:Managed"; @@ -425,7 +422,7 @@ + (void)observe:(RLMObjectBase *)object #pragma mark - Thread Confined Protocol Conformance - (realm::ThreadSafeReference)makeThreadSafeReference { - return Object(_realm->_realm, *_info->objectSchema, _row); + return realm::Object(_realm->_realm, *_info->objectSchema, _row); } - (id)objectiveCMetadata { @@ -435,7 +432,7 @@ - (id)objectiveCMetadata { + (instancetype)objectWithThreadSafeReference:(realm::ThreadSafeReference)reference metadata:(__unused id)metadata realm:(RLMRealm *)realm { - Object object = reference.resolve(realm->_realm); + auto object = reference.resolve(realm->_realm); if (!object.is_valid()) { return nil; } diff --git a/Realm/RLMObjectStore.mm b/Realm/RLMObjectStore.mm index 3332b8c7ad..4ac48d219e 100644 --- a/Realm/RLMObjectStore.mm +++ b/Realm/RLMObjectStore.mm @@ -40,8 +40,6 @@ #import -using namespace realm; - static inline void RLMVerifyRealmRead(__unsafe_unretained RLMRealm *const realm) { if (!realm) { @throw RLMException(@"Realm must not be nil"); @@ -92,6 +90,7 @@ void RLMVerifyHasPrimaryKey(Class cls) { } } +using realm::CreatePolicy; static CreatePolicy updatePolicyToCreatePolicy(RLMUpdatePolicy policy) { CreatePolicy createPolicy = {.create = true, .copy = false, .diff = false, .update = false}; switch (policy) { diff --git a/Realm/Tests/MigrationTests.mm b/Realm/Tests/MigrationTests.mm index c4893f2c48..cf9197a08b 100644 --- a/Realm/Tests/MigrationTests.mm +++ b/Realm/Tests/MigrationTests.mm @@ -156,7 +156,7 @@ - (RLMRealmConfiguration *)config { - (void)createTestRealmWithClasses:(NSArray *)classes block:(void (^)(RLMRealm *realm))block { NSMutableArray *objectSchema = [NSMutableArray arrayWithCapacity:classes.count]; - for (Class cls in classes) { + for (::Class cls in classes) { [objectSchema addObject:[RLMObjectSchema schemaForObjectClass:cls]]; } [self createTestRealmWithSchema:objectSchema block:block]; @@ -1210,7 +1210,7 @@ - (void)testEnumerateObjectsAfterDeleteData { }]; } -- (RLMResults *)objectsOfType:(Class)cls { +- (RLMResults *)objectsOfType:(::Class)cls { auto config = self.config; config.schemaVersion = 1; RLMRealm *realm = [RLMRealm realmWithConfiguration:config error:nil]; diff --git a/dependencies.list b/dependencies.list index 84540823c6..162b41806f 100755 --- a/dependencies.list +++ b/dependencies.list @@ -1,3 +1,3 @@ VERSION=10.43.0 -REALM_CORE_VERSION=13.22.0 +REALM_CORE_VERSION=13.23.0 STITCH_VERSION=1eb31b87154cf7af6cbe50ab2732e2856ca499c7