Skip to content

Commit 07ade7d

Browse files
authored
Merge branch 'master' into snyk-fix-3e64d92e5ac19b7e1ac77eb17c66a6ea
2 parents 8830fe1 + af5d63c commit 07ade7d

File tree

21 files changed

+63
-35
lines changed

21 files changed

+63
-35
lines changed

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
## [6.1.1](https://github.com/parse-community/Parse-SDK-iOS-OSX/compare/6.1.0...6.1.1) (2025-11-19)
2+
3+
4+
### Bug Fixes
5+
6+
* LiveQuery event lost for operation on class with pointer field ([#1863](https://github.com/parse-community/Parse-SDK-iOS-OSX/issues/1863)) ([cfd1bc4](https://github.com/parse-community/Parse-SDK-iOS-OSX/commit/cfd1bc4b71228b7faf633231a8952c0a6e6b18b4))
7+
18
# [6.1.0](https://github.com/parse-community/Parse-SDK-iOS-OSX/compare/6.0.1...6.1.0) (2025-11-18)
29

310

Parse/Parse/Resources/Parse-OSX.Info.plist

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@
1313
<key>CFBundlePackageType</key>
1414
<string>FMWK</string>
1515
<key>CFBundleShortVersionString</key>
16-
<string>6.1.0</string>
16+
<string>6.1.1</string>
1717
<key>CFBundleSignature</key>
1818
<string>????</string>
1919
<key>CFBundleVersion</key>
20-
<string>6.1.0</string>
20+
<string>6.1.1</string>
2121
</dict>
2222
</plist>

Parse/Parse/Resources/Parse-iOS.Info.plist

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,15 @@
1313
<key>CFBundlePackageType</key>
1414
<string>FMWK</string>
1515
<key>CFBundleShortVersionString</key>
16-
<string>6.1.0</string>
16+
<string>6.1.1</string>
1717
<key>CFBundleSignature</key>
1818
<string>????</string>
1919
<key>CFBundleSupportedPlatforms</key>
2020
<array>
2121
<string>iPhoneOS</string>
2222
</array>
2323
<key>CFBundleVersion</key>
24-
<string>6.1.0</string>
24+
<string>6.1.1</string>
2525
<key>MinimumOSVersion</key>
2626
<string>12.0</string>
2727
</dict>

Parse/Parse/Resources/Parse-tvOS.Info.plist

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@
1515
<key>CFBundlePackageType</key>
1616
<string>FMWK</string>
1717
<key>CFBundleShortVersionString</key>
18-
<string>6.1.0</string>
18+
<string>6.1.1</string>
1919
<key>CFBundleSignature</key>
2020
<string>????</string>
2121
<key>CFBundleVersion</key>
22-
<string>6.1.0</string>
22+
<string>6.1.1</string>
2323
<key>NSPrincipalClass</key>
2424
<string/>
2525
</dict>

Parse/Parse/Resources/Parse-watchOS.Info.plist

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@
1515
<key>CFBundlePackageType</key>
1616
<string>FMWK</string>
1717
<key>CFBundleShortVersionString</key>
18-
<string>6.1.0</string>
18+
<string>6.1.1</string>
1919
<key>CFBundleSignature</key>
2020
<string>????</string>
2121
<key>CFBundleVersion</key>
22-
<string>6.1.0</string>
22+
<string>6.1.1</string>
2323
<key>NSPrincipalClass</key>
2424
<string/>
2525
</dict>

Parse/Parse/Source/PFConstants.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
#pragma mark - SDK Version
1515
///--------------------------------------
1616

17-
#define PARSE_VERSION @"6.1.0"
17+
#define PARSE_VERSION @"6.1.1"
1818

1919
///--------------------------------------
2020
#pragma mark - Platform

Parse/Parse/Source/PFDecoder.m

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,28 @@ - (id)decodeDictionary:(NSDictionary *)dictionary {
4747
}
4848

4949
NSString *type = dictionary[@"__type"];
50+
// Inject __type = @"Object" if missing but className/objectId present and on the presence of additional data fields so that bare pointer stubs continue to fall back to the legacy dictionary path.
51+
if (!type && dictionary[@"className"] && dictionary[@"objectId"]) {
52+
static NSSet<NSString *> *pointerKeys;
53+
static dispatch_once_t onceToken;
54+
dispatch_once(&onceToken, ^{
55+
pointerKeys = [NSSet setWithObjects:@"className", @"objectId", @"localId", nil];
56+
});
57+
BOOL hasAdditionalFields = NO;
58+
for (NSString *key in dictionary) {
59+
if (![pointerKeys containsObject:key]) {
60+
hasAdditionalFields = YES;
61+
break;
62+
}
63+
}
64+
if (!hasAdditionalFields) {
65+
return dictionary;
66+
}
67+
NSMutableDictionary *mutable = [dictionary mutableCopy];
68+
mutable[@"__type"] = @"Object";
69+
type = @"Object";
70+
dictionary = mutable;
71+
}
5072
if (type) {
5173
if ([type isEqualToString:@"Date"]) {
5274
return [[PFDateFormatter sharedFormatter] dateFromString:dictionary[@"iso"]];

ParseLiveQuery/ParseLiveQuery-tvOS/Info.plist

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
<key>CFBundlePackageType</key>
1616
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
1717
<key>CFBundleShortVersionString</key>
18-
<string>6.1.0</string>
18+
<string>6.1.1</string>
1919
<key>CFBundleVersion</key>
20-
<string>6.1.0</string>
20+
<string>6.1.1</string>
2121
</dict>
2222
</plist>

ParseLiveQuery/ParseLiveQuery-watchOS/Info.plist

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
<key>CFBundlePackageType</key>
1616
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
1717
<key>CFBundleShortVersionString</key>
18-
<string>6.1.0</string>
18+
<string>6.1.1</string>
1919
<key>CFBundleVersion</key>
20-
<string>6.1.0</string>
20+
<string>6.1.1</string>
2121
</dict>
2222
</plist>

ParseLiveQuery/ParseLiveQuery/Internal/ClientPrivate.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ private func parseObject<T: PFObject>(_ objectDictionary: [String:AnyObject]) th
1818
guard let _ = objectDictionary["objectId"] as? String else {
1919
throw LiveQueryErrors.InvalidJSONError(json: objectDictionary, expectedKey: "objectId")
2020
}
21-
2221
guard let object = PFDecoder.object().decode(objectDictionary) as? T else {
2322
throw LiveQueryErrors.InvalidJSONObject(json: objectDictionary, details: "cannot decode json into \(T.self)")
2423
}

0 commit comments

Comments
 (0)