Alex Konradi
0cf9d20e21
backup: track more message backup fields
2024-05-30 11:17:38 -04:00
moiseev-signal
26ffef9ce0
net: Use EndpointParams in EnclaveEndpoint
2024-05-28 17:24:57 -07:00
moiseev-signal
75be990387
net+svr3: Enforce RaftConfig on type level
2024-05-28 14:02:38 -07:00
Jordan Rose
8b0f6f27a3
cargo update
2024-05-28 13:14:32 -07:00
moiseev-signal
71031786dc
SVR3: Support production enclaves
2024-05-28 10:09:18 -07:00
Alex Konradi
31d6015522
backups: add shared message backup test cases
2024-05-24 15:59:44 -04:00
Alex Konradi
e925c5d9d9
Bump to version 0.48.0
2024-05-24 15:06:29 -04:00
Jordan Rose
e90cf320f6
net: Improve logs for websocket connection failures
2024-05-24 10:07:30 -07:00
Alex Konradi
18f35aa316
Treat subscriber ID and currency as optional
2024-05-24 11:42:49 -04:00
Alex Konradi
f015765008
Import backup proto definition
...
Notable changes:
- addition of chat styles
2024-05-24 08:59:53 -04:00
Jordan Rose
e718c20095
net: Warn on excessive backpressure for server->client requests
2024-05-23 17:58:23 -07:00
Jordan Rose
e71180811a
bridge: Name tokio's worker threads explicitly
2024-05-23 17:17:36 -07:00
Jordan Rose
9a8429da46
net: Add AppExpired and DeviceDeregistered errors for ChatService
...
And check bridging for every high-level ChatServiceError like we do
with CdsiLookupErrors.
2024-05-23 10:27:28 -07:00
Sergey Skrobotov
62f347e866
net: consolidating timeout constants
2024-05-22 16:50:53 -07:00
Jordan Rose
770dd1bbc2
node: Add cancellation support via AbortController
2024-05-22 13:11:09 -07:00
Jordan Rose
422b6098ed
swift: Fix format string used for logging in tests
2024-05-22 13:10:39 -07:00
Jordan Rose
de252fd84d
swift: Remove reference to deleted Logging.m
2024-05-22 13:10:39 -07:00
Jordan Rose
0cea81bb66
swift: ChatService.didReceiveIncomingMessage's sendAck is @escaping
...
...since acks of incoming messages are asynchronous (they don't happen
until the message is either fully processed or saved durably).
2024-05-22 13:10:39 -07:00
Alex Konradi
eb63e3037c
Import latest backup proto definition
...
Notable changes:
- addition of payment notifications
2024-05-22 15:25:05 -04:00
Alex Konradi
b81c6393ff
Split up backup/chat.rs
...
Move code for various categories of messages into their own modules. This is a
functional no-op.
2024-05-22 10:47:20 -04:00
Alex Konradi
c4917d6329
Track values in chat-related protos
...
Validate some missed values from chat protos and retain the values in-memory
for use in the backup comparator.
2024-05-22 10:02:55 -04:00
Jordan Rose
878d3d4332
bridge: Move Chat-related items into a submodule
2024-05-21 16:28:22 -07:00
Max Moiseev
1086531d79
Bump to version 0.47.0
2024-05-21 14:40:12 -07:00
Jordan Rose
a5fa231a1c
bridge: Expose ChatService_InjectRawServerRequest for testing
2024-05-21 13:04:18 -07:00
Jordan Rose
a513d61a09
bridge: Expose ChatListener to Swift
...
(and lay groundwork for the other bridges)
2024-05-21 13:04:18 -07:00
Jordan Rose
a31d5b0dbc
gen_ts_decl: Ignore "unused" warnings
...
It's common, especially during development, that certain items will
only be used by one bridge.
2024-05-21 13:04:18 -07:00
moiseev-signal
70ba17491c
SVR3: Implement remove API
2024-05-21 10:33:33 -07:00
moiseev-signal
c55aa17a9f
SVR3: Propagate tries_remaining on restore failure
2024-05-20 15:49:59 -07:00
Jon Chambers
59addf10ec
Make ECPrivateKey#<init>(byte[])
public
2024-05-20 18:09:50 -04:00
Alex Konradi
404c52df99
Remove timeout for multi-route connection manager
...
The multi-route manager wraps individual connection managers with their own
internal timeouts, so it doesn't need one of its own. Refactor the logic to
make the error cases more clear.
2024-05-20 17:16:48 -04:00
Alex Konradi
f18b39f5b0
Revert "Move message backup proto and I/O to new crate"
...
This reverts commit 55536686be
.
2024-05-20 16:50:03 -04:00
Jordan Rose
e1aa542bd5
ffi: Expose LibsignalLogger protocol rather than depending on DDLog
...
This drops the SignalCoreKit dependency for the CocoaPod, but does
mean clients will have to register their own logger explicitly.
2024-05-20 13:43:39 -07:00
Alex Konradi
3e1c50a4d5
Keep all message backup account data and call fields during validation
...
When converting account data and call-related protobuf messages into in-memory
forms, retain the values of all fields instead of discarding some. This is the
first step in making it possible to compare the in-memory versions of backups
for testing.
2024-05-20 16:17:17 -04:00
Jordan Rose
b9e021659b
java: Check for invalid key sizes more thoroughly in ECPublicKey
2024-05-20 10:41:55 -07:00
moiseev-signal
bc5875b225
SVR3: Propagate tries_remaining upon successful restore
2024-05-20 08:54:46 -07:00
Max Moiseev
1e1acff7ba
SVR3: Make the tpm2 attestation test resilient to enclave changes
2024-05-20 08:43:02 -07:00
Max Moiseev
bd8e552b3f
SVR3: Support new staging enclaves
2024-05-20 08:43:02 -07:00
Alex Konradi
38092e9ab0
Update backup proto from specs
...
Major changes:
- addition of call links
- split of Call message into IndividualCall, GroupCall, AdHocCall
- moving AdHocCall back to top-level frame type
2024-05-20 10:31:37 -04:00
Alex Konradi
f86cbdcdf0
Fix class loading issue with GraalVM
...
Co-authored-by: Sebastian <asamk@gmx.de>
2024-05-17 17:09:14 -04:00
Jordan Rose
7dc63b99af
ffi: Expose cancellation to Swift
2024-05-17 11:30:24 -07:00
Jordan Rose
6d3c192208
ffi: Wrap promise callbacks and contexts in a struct
...
...and pass that struct by reference.
This has some benefits and some drawbacks:
+ Type inference is (usually) more reliable; invokeAsyncFunction no
longer needs a "returning:" parameter for disambiguation.
+ We can add more fields to the promise structs as needed.
+ We can use the same argument for input and output.
- Before, every promise that produced an OpaquePointer could share one
protocol implementation on the Swift side. Now, they're separate.
- The manual type erasure code in the implementation of Completer has
gotten worse.
- Using the same argument for input and output may be confusing.
2024-05-17 11:30:24 -07:00
Alex Konradi
4f630a60f4
Stop tracking call IDs in message backups
...
Call identifiers are not required to be unique across a client, and unlike chat
IDs and recipient IDs, call IDs are not used as foreign keys elsewhere in a
backup file. Calls shouldn't be checked for uniqueness and therefore don't need
to be tracked at the top level.
2024-05-17 10:39:58 -04:00
Jordan Rose
1aedf124cd
Bump version to v0.46.2
2024-05-16 16:02:06 -07:00
Sergey Skrobotov
aea24d02e6
net: restoring a practical Default for DnsResolver
2024-05-16 15:36:08 -07:00
Jordan Rose
3c7acdbdb4
net: Fix use of rustls-platform-verifier on non-Linux
2024-05-16 15:34:35 -07:00
Sergey Skrobotov
953b07ec0d
net: test that one route is attempted until it goes into cooldown
2024-05-16 11:09:06 -07:00
Sergey Skrobotov
052fd5bed2
net: clear in-flight requests map on ipv6_enabled flag change
2024-05-16 11:08:50 -07:00
Jordan Rose
9b9bd7cead
Bump to version v0.46.1
2024-05-15 16:23:07 -07:00
Jordan Rose
99e337f552
bridge: Expose authenticated sends on ChatService
2024-05-15 15:48:47 -07:00
Jordan Rose
99bb74ee21
net: Debounce connection requests with pessimistic timeouts
...
Specifically, if a connection attempt takes a while to get started,
such that there's less than 500ms left on the timeout, don't even
bother sending a request that would probably fail anyway.
2024-05-15 11:16:37 -07:00