Fedor Indutny
da45f26d37
Drop verified syncs, use storage service for event
2022-04-20 19:41:52 -04:00
Fedor Indutny
e8d268b466
Clear previous pending pni identity events
2022-04-18 16:33:17 -07:00
Josh Perez
e3d537cbd3
Render group stories
2022-04-14 20:08:46 -04:00
Josh Perez
9f7ee9ae79
Force set expirationStartTimestamp on story messages
2022-04-11 14:28:01 -07:00
Scott Nonnenberg
9e54f55c22
Ensure that waitForAll functions catch and log thrown errors
2022-04-11 10:53:57 -07:00
Josh Perez
0f16ef5dd6
Do not try to download text attachments
2022-04-08 10:03:10 -07:00
Josh Perez
fc9bdf9398
Process text story messages
2022-04-05 21:18:07 -04:00
Scott Nonnenberg
99687a4b5b
Remove support for legacyMessage
2022-03-30 20:07:55 -07:00
Josh Perez
7316e880e8
Changes story message receiver acceptance logic 2
2022-03-29 18:38:17 -07:00
Josh Perez
9d3f0072a5
Changes story message receiver acceptance logic
2022-03-28 17:35:56 -07:00
Fedor Indutny
a0ae7c1aa2
Request and handle PniIdentity sync message
2022-03-25 10:36:08 -07:00
Jordan Rose
5a107e1bc3
Update for @signalapp/libsignal-client rename
2022-03-24 14:47:21 -07:00
Fedor Indutny
ca3f8b7df0
Store receivedAtCounter separately for unprocessed
2022-03-24 14:28:56 -07:00
Fedor Indutny
2eaacac151
Use --force-long with pbjs
2022-03-23 13:49:27 -07:00
Scott Nonnenberg
1d268da50b
Drop stories and their replies if feature flag is disabled
2022-03-21 16:17:55 -07:00
Josh Perez
d0898cb0c2
Do not set conversation expire timer on incoming story msgs
2022-03-09 18:20:01 -08:00
Josh Perez
eb91eb6fec
Process incoming story messages
2022-03-04 13:14:52 -08:00
Fedor Indutny
3b4106d9dd
Change order of syncs during linking
2022-03-02 14:53:47 -08:00
Evan Hahn
052a8e65e2
Add "clean up timer if necessary" utility
2022-02-25 10:37:15 -08:00
Scott Nonnenberg
b33b5d2a30
profileKey: Check length of incoming values, clear on failed send/fetch
2022-02-22 14:34:57 -06:00
Scott Nonnenberg
a1639f111e
envelopeTypeToCiphertextType: Handle all envelope types
2022-02-22 14:32:25 -06:00
Scott Nonnenberg
0bb0e6e9fc
MessageReceiver: Extract cipherTextBytes/Type from non-sealed messages
2022-02-16 11:41:28 -06:00
Scott Nonnenberg
2603d53891
Improve storage service migration to new field understanding
2022-01-26 15:39:25 -08:00
Scott Nonnenberg
5f34ece87c
TaskWithTimeout: After suspend, don't start timers for new tasks
2022-01-26 12:39:24 -08:00
Scott Nonnenberg
68a458ec4a
Honor preferContactAvatars field on AccountRecord
2022-01-25 09:44:45 -08:00
Fedor Indutny
3c836908aa
Revert "MessageReceiver: Pause processing of new messages on suspend"
...
This reverts commit d74424a3b8
.
2022-01-24 15:50:32 -08:00
Scott Nonnenberg
fb31a02d88
MessateReceiver.maybeUpdateTimestamp: Annotate group identifier for log
2022-01-20 18:09:03 -08:00
Scott Nonnenberg
d74424a3b8
MessageReceiver: Pause processing of new messages on suspend
2022-01-20 14:47:06 -08:00
Scott Nonnenberg
f1586578ff
Properly handle groupIds in incoming block sync
2022-01-19 16:39:27 -08:00
Fedor Indutny
885b4d4d2e
Trigger EnvelopeEvent for unsealed envelopes
2022-01-18 17:10:53 -08:00
Scott Nonnenberg
06165cb742
Include sender keys in SignalProtocolStore zones
2022-01-07 18:12:13 -08:00
Fedor Indutny
e98b281644
Use serverTimestamp for delivery receipts
2022-01-06 12:12:53 -08:00
Fedor Indutny
77924918df
Don't treat TimeoutError as a decryption error
2021-11-30 20:34:05 +01:00
Fedor Indutny
76a30a5196
Use throwOnTimeout
option for PQueue
2021-11-23 23:01:03 +01:00
Fedor Indutny
4afe1475d5
Add separator to envelope log id
2021-11-19 09:21:29 -08:00
Scott Nonnenberg
e45b3e97d0
Update protos with planned changes for stories
2021-11-15 17:20:09 -08:00
Fedor Indutny
5076972c5b
Add exhaustive UUIDKind checks to MessageReceiver
2021-11-15 16:10:18 -08:00
Evan Hahn
ede34ecee3
Enable noImplicitOverride
TypeScript compiler option
2021-11-12 15:44:20 -08:00
Fedor Indutny
066a23a6a9
Preliminary support for destinationUuid field
2021-11-12 13:26:52 -08:00
Evan Hahn
5619eeca83
Upgrade Prettier to 2.4.1
2021-11-11 16:43:05 -06:00
Evan Hahn
d6ffb08a63
Disable class-methods-use-this
lint rule
2021-11-04 16:04:51 -05:00
Evan Hahn
74fde10ff5
Prefer import type
when importing types
2021-10-26 14:15:33 -05:00
Scott Nonnenberg
51af6947d4
onDecryptionError/onRetryRequest: Don't run until queue is empty
2021-10-20 14:50:00 -07:00
Fedor Indutny
4ef0bf96cc
Uint8Array migration
2021-09-23 17:49:05 -07:00
Fedor Indutny
b9d6497cb1
Better types for WebAPI
2021-09-21 17:58:03 -07:00
Scott Nonnenberg
250a89d953
Additional logging, new ability to force Conversation 'change' event
2021-09-20 11:51:30 -07:00
Fedor Indutny
b83c00f43f
Defer unprocessed item attempt update
2021-09-17 16:11:24 -07:00
Josh Perez
65ddf0a9e8
Import log instead of using it off of window
2021-09-17 14:27:53 -04:00
Fedor Indutny
091f3653e7
Ensure conversation id in storeSession
2021-09-10 10:17:32 -07:00
Fedor Indutny
c7e7d55af4
UUID-keyed lookups in SignalProtocolStore
2021-09-09 19:38:11 -07:00
Evan Hahn
9e9a815a2b
ESLint: allow for..of
2021-08-26 13:18:00 -05:00
Fedor Indutny
fff4e9e97f
Simplify envelope drop due to stopped processing
2021-08-25 16:10:09 -07:00
Scott Nonnenberg
4a6d28e118
MessageReceiver: Drop blocked senders only after processing SKDMs
2021-08-17 11:40:55 -07:00
Evan Hahn
b0750e5f4e
Show "unplayed" dot on incoming audio messages
2021-08-12 13:15:55 -05:00
Scott Nonnenberg
81f06e2404
Sender Key: Hardcode senderKey to true, during link and thereafter
2021-08-10 17:41:27 -07:00
Fedor Indutny
8703b0e020
Reduce log file size
2021-08-09 15:04:17 -07:00
Fedor Indutny
a001882d58
Change Phone Number notifications
2021-08-05 16:34:49 -07:00
Fedor Indutny
21ffb7c054
Unseal envelope in a separate step for better logs
2021-08-02 14:17:56 -07:00
Fedor Indutny
1c1d0e2da0
Move to websocket for requests to signal server
2021-07-28 14:37:09 -07:00
Fedor Indutny
85004699f5
MessageReceiver: Unwrap envelopes earlier in the processing chain
2021-07-27 12:55:39 -07:00
Evan Hahn
14929fb408
Show "unplayed" dot on outgoing audio messages
2021-07-27 10:42:25 -05:00
Scott Nonnenberg
eba182f8d0
Better logging for sealed sender, sender key distribution
2021-07-23 15:37:04 -07:00
Fedor Indutny
9c6343e10d
Unify MessageReceiver and MessageReceiverInner
2021-07-23 13:47:03 -07:00
Scott Nonnenberg
b0eaae93f1
archiveSessionOnMatch: Check for ratchet key match as well
2021-07-23 10:44:21 -07:00
Fedor Indutny
fdec47d637
Use single WebAPI instance across the app
2021-07-23 10:23:50 -07:00
Evan Hahn
07f0efc45f
Rename "view sync" to "view once open sync"
2021-07-22 12:07:53 -05:00
Fedor Indutny
886e8966ff
Drop support for signaling key
2021-07-19 18:11:07 -07:00
Scott Nonnenberg
a42c41ed01
Message Send Log to enable comprehensive resend
2021-07-15 16:48:09 -07:00
Scott Nonnenberg
f7c85432a5
Ensure sender info propagates after sealed sender decrypt error
2021-07-15 12:13:48 -07:00
Fedor Indutny
c3bdf3d411
Show lightbox for GIFs
2021-07-14 16:39:52 -07:00
Fedor Indutny
570fb182d4
Fully move to protobufjs
2021-07-13 11:54:53 -07:00
Fedor Indutny
ddbbe3a6b1
More protobufjs migration
2021-07-09 12:36:10 -07:00
Fedor Indutny
299fe2af36
More protobufjs use
2021-07-02 14:21:24 -05:00
Evan Hahn
7dac480df5
Don't expire incoming expiration timer updates
2021-07-01 16:48:40 -07:00
Fedor Indutny
a6394e0c8b
Reconnect within MessageReceiver
2021-06-23 09:47:42 -05:00
Fedor Indutny
9f0c630574
Move to protobufjs in ts/groups.ts
2021-06-22 09:46:42 -05:00
Scott Nonnenberg
68f1023946
Move message.getPropsForBubble and friends to selectors
2021-06-17 10:15:10 -07:00
Fedor Indutny
8f5086227a
Enforce stronger types for ArrayBuffers and storage
2021-06-14 17:09:37 -07:00
Fedor Indutny
17e6ec468e
Faster WebSocket reconnects
2021-06-09 15:28:54 -07:00
Scott Nonnenberg
bff3f0c74a
Sender Key: Prepare for production
2021-06-08 14:51:58 -07:00
Scott Nonnenberg
5a4fc5e425
Sender Key: Disable capability and bug fixes
2021-06-01 12:40:09 -07:00
Scott Nonnenberg
ee513a1965
Support for message retry requests
2021-05-28 12:11:19 -07:00
Scott Nonnenberg
b63d8e908c
Properly unpad incoming sender key messages
2021-05-28 09:06:09 -07:00
Evan Hahn
d4dc9b8e39
Message Requests: Add new "Report spam and block" button
2021-05-27 13:37:58 -07:00
Fedor Indutny
227f532ec2
Fix processing of cached envelopes
2021-05-24 14:30:56 -07:00
Scott Nonnenberg
e76252d3b2
Fixes for Sender Key: Receive
2021-05-24 11:59:45 -07:00
Fedor Indutny
79a90802c0
Use websocket queue for queueAllCached()
2021-05-24 11:00:53 -07:00
Fedor Indutny
7b164fdf91
Further improve in-memory transactions in MessageReceiver
2021-05-20 17:37:26 -07:00
Fedor Indutny
7c07fdd589
Fix in-memory transactions in MessageReceiver
2021-05-20 17:37:19 -07:00
Fedor Indutny
7418a5c663
Rename locks to zones
2021-05-20 17:37:18 -07:00
Fedor Indutny
1f0119a7ac
Reuse global locks, handle empty envelopes
2021-05-20 17:37:17 -07:00
Fedor Indutny
2abc331058
Fix in-memory transactions while accessing sessions
2021-05-20 17:37:10 -07:00
Fedor Indutny
94d2c56ab9
Introduce in-memory transactions for sessions
2021-05-20 17:37:09 -07:00
Scott Nonnenberg
e6bab06510
Receive support for Sender Key
...
Co-authored-by: Fedor Indutny <79877362+indutny-signal@users.noreply.github.com>
2021-05-20 17:37:08 -07:00
Scott Nonnenberg
4c249ce5dc
Don't reset session if sealed sender wrapper is invalid
2021-05-20 17:37:08 -07:00
Scott Nonnenberg
86d2a4b5dd
decrypt/encrypt with libsignal-client, remove libsignal-protocol-javascript
2021-04-29 14:27:35 -07:00
Fedor Indutny
4978fae69c
Call serverTimestamp.toNumber()
for unprocessed
2021-04-28 13:21:11 -07:00
Fedor Indutny
a4ff7ae240
Report more performance stats
2021-04-13 16:43:56 -07:00
Evan Hahn
a82fa86176
Fetch sender certificates on-demand
2021-04-09 00:06:46 -04:00
Jost Schulte
9823eb2201
Fix typos in TypeScript and SCSS files
...
See [#5136 ][0].
[0]: https://github.com/signalapp/Signal-Desktop/pull/5136
2021-04-02 15:28:07 -05:00
Fedor Indutny
5c8cb6b89b
Decrease batcher wait time to speed up startup
2021-03-30 20:40:48 -04:00
Fedor Indutny
746e99b8c2
Flush all watchers on empty queue
2021-03-25 17:00:03 -07:00
Scott Nonnenberg
7ffc01f0b0
MessageReceiver: Restore queuing for in-order decryption
2021-03-19 16:57:36 -04:00
Scott Nonnenberg
0eec84391f
MessageReceiver: Be resilient to failed updateCache call
2021-03-19 16:57:36 -04:00
Josh Perez
62e04a1bbd
Fix for unread syncs and ooo reactions
2021-03-19 16:57:35 -04:00
Josh Perez
468d491d34
Optimizations to the performance improvement changes
2021-03-19 16:57:35 -04:00
Josh Perez
d82ce07942
Improve cold start performance
2021-03-19 16:57:35 -04:00
Scott Nonnenberg
c9ffb7c014
Move SecretSessionCipher to TypeScript
2021-03-19 16:57:35 -04:00
Scott Nonnenberg
1ee47735d9
Add 'chat session refreshed' to timeline for every error
2021-03-19 16:53:51 -04:00
Scott Nonnenberg
98e7e65d25
Automatic session reset
2021-03-19 16:53:51 -04:00
Scott Nonnenberg
bc0f4387fe
Backwards compatibility updates for libsignal-client
2021-02-12 10:38:49 -08:00
Scott Nonnenberg
9858ae0642
Honor messageKeysLimit, remove batching for session saves
2021-02-10 14:47:55 -08:00
Evan Hahn
8a72607fa7
Prefer type
to interface
and add an ESLint rule
2021-01-25 18:29:00 -08:00
Evan Hahn
dd0ea6b3fe
Upgrade TypeScript to the latest version, v4.1.3
2021-01-25 18:28:57 -08:00
Scott Nonnenberg
37aa3146bb
Be resilient to missing data in MessageReceiver constructor
2021-01-11 14:23:09 -08:00
Scott Nonnenberg
bc57a31e99
MessageReceiver: Envelope id is always locally generated
2021-01-11 14:23:09 -08:00
Scott Nonnenberg
5369950c1d
Don't promote archived sessions, more logging on error
2020-12-09 14:05:11 -08:00
Scott Nonnenberg
a4d0c0dfab
MessageReceiver: still queue message, even if respond(200) fails
2020-12-03 10:04:50 -06:00
Scott Nonnenberg
845532c9b7
MessageReceiver: Wait for derived GV1 data
2020-12-02 14:31:42 -08:00
Scott Nonnenberg
2c69f2c367
Support for GV1 -> GV2 migration
2020-11-23 14:48:12 -05:00
Evan Hahn
8bfaf598af
Add license headers across the project
2020-11-04 13:03:13 -06:00
Scott Nonnenberg
05f905fd10
A few small bugfixes
2020-10-30 10:56:03 -07:00
Scott Nonnenberg
74de4ea6f6
Capture original error stack when sending messages
2020-10-26 15:48:44 -07:00
Scott Nonnenberg
0122cfd22a
Resilience to quick reconnects: always reprocess from cache first
2020-10-12 18:10:08 -04:00
Scott Nonnenberg
b914b59969
Disable obsolete feature flags
2020-10-12 18:10:08 -04:00
Sidney Keese
dabab60f56
Remove TSLint
...
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
2020-10-12 18:10:07 -04:00
Sidney Keese
7b6d8f55d6
Migrate textsecure to eslint
...
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
2020-10-12 18:10:07 -04:00
Scott Nonnenberg
9f73b40d7a
MessageReceiver: Use UUID if we have it
2020-09-25 09:20:36 -05:00
Scott Nonnenberg
bc3b61db1d
Add p-queue timeouts; fix search crash; improve promise rejection logging
2020-09-21 15:42:51 -04:00
Scott Nonnenberg
deb3dd5d4e
A couple of small bugfixes
2020-09-10 15:06:26 -05:00
Scott Nonnenberg
7a02cc815d
Support for new GroupV2 groups
2020-09-09 17:34:57 -07:00
Evan Hahn
f6dcf91dbf
Fix inbound link preview images
2020-09-04 14:41:07 -05:00
Evan Hahn
bd32a55c15
Fix issue with dates on inbound link previews
2020-09-02 14:49:47 -04:00
Scott Nonnenberg
81cb7730a5
Message Requests improvements
2020-08-06 20:50:54 -04:00
Scott Nonnenberg
b63291507a
Sync messages: Additional debugging info, consistent ids
2020-08-06 13:28:56 -04:00
Scott Nonnenberg
901179440f
Merge contacts when we discover split or duplicated contacts
2020-07-30 13:17:45 -07:00
Josh Perez
8502d23576
Social Graph: read-only state sync with primary device
2020-07-30 13:10:05 -07:00
Jim Gustafson
e87a0103cc
Use message age to expire old incoming calls
2020-07-30 13:10:05 -07:00
Ken Powers
bf04c9114e
Harden UUID-handling code paths
2020-07-30 13:10:03 -07:00
Peter Thatcher
d3a27a6442
Calling support
2020-07-30 13:08:47 -07:00
Ken Powers
83574eb067
Message Requests
2020-07-30 13:08:44 -07:00
Scott Nonnenberg
1518b159d3
Only use membersE164 field in GroupV1 messages
2020-07-27 14:49:37 -07:00
Josh Perez
ba6cb653bf
Drop group messages that don't change group
2020-07-13 16:06:24 -07:00
Scott Nonnenberg
97b657da6d
MessageReceiver: Drop sync messages with GroupContextV2
2020-05-05 14:18:46 -07:00
Ken Powers
ba5e2ff6e5
Receive support for DOE messages
2020-04-29 17:42:41 -07:00
Ehren Kret
a0e9791623
Add support for receiving attachments from CDN 2
2020-04-29 17:42:41 -07:00
Scott Nonnenberg
97a6e01d24
MessageReceiver: Drop messages with GroupContextV2
2020-04-15 14:45:11 -07:00
Scott Nonnenberg
b7d56def82
Moves libtextsecure to Typescript
...
* Starting to work through lint errors
* libsignal-protocol: Update changes for primary repo compatibility
* Step 1: task_with_timeout rename
* Step 2: Apply the changes to TaskWithTimeout.ts
* Step 1: All to-be-converted libtextsecure/*.js files moved
* Step 2: No Typescript errors!
* Get libtextsecure tests passing again
* TSLint errors down to 1
* Compilation succeeds, no lint errors or test failures
* WebSocketResources - update import for case-sensitive filesystems
* Fixes for lint-deps
* Remove unnecessary @ts-ignore
* Fix inability to message your own contact after link
* Add log message for the end of migration 20
* lint fix
2020-04-15 14:45:11 -07:00