Jon Chambers
5627209fdd
Add a gRPC service for working with pre-keys
2023-07-20 11:10:26 -04:00
Jonathan Klabunde Tomer
0188d314ce
minor username api refinements
2023-07-19 15:12:47 -07:00
Jonathan Klabunde Tomer
67343f6bdc
accept encrypted username with confirm-username-hash requests
2023-07-19 10:54:11 -07:00
Katherine Yen
ade2e9c6cf
Define asynchronous `ProfilesManager` operations
2023-07-19 10:43:58 -07:00
Sergey Skrobotov
352e1b2249
test classes moved to same packages with components they test
2023-07-17 13:34:58 -07:00
Jon Chambers
b8d8d349f4
Control inbound message byte limits with a dynamic configuration flag
2023-07-14 16:25:33 -04:00
Jon Chambers
e87468fbe0
Add a rate limit for inbound message bytes for a given account
2023-07-14 16:25:33 -04:00
Jon Chambers
e38a713ccc
Support sub-millisecond permit regeneration durations in rate limiters
2023-07-14 16:25:33 -04:00
Jon Chambers
82ed783a2d
Introduce async account updaters
2023-07-14 16:25:19 -04:00
Jon Chambers
d17c7aaba6
Add support for clearing accounts from Redis asynchronously
2023-07-14 16:25:19 -04:00
Katherine Yen
8c93368b20
Update to the latest version of the spam filter
2023-07-13 12:43:07 -07:00
Jon Chambers
41f61c66a3
Add public methods for fetching accounts asynchronously
2023-07-13 13:53:29 -04:00
Jon Chambers
1b7a20619e
Add tools for testing asynchronous Redis operations
2023-07-13 13:53:29 -04:00
Jon Chambers
7d19e58953
Add parallel pathways for getting accounts asyncronously to `Accounts`
2023-07-13 13:53:29 -04:00
Jon Chambers
1605676509
Store signed EC pre-keys in a dedicated table when setting signed pre-keys individually
2023-07-12 14:58:10 -04:00
Jon Chambers
a0d6146ff5
Make key deletion operations asynchronous
2023-07-12 14:58:10 -04:00
Jon Chambers
f709b00be3
Make `KeysManager` storage/retrieval operations asynchronous
2023-07-12 14:58:10 -04:00
Jonathan Klabunde Tomer
5847300290
Revert "Allow use of the token returned with spam challenges as auth for the challenge verification request"
2023-07-12 11:45:02 -07:00
Jonathan Klabunde Tomer
9aaac0eefd
don't require all devices to support PNI for PNIHW
2023-07-12 10:14:16 -07:00
Jon Chambers
c5ae9913fe
Update to the latest version of the spam filter
2023-07-11 13:48:07 -04:00
Jon Chambers
fc2ad20c63
Update to the latest version of the spam filter
2023-07-11 13:36:12 -04:00
Jon Chambers
6db97f5541
Standardize client tag version handling; add client version tags to delivery latency metrics
2023-07-11 13:35:29 -04:00
Jon Chambers
adf6c751ee
Use an explicit-allow model for tagging client versions in metrics
2023-07-11 13:35:29 -04:00
Jon Chambers
c315b34395
Update formatting in `UserAgentTagUtil`
2023-07-11 13:35:29 -04:00
Jon Chambers
f592201e4c
Limit attachment controller tags to UA platform (instead of platform and version)
2023-07-11 13:35:29 -04:00
Jon Chambers
8bf5ee45ed
Filter out `command` tags from Lettuce metrics and prepend a "chat." prefix to Lettuce metric names
2023-07-11 13:35:03 -04:00
Jon Chambers
25f759dd07
Drop `ActiveUserTally`
2023-07-11 13:34:36 -04:00
Jonathan Klabunde Tomer
e5f4c17148
update openapi docs for several endpoints, notably those with PQXDH changes
...
Co-authored-by: Katherine Yen <katherine@signal.org>
2023-07-06 15:45:33 -07:00
Jonathan Klabunde Tomer
098b177bd3
Allow use of the token returned with spam challenges as auth for the challenge verification request
2023-07-06 15:25:19 -07:00
Jon Chambers
ef1a8fc50f
Use PascalCase RPC names for the registration service
2023-07-06 17:12:37 -04:00
Jon Chambers
76f2e93a2c
Reduce concurrency limit for pre-key migration task
2023-07-06 16:45:03 -04:00
Jon Chambers
25ea1df299
Limit concurrency when writing signed EC pre-keys
2023-07-06 15:51:12 -04:00
Chris Eager
5ced86af1d
Set `consistentRead=true` for registration recovery password lookup
...
This avoids a race condition (in integration test situations) where a lookup could return no results
2023-07-06 15:47:16 -04:00
Jon Chambers
62e02a49df
Log errors from single-shot account crawlers rather than printing them to stderr
2023-07-06 15:46:28 -04:00
Jon Chambers
540550d72a
Handle exceptions thrown when checking pre-key signatures
2023-07-06 15:46:11 -04:00
Jon Chambers
8cb83fb6e4
Switch to temporary registration endpoints to facilitate a change from snake_case to PascalCase
2023-07-06 15:46:00 -04:00
Jon Chambers
56db925f0e
Update to the latest version of the spam filter
2023-07-06 10:33:58 -04:00
Jon Chambers
2c0fc8fe3e
Remove legacy methods from `RegistrationServiceClient`
2023-07-06 10:32:58 -04:00
Jon Chambers
08c7baafac
Remove legacy registration endpoints from `AccountController`
2023-07-06 10:32:58 -04:00
Jon Chambers
8edb450d73
Parallelize single-shot account crawlers
2023-07-06 10:15:16 -04:00
ravi-signal
fedeef4da5
Add an optional parameter to require atomic account creation
...
By default, if a registration request has no optional fields for atomic
account creation set, the request will proceed non-atomically. If a
client sets the `atomic` field, now such a request would be rejected.
2023-07-05 11:24:11 -05:00
Jon Chambers
b593d49399
Control signed pre-key deletion via a dynamic configuration flag to facilitate migration
2023-07-05 12:17:17 -04:00
Chris Eager
4a91fc3c3d
Set `daemon=true` for pubsub topology change event thread
2023-07-05 11:15:12 -05:00
Chris Eager
bb9605d7c3
Use RedisClient#setDefaultTimeout for a non-clustered client
2023-07-05 11:09:28 -05:00
Jon Chambers
1049326a70
Turn on Lettuce latency metrics
2023-06-30 18:20:43 -04:00
Chris Eager
457ecf145f
Add test for Redis timeouts
2023-06-30 12:55:37 -05:00
Chris Eager
463dd9d7d8
Update to Lettuce 6.2.4
2023-06-30 12:55:37 -05:00
Chris Eager
bdcd055aaf
Configure Redis timeouts using TimeoutOptions and RediURI
2023-06-30 12:55:37 -05:00
Jon Chambers
30ae2037e8
Correct order of constructor arguments for `KeysManager`
2023-06-30 12:05:16 -04:00
Jon Chambers
ce4fdbfb3c
Untangle metric names for `RepeatedUseSignedPreKeyStore` subclasses
2023-06-30 10:33:24 -04:00