Commit Graph

1593 Commits (da4f41defc92eaac9b3d5813843137a9a90880f0)

Author SHA1 Message Date
Matthew Chen 1db5a157ce Respond to CR. 7 years ago
Matthew Chen a5ebe394d1 Include typing indicators in configuration sync messages; emit when that value changes. 7 years ago
Matthew Chen 33f5398ba8 Update proto schema for configuration messages to reflect typing indicators setting. 7 years ago
Matthew Chen ea734ad171 Respond to CR. 7 years ago
Matthew Chen a09cb16e74 Add typing indicators setting. 7 years ago
Michael Kirk 85f85d9c3a fix debug crash 7 years ago
Michael Kirk fe15a260ef Merge branch 'release/2.31.0' 7 years ago
Matthew Chen 3729398507 Request profile fetches on main thread. 7 years ago
Matthew Chen 3d0e7386a4 Respond to CR. 7 years ago
Matthew Chen a98c82645c Start work on typing indicators.
* Update proto schema to reflect typing indicators.
* Sketch out OWSTypingIndicatorMessage.
* Add "online" to the service message params.
* Sketch out logic to send typing indicator messages.
* Sketch out OWSTypingIndicators class.
7 years ago
Matthew Chen 40aa78e001 Merge remote-tracking branch 'origin/release/2.31.0' 7 years ago
Matthew Chen 698e48f2d8 Respond to security review. 7 years ago
Matthew Chen 7d8b20d091 Apply refinements to UD logic. 7 years ago
Matthew Chen 44f6774396 Apply refinements to UD logic. 7 years ago
Matthew Chen c28d131f97 Respond to CR. 7 years ago
Matthew Chen e11d43d1f8 Respond to CR. 7 years ago
Matthew Chen ee87f1b489 Fix test breakage. 7 years ago
Matthew Chen c5f4711595 Apply refinements to UD logic. 7 years ago
Matthew Chen 2541be1619 Apply refinements to UD logic. 7 years ago
Michael Kirk 1dea927a3f Remove some usage of throwswrapped_ in udmanager since we don't need to
propogate the wrapped exception anyway.
7 years ago
Michael Kirk 3d9cd4f4ed CR: comments and code clarity 7 years ago
Michael Kirk 3bef78335d find -E . -type f -regex ".*\.(m|h|swift)" -exec sed -i "" -e "s/trywrapped_/throwswrapped_/g" {} \; 7 years ago
Michael Kirk cb9aa6304c find -E . -type f -regex ".*\.(m|h)" -exec sed -i "" -e "s/try_/throws_/" {} \; 7 years ago
Michael Kirk 8544c86427 Swift Exception wrap HKDFKit 7 years ago
Michael Kirk c4f8975308 Swift Exception wrap Curve25519 7 years ago
Michael Kirk c686e766b1 Exception audit, fail directly where intended 7 years ago
Michael Kirk 9d2731c9b8 exception auditing OWSRaiseException 7 years ago
Michael Kirk 3a6aafc454 Swift Exception wrap NSData+keyVersionByte 7 years ago
Michael Kirk 5f5ec9b82a ExceptionWrap loadPreKey 7 years ago
Michael Kirk b622b3a020 Exception wrap TSDerivedSecrets for Swift 7 years ago
Michael Kirk 8d823193f1 Exception wrap WhisperMessage for Swift 7 years ago
Michael Kirk 1482c600b4 Exception wrap PreKeyWhisperMessage for Swift 7 years ago
Michael Kirk 60769a3d17 Exception wrap SessionCipher for Swift 7 years ago
Matthew Chen a5f715eca1 Fix network manager error wrapping. 7 years ago
Matthew Chen deafc749d1 Fix UD manager tests. 7 years ago
Michael Kirk ccd30e0e1f more logging 7 years ago
Michael Kirk e26db74fcd only check prekeys when decrypting a PKWM 7 years ago
Michael Kirk af3102441d ensure device updates are persisted
Previously we'd skip saves when latest was the same instance as self, which was
*at least* occurring during the 404 handler for prekey fetching while message
sending.

In practice this was cached, so it would be one wasted request per recipient
per launch.
7 years ago
Matthew Chen 33f0a32e59 Improve UD logging. 7 years ago
Matthew Chen 302da66017 Fix UD access logic. 7 years ago
Matthew Chen 737f64b761 Improve UD logging. 7 years ago
Matthew Chen ad59b2f6d2 Move "ud access for sends" logic into UD manager. 7 years ago
Matthew Chen 7de289f6be Remove SSKUnidentifiedAccess. 7 years ago
Matthew Chen dbe635f721 Try random UD access keys in profile gets. 7 years ago
Matthew Chen 70f274598c Avoid deadlocks in contact manager. 7 years ago
Matthew Chen f26241ebd0 Avoid deadlocks in contact manager. 7 years ago
Michael Kirk c4677c9d4f CR: add some reachability asserts 7 years ago
Michael Kirk 0c2bb439f9 kick-queue upon reachability 7 years ago
Michael Kirk 54c63c7a2e Reachability Singleton 7 years ago
Michael Kirk b8e4bfff86 shuffle isReady->isSetup, centralize starting workStep 7 years ago
Michael Kirk 751b6e5688 documentation for MessageSenderJobQueue 7 years ago
Michael Kirk 037bdebfab clarify backoff delay examples 7 years ago
Michael Kirk d35b735d76 Log message type in message sender 7 years ago
Michael Kirk 3560f3be5c Durable send operation
TODO
-[x] respect order of queue
-[x] replacements
  -[x] those w/o completion handler
  -[x] basic send+log operation persists
  -[x] send+ui completion
  -[x] share extension
  -[x] update state jobs
-[x] App Lifecyle
  -[x] settable
  -[x] Mark as ready on startup
  -[x] Fail appropriate jobs on startup

NICE TO HAVE
-[x] concurrent per senders
-[ ] longer retry (e.g. 24hrs)
-[ ] App Lifecyle
  -[x] retry failed jobs on startup?
  -[ ] reachability

DONE
-[x] basic passing test
-[x] datamodel
-[x] queue/classes
7 years ago
Michael Kirk 25af0f4c1e more factories 7 years ago
Michael Kirk 456b2c0830 Avoid crash during test runs
In tests that have writes occuring async WRT the test loop, we sometimes crash
when the transaction ends and we end the background task, because
CurrentAppContext() is momentarily nil between test runs.
7 years ago
Matthew Chen 278c61fd16 Remove assert around group avatar updates. 7 years ago
Matthew Chen 9df94b8477 Rework sync transcript sending. 7 years ago
Matthew Chen 21cf467bb4 Don't use websocket after 409/410. 7 years ago
Matthew Chen 1a53005e08 Respond to CR. 7 years ago
Matthew Chen a9aabf763a Use temporary user defaults in tests. 7 years ago
Matthew Chen b003049d9c Improve UD logging. 7 years ago
Matthew Chen 8c8b3a95b8 Respond to CR. 7 years ago
Matthew Chen 00d79900e4 Fix edge cases around UD v. linked devices. 7 years ago
Matthew Chen b83299888f Fix edge cases around UD v. linked devices. 7 years ago
Matthew Chen d656ae1017 Fix edge cases around UD v. linked devices. 7 years ago
Matthew Chen 64aa43edb1 Only enable UD if UD is supported by all linked devices. 7 years ago
Matthew Chen 86e22edcb1 Send "sent message transcript" sync messages at the _end_ of a send, not after the first recipient is sent. 7 years ago
Matthew Chen 9c161e913d Respond to CR; handle device changes in SignalRecipient as well. 7 years ago
Matthew Chen 55369a1ca3 Only send 'sent message transcript' sync messages using UD. 7 years ago
Matthew Chen 94c7b72361 Only send "sent message transcript" sync messages using UD. 7 years ago
Matthew Chen 553d1ac3bc Respond to CR. 7 years ago
Matthew Chen 2894db0d6e Add request maker. 7 years ago
Matthew Chen ab6c4a4c36 Try prekey fetches via websocket. 7 years ago
Matthew Chen b7920fef84 Remove obsolete TODO. 7 years ago
Matthew Chen 99d0495ec7 Respond to CR. 7 years ago
Matthew Chen bbcbbafaab Sync local profile key after rotating it. 7 years ago
Matthew Chen 693b3e13a9 Revert "Sync local profile key after rotating it."
This reverts commit ddbd20e706.
7 years ago
Matthew Chen ddbd20e706 Sync local profile key after rotating it. 7 years ago
Matthew Chen 7115d45d08 Changes for UD in production. 7 years ago
Matthew Chen d44e414b54 Clean up message sender. 7 years ago
Matthew Chen 6d075747c0 Update local profile after registration and profile key rotation. 7 years ago
Matthew Chen 9322442881 Don't assume all linked devices support UD. 7 years ago
Matthew Chen 353f91db64 Respond to CR. 7 years ago
Matthew Chen 9519e7961a Rework recipient device updates. 7 years ago
Matthew Chen a00ebdf4a2 Fix UD auth edge cases. 7 years ago
Matthew Chen 2f4094e801 Fix UD auth edge cases. 7 years ago
Matthew Chen 4d89670f19 Fix UD auth edge cases. 7 years ago
Matthew Chen de8b5b55c0 Update production trust root. 7 years ago
Matthew Chen 6d3f62453e Add asserts around group id length. 7 years ago
Matthew Chen 275414cbda Respond to CR. 7 years ago
Matthew Chen 7c1f1882d8 Sync "show UD indicators" setting. 7 years ago
Matthew Chen 43960aadd6 Update proto schema. 7 years ago
Michael Kirk aff35329bd make factory Swift 4.1 compatible 7 years ago
Matthew Chen cccd246122 Revert "Revert Factories."
This reverts commit 7aabb821bd.
7 years ago
Matthew Chen c6ef7f18e7 Improve test logging. 7 years ago
Matthew Chen 79ed05133c Move db connections to environments. 7 years ago
Matthew Chen f1646b6cbc Move db connections to environments. 7 years ago
Matthew Chen 829851bd7b Hang PushManager on AppEnvironment. 7 years ago
Matthew Chen 9d7c3afdaf Show (threadless) error notifications for UD decrypt failures. 7 years ago