Commit Graph

278 Commits

Author SHA1 Message Date
Matthew Chen
6341905c9b Respond to CR.
// FREEBIE
2017-04-17 16:45:22 -04:00
Matthew Chen
ced9d6f460 Retry group sends if any of its errors are re-tryable.
// FREEBIE
2017-04-17 16:11:51 -04:00
Matthew Chen
f191d6b096 Respond to CR.
// FREEBIE
2017-04-17 16:11:51 -04:00
Matthew Chen
aa70ada399 Refine error handling for outgoing group messages.
// FREEBIE
2017-04-17 16:11:51 -04:00
Matthew Chen
db051b3b3e Consider group send a failure if sending to any member in the group fails.
// FREEBIE
2017-04-17 16:11:51 -04:00
Matthew Chen
1023eeb8a0 Rework outgoing message state.
// FREEBIE
2017-04-17 16:11:51 -04:00
Matthew Chen
1404d0d7eb Rework outgoing message state.
// FREEBIE
2017-04-17 16:11:51 -04:00
Matthew Chen
bf18b1f286 Rework outgoing message state.
// FREEBIE
2017-04-17 16:11:51 -04:00
Matthew Chen
654ef89049 Rework outgoing message state.
// FREEBIE
2017-04-17 16:11:51 -04:00
Matthew Chen
04dc930e0c Rework outgoing message state.
// FREEBIE
2017-04-17 16:11:51 -04:00
Matthew Chen
0ab6bcd080 Rework outgoing message state.
// FREEBIE
2017-04-17 16:11:51 -04:00
Matthew Chen
42e005a498 Avoid lost messages by acknowledges message receipt after the message is processed.
// FREEBIE
2017-04-17 16:05:59 -04:00
Matthew Chen
406e2d862b De-bounce the prekey checks.
// FREEBIE
2017-04-14 14:31:28 -04:00
Matthew Chen
0224af7465 De-bounce the prekey checks.
// FREEBIE
2017-04-14 14:31:28 -04:00
Michael Kirk
522c191fd1 Persist when signed pre key was 'acceptedByService'
// FREEBIE
2017-04-14 10:56:20 -04:00
Matthew Chen
fa2ff8158c Respond to CR.
// FREEBIE
2017-04-13 16:05:59 -04:00
Matthew Chen
40dcc7c873 Honor attachment filenames.
// FREEBIE
2017-04-13 15:41:39 -04:00
Matthew Chen
bc10aea202 Honor attachment filenames.
// FREEBIE
2017-04-13 15:41:39 -04:00
Matthew Chen
b09f7e5e52 Honor attachment filenames.
// FREEBIE
2017-04-13 15:41:39 -04:00
Matthew Chen
715e9e85ff Respond to CR.
// FREEBIE
2017-04-13 15:36:59 -04:00
Matthew Chen
00f1b53e61 Reduce usage of contacts intersection endpoint.
// FREEBIE
2017-04-13 15:28:45 -04:00
Matthew Chen
06a56ccede Update SignalAttachment to allow arbitrary attachments.
// FREEBIE
2017-04-13 15:25:28 -04:00
Matthew Chen
aa3402b535 Respond to CR.
// FREEBIE
2017-04-12 11:59:16 -04:00
Matthew Chen
04b3166b85 Rework socket manager.
// FREEBIE
2017-04-12 11:59:16 -04:00
Matthew Chen
b7e24c664b Rework socket manager.
// FREEBIE
2017-04-12 11:59:16 -04:00
Matthew Chen
3d46f8e835 Rework socket manager.
// FREEBIE
2017-04-12 11:59:16 -04:00
Michael Kirk
edc556b106 Fix multiple match for SignalRecipient
when searching for contacts by phone number

// FREEBIE
2017-04-12 10:53:39 -04:00
Matthew Chen
daa832bbca Respond to CR.
// FREEBIE
2017-04-12 08:38:46 -04:00
Matthew Chen
17b751d22a Create block offer when non-contacts send you a message.
// FREEBIE
2017-04-12 08:38:46 -04:00
Matthew Chen
d89d4dea8a Remove the properties related to Redphone and WebRTC support.
// FREEBIE
2017-04-11 17:23:20 -04:00
Matthew Chen
e28a81e6ad Improve attachment upload progress indicator.
* Should never show up for attachments in the failed state.
* Show show up without delay for attachments being sent.
* Show disappear when attachment upload fails in any way.

// FREEBIE
2017-04-11 17:18:07 -04:00
Matthew Chen
f08d779f4d Fix file extensions for arbitrary file types.
// FREEBIE
2017-04-11 13:18:56 -04:00
Matthew Chen
e6cd3d0712 Fix audio playback.
// FREEBIE
2017-04-11 09:15:25 -04:00
Matthew Chen
004a952bc0 Respond to CR.
// FREEBIE
2017-04-10 12:35:30 -04:00
Matthew Chen
8258f26aec Don’t mark messages as failed until all retries are exhausted.
// FREEBIE
2017-04-10 10:35:43 -04:00
Michael Kirk
97f93eef7e only assert queues in debug
// FREEBIE
2017-04-07 12:46:42 -04:00
Michael Kirk
513c275107 Log when we delete sessions
// FREEBIE
2017-04-06 20:30:07 -04:00
Michael Kirk
bb38fce54e Ensure that deleting sessions happens on session queue
// FREEBIE
2017-04-06 19:24:16 -04:00
Michael Kirk
2d93b8c6ec Handle mismatched/stale devices on session queue
The session state should never be manipulated concurrently.

// FREEBIE
2017-04-06 19:11:04 -04:00
Michael Kirk
773b09b015 Inspect session store on serial queue
// FREEBIE
2017-04-06 18:55:10 -04:00
Michael Kirk
9e74f38095 deprecate unused method
I'd want to spend time validating correctness if we ever wanted to use
this.

// FREEBIE
2017-04-06 18:54:03 -04:00
Michael Kirk
9a444f4288 Assert that session mutation occurs on serial queue
// FREEBIE
2017-04-06 17:32:15 -04:00
Michael Kirk
7578176e37 rename sessionCipher to sessionStoreQueue
// FREEBIE
2017-04-06 16:29:12 -04:00
Michael Kirk
60dcadb0d7 Move iOS Versions from Signal-iOS
// FREEBIE
2017-04-06 16:26:19 -04:00
Michael Kirk
fcf271f08b Block list is two words
// FREEBIE
2017-04-05 17:34:47 -04:00
Michael Kirk
fa9e289892 Don't retry some failures
Motivation:

When we introduced the MessageSendingOperation, we included a new
"retry" loop. However, this had some unintended consequences when
retrying terminal failures.

Some of these are pretty benign and invisible to the user, but some,
like messaging someone who's safety number has changed, results in a
situation where we get rate-limited by the pre-key request.

Description:

This commit includes the machinery to distinguish between retryable and
terminal failures. Upon reporting a terminal failure, the MessageSender
stops retrying to send.

// FREEBIE
2017-04-05 11:30:41 -04:00
Matthew Chen
b12e93076e Don’t block outgoing group messages.
// FREEBIE
2017-04-03 14:45:09 -04:00
Matthew Chen
723174e14e Respond to CR.
// FREEBIE
2017-04-03 14:42:04 -04:00
Matthew Chen
d47ddd112d Filter outgoing messages using the blacklist.
// FREEBIE
2017-04-03 14:30:15 -04:00
Matthew Chen
af4faaa601 Filter incoming messages using the blacklist.
// FREEBIE
2017-04-03 14:29:53 -04:00