Commit Graph

45 Commits

Author SHA1 Message Date
Sasha Weiss
4e37d9b752
Downgrade BackupPlan when entitlement expires, not subscription 2025-10-06 08:58:00 -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
sashaweiss-signal
8b3d479928 Rotate persisted AppAttest keyId 2025-07-16 14:06:34 -07:00
sashaweiss-signal
2854867f60 Add logging to AppAttestManager 2025-07-16 14:05:22 -07:00
sashaweiss-signal
f2ede4d126 Fix URL path for fetching AppAttest assertion challenge 2025-07-16 12:33:49 -07:00
Sasha Weiss
05b5aa0f90
Add AppAttestManager to use AppAttest to acquire the Backup entitlement for TestFlight builds 2025-07-16 08:37:44 -07:00
Sasha Weiss
4f4c79f532
Add BackupTestFlightEntitlementManager 2025-07-16 08:36:15 -07:00
Sasha Weiss
b7df52ec77
Download offloaded attachments before disabling Backups 2025-07-14 10:32:33 -07:00
Sasha Weiss
ece398b6c1
UX support for Backup subscriptions expired in the past 2025-07-01 10:44:43 -07:00
Sasha Weiss
0103dae13b
Add and use BackupPlanManager to consolidate side-effects of setting BackupPlan 2025-06-30 22:25:05 -07:00
Harry
fe4b14e8ea
Use ConcurrentTaskQueue(concurrentLimit: 1) in place of SerialTaskQueue where possible 2025-06-26 15:23:13 -07:00
Sasha Weiss
be281ae37d
Start the upload queue when setting paid BackupPlan, add UploadEraStore 2025-06-25 16:19:29 -07:00
Sasha Weiss
7940684421
More directly set BackupPlan = .paid when re/enabling Backups 2025-05-30 10:41:36 -07:00
Sasha Weiss
d13e5afb1a
Make BackupPlan more detailed, set in response to more events 2025-05-28 12:50:07 -07:00
Sasha Weiss
7d6edb6412
Bulk rename MessageBackup types 2025-05-13 11:35:52 -07:00
Harry
25b548437e
Remove isFreeTier/uploadEra placeholder methods and use BackupSettingsStore + BackupSubscriptionManager 2025-05-12 23:49:58 -07:00
Sasha Weiss
dec50cfc52
Reregister subscriberID for StoreKit subscription if remote Subscription missing 2025-05-12 12:28:05 -07:00
Sasha Weiss
cb90733631
Support enabling/disabling Backups from Settings 2025-05-12 12:27:10 -07:00
Sasha Weiss
b8eda921c4
Only attempt to redeem a Backups subscription on registered primaries 2025-05-02 14:19:00 -07:00
Sasha Weiss
9e73a8bd52
Add ChooseBackupPlanView 2025-05-01 10:31:17 -07:00
Max Radermacher
a819bb4dac
Convert TSRequest to a struct 2025-04-10 12:49:35 -05:00
Sasha Weiss
ea7488ebff
Deprotocolize BackupSubscriptionManager 2025-04-07 12:53:23 -07:00
Sasha Weiss
bb048e8b59
One transaction type to rule them all and in the darkness bind them 2025-03-13 21:43:35 -07:00
Max Radermacher
95c18efb2d
Consolidate TSRequest auth into a single type 2025-03-13 13:35:35 -05:00
Pete Walters
515b5f1a28
Add support for supplying explicit credentials to storage service request 2025-02-11 10:26:52 -06:00
Sasha Weiss
33189a6d95
Use info from WhoAmI to decide if we need to redeem our subscription 2025-01-03 11:17:40 -08:00
Sasha Weiss
c42557903a
Make Backup subscription redemption durable 2024-12-05 14:43:11 -08:00
Sasha Weiss
2aacc6c939
Hook up BackupSubscriptionManager to Storage Service 2024-11-26 13:06:50 -05:00
Sasha Weiss
7675a14766
Refactor BackupSubscriptionManager 2024-11-26 13:02:08 -05:00
Sasha Weiss
2000b82c0b
One KeyValueStore to rule them all 2024-11-15 18:47:54 -06:00
Sasha Weiss
46b5b4a9e4
Prefix donations-related types with Donations 2024-10-25 10:14:56 -07:00