diff options
| author | Christian Cleberg <[email protected]> | 2026-07-24 17:51:57 -0500 |
|---|---|---|
| committer | Christian Cleberg <[email protected]> | 2026-07-24 18:32:24 -0500 |
| commit | 0aa8cdf3bb55f31039df1ce473dc23eca22b6449 (patch) | |
| tree | 50c8b44e3a66279c1761d7208a2cc146d66cd38f /DomainDig/Assets.xcassets/Contents.json | |
| parent | 2279dfa7c479d28b2560c1baaa13e4cf17b2eef7 (diff) | |
| download | domain-dig-0aa8cdf3bb55f31039df1ce473dc23eca22b6449.tar.gz domain-dig-0aa8cdf3bb55f31039df1ce473dc23eca22b6449.tar.bz2 domain-dig-0aa8cdf3bb55f31039df1ce473dc23eca22b6449.zip | |
fix: reach CloudKit instead of gating on unreliable entitlement introspection (#29)
iCloud sync always failed with "This build does not have the CloudKit
entitlement required for iCloud sync." on normal Debug/device builds.
`cloudKitContainer()` gated construction on `isEntitlementConfigurationAvailable()`,
which inspected `Info.plist` keys and an `archived-expanded-entitlements.xcent`
file. Entitlements live in the code signature, not `Info.plist`, and the `.xcent`
file only exists in archived/distribution builds — so the check returned false for
a correctly-signed development build, the container was never created, and every
path reported `.missingEntitlement`.
Stop introspecting entitlements. Always construct `CKContainer.default()` and let
CloudKit's own `accountStatus()` drive availability. When the entitlement is
genuinely absent, CloudKit surfaces `.missingEntitlement` / `.badContainer` /
`.permissionFailure`, which `accountStatus()` now maps back to the "no entitlement"
message — preserving that signal without the false negative.
Diffstat (limited to 'DomainDig/Assets.xcassets/Contents.json')
0 files changed, 0 insertions, 0 deletions
