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 |
|