Michael Kirk
29a0597b0c
Only call sendMessage on main thread.
...
The proximate cause for this change was a failing assert in the recently
introduced call to `setBackgroundTaskIdentifier` which is synchronized
on the main thread.
But generally, to keep things simple, we prefer calling back on main
thread unless performance dictates otherwise.
// FREEBIE
8 years ago
Michael Kirk
ca5bcaf3c2
Merge branch 'mkirk/refactor_country_code_search'
8 years ago
Michael Kirk
c8fa47d9c9
Added some tests per CR
...
// FREEBIE
8 years ago
Michael Kirk
d3ecbba0e8
Keep unit tests with their class files
...
Moved from Signal-iOS and updated to use standard XCTest macros vs. our
test-util's
// FREEBIE
8 years ago
Thomas Guillet
478b5b247a
Remove convoluted dependency
...
of PhoneNumberUtil to ContactsManagerProtocol
Also moved tests from Signal-iOS repository here.
8 years ago
Michael Kirk
778d3dd2bc
Merge branch 'mkirk/background-sending'
8 years ago
Michael Kirk
58829e2162
ensure we don't interrupt sending by being backgrounded
...
// FREEBIE
8 years ago
Michael Kirk
15f5c078a1
Merge branch 'mkirk/nsoperation-sending-queue'
8 years ago
Michael Kirk
e68ee28e51
Add clarifying asserts per code review
...
// FREEBIE
8 years ago
Michael Kirk
db15ff5e87
Save message before sending starts.
...
Otherwise the message doesn't get saved until it's in the queue.
Interestingly, this could also address some of the perceived lag
mentioned in: https://github.com/WhisperSystems/Signal-iOS/pull/1850
// FREEBIE
8 years ago
Michael Kirk
df51523a84
Serialize message sending and generalized retry logic.
...
Previously messages could be sent out of order if (e.g.)
1. You're on a slow network
2. You send a big attachment
3. You immediately send text
Generally in this scenario, the text will be sent before the attachment.
Also, introduced a more general retry loop to retry on *any* failure
during sending.
Previously the only retry logic was around the messages API on the
Signal Server.
Now we'll also retry failures when allocating an attachment, or
uploading an attachment.
TODO: remove the now redundant retry logic in the message sender?
TODO: there is still one place where we send messages directly through
the MessageSender, rather than via the operation - when resending to a
group due to a safety number change. This is separate logic because we
were being sure to *only* resend to that one recipient. Cleaning this up
would move a lot of code around.
Once Signal-Desktop implements timestamp based de-duping we could shave
that wart by having this troublesome codepath use NSOperation like
everything else.
// FREEBIE
8 years ago
Michael Kirk
d6af5028ca
Fix receiving attachments from old clients
...
Protobuf's null-object pattern provides an empty NSData when no digest
is provided rather than nil.
// FREEBIE
8 years ago
Matthew Chen
312f398ddd
Merge branch 'charlesmchen/nonUSNonContactSearch'
8 years ago
Matthew Chen
332833da7b
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
60e0ddfb92
Fix non-contact lookup for non-US users.
...
// FREEBIE
8 years ago
Matthew Chen
e12bd4773a
Fix non-contact lookup for non-US users.
...
// FREEBIE
8 years ago
Matthew Chen
7368c5f754
Merge branch 'charlesmchen/fixFilterCallingCodes'
8 years ago
Matthew Chen
d63a519c43
Fix filtering of country codes in registration flow.
...
// FREEBIE
8 years ago
Matthew Chen
ca81e139bb
Merge branch 'charlesmchen/attachmentDownloadErrors'
8 years ago
Matthew Chen
c8efd83c39
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
88f343a0aa
Attempt to fix the "frequent attachment download errors with low server ids".
...
// FREEBIE
8 years ago
Matthew Chen
7867ce27a8
Merge branch 'charlesmchen/messageStateIndicators'
8 years ago
Matthew Chen
25ab52caf2
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
865d9d7b96
Add "is uploaded" property to attachment streams.
...
// FREEBIE
8 years ago
Matthew Chen
27fb0dd34c
Merge branch 'charlesmchen/websocketState'
8 years ago
Matthew Chen
e4636e8336
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
958dbd199b
Minor clean up.
...
// FREEBIE
8 years ago
Matthew Chen
f40629ffa0
Improve alignment between socket state and socket manager state.
...
// FREEBIE
8 years ago
Michael Kirk
b21c628d56
Merge branch 'mkirk/attachment-digest'
...
// FREEBIE
8 years ago
Michael Kirk
8f1412d502
comment constant time compare per code review
...
// FREEBIE
8 years ago
Michael Kirk
452110b687
Include digest in attachments
...
- constant time compare
- free buffer passed to NSData
// FREEBIE
8 years ago
Matthew Chen
32ac0fb7c9
Merge branch 'charlesmchen/paste'
8 years ago
Matthew Chen
e05b687438
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
270a10a62a
Add UTIType methods to MIMETypeUtil.
...
// FREEBIE
8 years ago
Michael Kirk
1e6925ebc1
Fix crash-on-launch for older installs
...
populating the de-duping index assumes authorId is always set for
incoming messages, but this was not always the case.
// FREEBIE
8 years ago
Michael Kirk
0393e4f0b4
fix tests
...
// FREEBIE
8 years ago
Michael Kirk
168639597f
Merge branch 'mkirk/dedupe-incoming-messages'
8 years ago
Michael Kirk
a92158ef16
CR: fix register `async` where specified
...
* fix thread test
* add IncomingMessageFinder test
* use constants
* clearer comments
// FREEBIE
8 years ago
Michael Kirk
b389bb3bb8
Code cleanup.
...
No need to use contactThread method to get recipient ID since we still
have the envelope.
And with that, it's pretty easy to justify getting rid of one of our now
barely used IncomingMessage initializers.
// FREEBIE
8 years ago
Michael Kirk
975726e022
Dedupe incoming messags
...
// FREEBIE
8 years ago
Matthew Chen
d6e1e81a8a
Merge branch 'charlesmchen/callkitPrivacy'
8 years ago
Matthew Chen
52bb939fc1
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
71b804ba52
Add and honor the “CallKit Privacy” setting.
...
// FREEBIE
8 years ago
Matthew Chen
286f72d273
Merge branch 'charlesmchen/webrtcByDefault'
8 years ago
Matthew Chen
2741fd4bdc
Enable WebRTC-based audio and video calls by default.
...
// FREEBIE
8 years ago
Matthew Chen
254a247ba0
Revert "Add WebRTC setting."
...
This reverts commit 0f45f292a1
.
// FREEBIE
8 years ago
Michael Kirk
14a104b1b2
fix tests, and off by one in keeping old, accepted keys
...
// FREEBIE
8 years ago
Matthew Chen
c72e8f8e2f
Merge remote-tracking branch 'origin/release/2.7.1'
...
// FREEBIE
8 years ago
Matthew Chen
427f225df9
Merge branch 'feature/messageSortingRevisited'
8 years ago
Matthew Chen
686fe679bd
Respond to CR.
...
// FREEBIE
8 years ago