Commit Graph

156 Commits

Author SHA1 Message Date
Sasha Weiss
a82216e06c
Add warning sheets for undownloaded media with an expiring IAP subscription 2026-06-02 09:51:04 -07:00
Sasha Weiss
714a789cc5
Make DonationSubscriptionManager a singleton instance, not a static class 2026-05-13 16:15:30 -07:00
Sasha Weiss
8a0e1a9a2c
Use Cron/scheduleFrequently for subscription redemption 2026-05-13 16:14:19 -07:00
Sasha Weiss
bcb928a9c6
Downgrade BackupPlan paid -> free if no local IAP anything 2026-05-12 15:49:56 -07:00
Max Radermacher
13d5fe93dc
Run swiftformat . using v0.60.1 2026-03-26 17:10:38 -05:00
Max Radermacher
94467ce733
Remove unnecessary SDSCodableModel requirements 2026-03-05 21:51:36 -06:00
sashaweiss-signal
5fd29f68f4 Add localBackupPlan to BackupSubscriptionManager startup logging 2026-02-25 09:50:22 -08:00
Sasha Weiss
951a481d45
Enforce that Backup Subscriptions are only redeemed in the main app 2026-02-17 14:53:06 -06:00
Max Radermacher
9d20237b9c
Don’t retry errors by default 2026-01-26 12:47:51 -06:00
Max Radermacher
24b213a32b
Improve KeyValueStore compile-time checks 2026-01-09 15:08:26 -06:00
sashaweiss-signal
9a912dd555 Add debug info for fetched subscriptions 2026-01-09 10:36:50 -08:00
Sasha Weiss
d267ec8305
Run swiftformat . 2025-12-30 11:34:05 -08:00
Sasha Weiss
267aa3ca9c
Use failIfThrows in BackupAttachmentDownloadStore 2025-12-19 13:26:29 -08:00
Sasha Weiss
a237b9c114
Simplify and consolidate "DB Corruption" handling 2025-12-18 17:11:36 -08:00
Max Radermacher
422d7547ce
Add & use RegisteredState 2025-12-10 14:52:53 -08:00
Sasha Weiss
2a7bf26d54
Stop using typed throws in AppAttestManager 2025-12-02 10:35:37 -08:00
Max Radermacher
0977510e1f
Throw OWSHTTPError for unexpected status codes 2025-11-25 09:32:58 -06:00
Max Radermacher
b4e7239fea
Use Cron for periodic subscription config update 2025-11-20 22:24:09 -06:00
Sasha Weiss
344f56d93c
Back off for 429s from TestFlight subscription redemption 2025-11-20 13:08:03 -08:00
Sasha Weiss
1490787671
Rotate uploadEra when BackupPlan becomes "paid" 2025-11-19 17:42:55 -08:00
Pete Walters
67d0b5b946
Launch SDSDB into the sun 2025-11-13 17:49:54 -06:00
sashaweiss-signal
8a50cfb24b Add downgrading-BackupPlan logs 2025-11-12 14:23:18 -08:00
sashaweiss-signal
8c2601d90f Improve logging in AppAttestManager 2025-11-11 16:20:34 -08:00
Sasha Weiss
23e79b8cdd
Add warning UX if local IAPSubscriberData doesn't match local IAP account 2025-11-11 12:40:00 -08:00
Sasha Weiss
6dc5ae0463
Add UX for "Backup subscription redeemed too many times" 2025-11-11 12:36:10 -08:00
Max Radermacher
b364a38641
Allow interrupts when waiting for storage service 2025-11-11 11:40:26 -06:00
Sasha Weiss
b3e5a0991a
Handle the CANCELED subscription status for IAP 2025-11-03 09:33:33 -08:00
Sasha Weiss
185d47f50b
Deprotocolize DonationReceiptCredentialResultStore 2025-10-31 12:42:24 -07:00
Sasha Weiss
38ef1d2099
Drop legacy donation errors 2025-10-31 12:40:04 -07:00
Sasha Weiss
f38a373f57
Add ReceiptCredentialManager to handle shared ReceiptCredential logic 2025-10-31 12:37:56 -07:00
Sasha Weiss
d4867a55e1
Add UX for Backups subscription renewal failures 2025-10-29 11:52:06 -07:00
Sasha Weiss
f4f480d036
Modernizations to Subscription 2025-10-28 14:55:28 -07:00
Max Radermacher
560cefae94
Rename FeatureFlags → BuildFlags 2025-10-27 13:27:11 -05:00
Sasha Weiss
e1ca622e08
Downgrade BackupPlan -> .free when the remote subscription expires 2025-10-27 09:18:35 -07:00
Sasha Weiss
7ddd3ca9fa
Avoid Any?-typed responseBodyJson for all but one caller 2025-10-24 12:57:56 -07:00
Sasha Weiss
4a45dc95b8
Add SubscriptionConfigMgr, use to populate Backups-related remote values 2025-10-23 16:09:03 -07:00
Sasha Weiss
db962d8f53
Rename and flatten DonationSubscriptionConfiguration 2025-10-23 16:08:08 -07:00
Sasha Weiss
212d19e97d
Show FYISheet if downgrading BackupPlan when offboarding from TestFlight 2025-10-15 12:29:53 -07:00
Sasha Weiss
f42473dc0a
Show an FYISheet when Backups entitlement expires 2025-10-14 09:10:25 -07:00
Sasha Weiss
4e37d9b752
Downgrade BackupPlan when entitlement expires, not subscription 2025-10-06 08:58:00 -07:00
Sasha Weiss
d7a3f004b3
Guard donations more closely on isRegistered 2025-09-23 09:15:55 -07:00
Max Radermacher
2690a841c4
Remove displayBadgesOnProfileCache 2025-09-16 12:51:28 -05:00
Sasha Weiss
2c70cb177f
Tweaks to reconcileBadgeStates 2025-09-15 14:49:12 -07:00
Sasha Weiss
9a35281f52
Make BkpSubMgr/redeemSubscriptionIfNecessary await interrupted-and-resumed redemptions 2025-09-10 12:55:22 -07:00
Sasha Weiss
26100521d3
Set BackupPlan for real on linked devices 2025-09-05 13:01:37 -07:00
Sasha Weiss
c4e1ffa37d
Serialize AppAttest redemption attempts 2025-09-04 12:45:27 -07:00
Sasha Weiss
faef085dc4
Skip attempting AppAttest in dev builds 2025-08-22 14:31:25 -07:00
Sasha Weiss
1db4d1544f
Acquire a Backups entitlement before fetching Backup auth credentials 2025-08-21 20:46:25 -07:00
Sasha Weiss
c4f79ad4bc
Recover if AppAttest suddenly rejects a previously-attested key 2025-08-18 11:27:52 -07:00
Sasha Weiss
acb807acad
Adjust /devicecheck TSRequests 2025-08-08 13:31:39 -07:00