Commit Graph

273 Commits

Author SHA1 Message Date
Max Radermacher
922f2ab686
Adopt /v2/config 2025-07-18 11:41:27 -05:00
Max Radermacher
39724bb08c
Remove TestScheduler & Schedulers 2025-07-17 18:11:27 -05:00
Harry
92e5cca0f1
Don't locally enforce a max backup upload size limit 2025-07-17 13:51:28 -07:00
kate-signal
33a8457599
Megaphone for inactive primary devices 2025-07-16 13:10:05 -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
be9340bdb8
Add BackupCDNCache for read credentials, metadata 2025-07-11 16:38:50 -07:00
Harry
87b79704a7
Update url path for svr chat server auth requests 2025-07-11 16:30:09 -07:00
Max Radermacher
0340d149ca
Increase timeout when sending messages 2025-07-11 11:49:55 -05:00
Jordan Rose
ba4c097065 OWSChatConnection: Set Accept-Language at the connection level
(as well as User-Agent, already being set)

...allowing us to omit both headers from the request level.
2025-07-03 12:04:14 -07:00
Max Radermacher
c16fa016bd Require certain generic parameters to be Sendable 2025-07-02 14:33:49 -05:00
Max Radermacher
8b6a1697d8
Validate identity when receiving a 422 error 2025-07-01 09:11:08 -05:00
Max Radermacher
93a4a6ec3a Prepare the connection earlier in the launch flow 2025-06-26 12:53:10 -05:00
Max Radermacher
c957cf3c01 Show “Sending…” while waiting for socket to open 2025-06-26 12:53:10 -05:00
Max Radermacher
8eff4b74d2 Add DispatchQueue-backed Monitor functions 2025-06-26 12:53:10 -05:00
Max Radermacher
851776fdaf
Check shouldSocketBeOpen when taking over from NSE 2025-06-24 16:38:14 -05:00
Max Radermacher
f2c5d99ee5
Adjust socket reconnect delays 2025-06-20 11:08:48 -05:00
Max Radermacher
bb2d89e55a
Update to LibSignal v0.75.0 2025-06-17 14:02:29 -05:00
Max Radermacher
34bd529af5
Add Monitor primitive helper methods 2025-06-13 20:09:23 -05:00
Max Radermacher
fcfadc6d10
Add cancellation support for web socket requests 2025-06-13 15:25:20 -05:00
Max Radermacher
6019ef543d
Use web sockets in the notification service 2025-06-05 15:00:41 -05:00
Max Radermacher
a2a49ebd5d
Allow both fetch mechanisms in a single process 2025-06-05 14:59:53 -05:00
Max Radermacher
9fb39dfa8f
Don’t reconnect if elsewhere’d in the background 2025-06-05 14:58:52 -05:00
Sasha Weiss
93d2a9274d
Add optional network/5xx retries to NetworkManager 2025-06-04 14:21:42 -07:00
Max Radermacher
16f0ed8159
Add MonotonicDuration 2025-06-03 18:35:58 -05:00
Max Radermacher
8fddcee17b
Stop processing when the socket closes 2025-06-03 16:50:22 -05:00
Max Radermacher
1be1234460
Wait for disconnect before suspending 2025-06-03 13:48:27 -05:00
Max Radermacher
0b2fe0b8dc
Invert web socket state management paradigm 2025-06-03 00:50:57 -05:00
Max Radermacher
e52b87f3c7
Schedule reconnect if we fail to connect 2025-06-03 00:32:49 -05:00
Max Radermacher
46bbcc4f05
Update connection state after re-warming caches 2025-06-02 15:25:16 -05:00
Max Radermacher
b0c183f9f4
De-protocolize/clean up AppExpiry 2025-06-02 15:24:04 -05:00
Max Radermacher
9952d0c64e
Asyncify AppExpiry (née remove TestScheduler use) 2025-05-30 14:33:15 -05:00
Max Radermacher
9e3f141b31 Rename method to be consistent 2025-05-30 02:34:36 -05:00
Max Radermacher
0a75ea88d5
Asyncify more OWSChatConnection logic 2025-05-30 02:29:16 -05:00
Max Radermacher
4a7c2265c3
Adjust connection keep-alives/reconnects/tokens 2025-05-30 02:25:51 -05:00
Max Radermacher
5c64d1fa0a
Remove OWSChatConnectionUsingSSKWebSocket 2025-05-30 02:13:48 -05:00
Max Radermacher
a0317778d9
Include apnToken when linking a new device 2025-05-22 15:33:48 -05:00
Sasha Weiss
7d6edb6412
Bulk rename MessageBackup types 2025-05-13 11:35:52 -07:00
Sasha Weiss
32a2c55945
Add BackupIdManager 2025-05-05 10:51:42 -07:00
Max Radermacher
4dc6c9ff33
Update default value for maxAverageBackoff 2025-04-30 11:58:50 -05:00
Max Radermacher
a1e479be13
Un-SDS-ify IncomingGroupsV2MessageJob 2025-04-23 17:51:32 -05:00
Max Radermacher
91ea7e2286
Rebuild GroupMessageProcessor types 2025-04-23 17:44:21 -05:00
Max Radermacher
9ff792ab21
Rip out ACKing optimization that may cause stalls 2025-04-22 18:23:12 -05:00
Max Radermacher
a819bb4dac
Convert TSRequest to a struct 2025-04-10 12:49:35 -05:00
Max Radermacher
660103274e
Re-warm caches each time the NSE is triggered 2025-04-10 11:42:06 -05:00
Jordan Rose
abe5f8709e OWSChatConnection: Don't race connection setup with sending requests
The connection isn't ready to use until start(listener:) is called,
but that was happening *after* the connecting Task completed. Now the
Task waits to sync with the serial queue before letting any sends
through.
2025-04-09 13:30:27 -07:00
Max Radermacher
f15537472d
Use clampedNanoseconds where it’s useful 2025-04-08 15:30:36 -05:00
Jordan Rose
cd5881a2bf OWSChatConnection: Avoid repeatedly cycling the libsignal socket
Previously, if three requests timed out at once, the libsignal socket
would be cycled three times. Now that'll only happen once.
2025-04-08 09:42:56 -07:00
Jordan Rose
a03b77a98b OWSChatConnection: De-promisify libsignal requests
There *is* a functionality change here: handling of responses and
request errors no longer jumps to the OWSChatConnection serial queue.
None of the processing done in either the success or failure case
cares what queue it's on, and because of the use of async there were
already no guarantees about the order of enqueues.

Groundwork for the next commit.
2025-04-08 09:42:56 -07:00
Max Radermacher
6b57c58989
Don’t throw assertions when the app is expired 2025-04-07 22:59:55 -05:00
Sasha Weiss
969b0db854
Add SubscriptionFetcher, decoupled from donations 2025-04-07 12:52:44 -07:00