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 |
|
Sasha Weiss
|
6097c287a3
|
Skip AppAttest check, for now, if opted into Backups via remote config
|
2025-07-22 21:17:26 -07:00 |
|
Max Radermacher
|
2585a4101c
|
Use asyncRequest where trivially possible
|
2025-07-22 16:28:00 -05:00 |
|
sashaweiss-signal
|
d03f3e3c7d
|
Assume AppAttest generated key string are base64-encoded data
|
2025-07-18 15:47:06 -07:00 |
|
sashaweiss-signal
|
31324bf1ca
|
Add additional logging to AppAttest key-registration request
|
2025-07-17 16:24:59 -07:00 |
|
sashaweiss-signal
|
4a69f7eaaa
|
Base64Url-encode keyId param in AppAttest requests
|
2025-07-17 11:18:25 -07:00 |
|
sashaweiss-signal
|
fc50120d82
|
Add application/octet-stream header to AppAttest requests with .data bodies
|
2025-07-16 20:54:02 -07:00 |
|
sashaweiss-signal
|
ae54e70cae
|
Use PUT, not POST, for registering a key in AppAttest
|
2025-07-16 15:49:29 -07:00 |
|
sashaweiss-signal
|
19e8b24240
|
Remove leading / from AppAttest request URLs
|
2025-07-16 14:16:06 -07:00 |
|