Commit Graph

116 Commits

Author SHA1 Message Date
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
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
Max Radermacher
bb2d89e55a
Update to LibSignal v0.75.0 2025-06-17 14:02:29 -05:00
Max Radermacher
a13b225cd5
Asyncify iDEAL callback handling 2025-06-17 00:05:50 -05:00
Sasha Weiss
93d2a9274d
Add optional network/5xx retries to NetworkManager 2025-06-04 14:21:42 -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
81ad376eb1
Avoid enqueuing multiple donation-redemption jobs for a single period 2025-05-15 16:43:44 -07:00
Pete Walters
95779395ac
Remove bank selection from iDEAL donations 2025-05-14 13:05:24 -05: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
2cfaebf865
Delete the old subscription when starting anew 2025-04-21 14:40:53 -05:00
Max Radermacher
1f134a2d85
Use awaitableWrite when cancelling subscription 2025-04-21 11:30:06 -05:00
Max Radermacher
a819bb4dac
Convert TSRequest to a struct 2025-04-10 12:49:35 -05:00
sashaweiss-signal
0ddbf31a86 Remove two unused-beyond-test inits for Subscription.ChargeFailure 2025-04-07 13:55:15 -07:00
Sasha Weiss
ea7488ebff
Deprotocolize BackupSubscriptionManager 2025-04-07 12:53:23 -07:00
Sasha Weiss
969b0db854
Add SubscriptionFetcher, decoupled from donations 2025-04-07 12:52:44 -07:00
Sasha Weiss
43be0e5eec
Use system localization for currency formatting 2025-04-03 11:17:58 -07:00
Pete Walters
a3e8141ba9
Asyncify DonationSubscriptionManager (part 2)
Co-authored-by: Ehren Kret <ehren@signal.org>
2025-03-25 16:59:45 -05:00
Sasha Weiss
1a5cbd9183
Rename postNotificationNameAsync to postOnMainThread 2025-03-21 15:28:35 -07:00