Michael Kirk
2c44cbccfd
avoid assertion when deliberately testing for failure
2018-11-11 11:28:59 -06:00
Michael Kirk
24668fa790
update to reflect id assignment on build
2018-11-11 11:28:59 -06:00
Michael Kirk
4b0fc51933
update test to reflect correct behavior
2018-11-11 11:28:59 -06:00
Michael Kirk
e2ad9d81bb
attachment factory
...
flesh out other factory builders
2018-11-11 11:28:59 -06:00
Michael Kirk
4d860bb9c7
fixup job queue test
2018-11-11 11:28:59 -06:00
Michael Kirk
24f57cedda
add missing method to FakeContactsManager, convert to Swift to avoid missing
...
protocol methods in the future.
2018-11-11 11:28:59 -06:00
Michael Kirk
ca58bb00f7
fixup tests from throws_ audit
2018-11-11 11:16:37 -06:00
Michael Kirk
d492816664
Fixup certificate parsing tests
...
Skip failure when running tests when we're explicitly testing failure cases.
Be more specific about failure conditions via NSError param
2018-11-11 11:16:37 -06:00
Michael Kirk
f45908c89d
fixup spk deletion test
2018-11-11 11:13:05 -06:00
Michael Kirk
06b763dfc4
Remove unused methods/tests
2018-11-11 11:13:05 -06:00
Michael Kirk
8472801c4b
fix link error when launching SSK tests
2018-11-11 11:13:05 -06:00
Michael Kirk
c710b7f8f2
Fixup certificate parsing tests
...
Skip failure when running tests when we're explicitly testing failure cases.
Be more specific about failure conditions via NSError param
2018-11-11 11:13:05 -06:00
Matthew Chen
da4f41defc
Fix missing albumMessageId.
2018-11-09 17:49:08 -05:00
Michael Kirk
5da525ce2e
Merge remote-tracking branch 'origin/release/2.31.0'
2018-11-09 15:49:53 -06:00
Matthew Chen
1be757788b
Prevent long version strings from being scrubbed in the logs.
2018-11-09 15:17:53 -05:00
Matthew Chen
29b4702311
Fix build break.
2018-11-09 14:10:15 -05:00
Michael Kirk
366b228c01
use UUID for TSInteractions.uniqueId
2018-11-09 14:02:23 -05:00
Matthew Chen
c9c9d35d19
Discard receipts for unregistered users.
2018-11-09 13:08:56 -05:00
Matthew Chen
cd224a1590
Render single media as albums.
2018-11-08 15:44:22 -05:00
Matthew Chen
654325c6dc
Add download progress indicators.
2018-11-08 15:35:14 -05:00
Matthew Chen
3daf7d4744
Add OWSAttachmentDownloads.
2018-11-08 15:31:00 -05:00
Michael Kirk
03aba93985
CR: use id for hashvalue, make clearer that we don't expect to use incrementing ID's for uniqueId
2018-11-08 13:11:30 -06:00
Michael Kirk
7cf53293da
restore Share/Delete functionality to gallery items in the post multi-attachment world
2018-11-08 12:52:09 -06:00
Michael Kirk
42bf267607
fixup plumbing for incoming messages/synced transcripts
2018-11-08 12:52:09 -06:00
Michael Kirk
e096406e56
migrate existing attachments to album-compatible gallery schema
2018-11-08 12:52:09 -06:00
Michael Kirk
57681bd6f3
Gallery supports album messages
2018-11-08 12:52:09 -06:00
Michael Kirk
27cb91e9c8
Plumb through messageAlbumId so an Attachment knows what album (if any) it
...
belongs to.
2018-11-08 12:52:08 -06:00
Matthew Chen
8b5a993694
Tweak timing of typing indicators.
2018-11-08 13:49:04 -05:00
Matthew Chen
2b5a79f123
Cycle websocket after learning of new linked devices via 409/410.
2018-11-07 16:19:48 -05:00
Matthew Chen
f6322cb087
Fix logging in request maker.
2018-11-07 16:18:03 -05:00
Matthew Chen
47022377c2
Respond to CR.
2018-11-07 16:09:52 -05:00
Matthew Chen
954f32b775
Never use UD for sync messages.
2018-11-07 15:24:11 -05:00
Matthew Chen
8ff8f17b21
Never use UD for sync messages.
2018-11-07 14:16:51 -05:00
Matthew Chen
3a46a344ac
Never use UD for sync messages.
2018-11-07 14:04:07 -05:00
Matthew Chen
2dfd4b2c0d
Rename to media album.
2018-11-07 12:24:53 -05:00
Matthew Chen
b7fd48ec40
Respond to CR.
2018-11-07 10:56:40 -05:00
Matthew Chen
9cdf8d06fd
Ignore typing indicators from self.
2018-11-07 10:56:19 -05:00
Matthew Chen
57de089118
Add support for album captions to models.
2018-11-07 10:54:17 -05:00
Matthew Chen
3816cb4bf4
Update proto schema to reflect album captions.
2018-11-07 10:54:17 -05:00
Matthew Chen
cdfd2779a3
Fix a couple small bugs in the typing indicators.
2018-11-06 17:21:24 -05:00
Matthew Chen
5aa6467d20
Fix issues in media gallery cells.
2018-11-06 15:35:48 -05:00
Matthew Chen
0341f5dc2b
Modify ConversationViewItem to support media galleries.
2018-11-06 15:23:09 -05:00
Matthew Chen
f2c0985907
Add 'is valid media?' method.
2018-11-06 15:23:09 -05:00
Matthew Chen
1c7add2b8f
Respond to CR.
2018-11-05 09:16:17 -05:00
Matthew Chen
39c820b866
Distinguish 'app will/did become ready' events.
2018-11-05 09:04:57 -05:00
Matthew Chen
eb2e16872e
Distinguish 'app will/did become ready' events.
2018-11-05 09:04:57 -05:00
Matthew Chen
1c21c31c2b
Fix failed reloads in SignalRecipient.
2018-11-05 08:43:16 -05:00
Matthew Chen
c7d427029b
Respond to CR.
2018-11-02 13:17:36 -04:00
Matthew Chen
47fda2e377
Add debug UI for multi-image sends.
2018-11-02 13:04:05 -04:00
Matthew Chen
ecba67b511
Add debug UI for multi-image sends.
2018-11-02 13:04:05 -04:00
Matthew Chen
f6591fac25
Add debug UI for multi-image sends.
2018-11-02 13:04:05 -04:00
Matthew Chen
b90fee08bd
Merge remote-tracking branch 'origin/release/2.31.0'
2018-11-01 16:59:54 -04:00
Matthew Chen
650469c6a7
Respond to CR.
2018-11-01 16:44:47 -04:00
Matthew Chen
63d88ef5cb
Sketch out TypingIndicatorCell.
2018-11-01 16:44:47 -04:00
Matthew Chen
eedc9f9a26
Sketch out "typing indicators" interaction and cell.
2018-11-01 16:44:47 -04:00
Matthew Chen
50381cc94c
Add typing indicators in home view.
2018-11-01 16:44:47 -04:00
Matthew Chen
b063a49d56
Rework typing indicators API.
2018-11-01 16:44:47 -04:00
Matthew Chen
3eab5b82cc
Respond to CR.
2018-11-01 16:06:03 -04:00
Matthew Chen
3011175cef
Fix "413 on prekey fetch" errors.
2018-11-01 15:59:11 -04:00
Matthew Chen
e89d8b40d7
Fix "413 on prekey fetch" errors.
2018-11-01 15:59:11 -04:00
Matthew Chen
3cc1988f20
Fix "413 on prekey fetch" errors.
2018-11-01 15:59:11 -04:00
Matthew Chen
97e234f785
Fix "413 on prekey fetch" errors.
2018-11-01 15:59:11 -04:00
Matthew Chen
1db5a157ce
Respond to CR.
2018-11-01 15:22:53 -04:00
Matthew Chen
a5ebe394d1
Include typing indicators in configuration sync messages; emit when that value changes.
2018-11-01 15:22:53 -04:00
Matthew Chen
33f5398ba8
Update proto schema for configuration messages to reflect typing indicators setting.
2018-11-01 15:22:53 -04:00
Matthew Chen
ea734ad171
Respond to CR.
2018-11-01 14:34:05 -04:00
Matthew Chen
a09cb16e74
Add typing indicators setting.
2018-11-01 14:28:39 -04:00
Michael Kirk
85f85d9c3a
fix debug crash
2018-10-31 16:14:27 -06:00
Michael Kirk
fe15a260ef
Merge branch 'release/2.31.0'
2018-10-31 16:13:54 -06:00
Matthew Chen
3729398507
Request profile fetches on main thread.
2018-10-31 15:01:33 -04:00
Matthew Chen
3d0e7386a4
Respond to CR.
2018-10-31 12:19:07 -04:00
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.
2018-10-31 12:11:29 -04:00
Matthew Chen
40aa78e001
Merge remote-tracking branch 'origin/release/2.31.0'
2018-10-31 11:42:41 -04:00
Matthew Chen
698e48f2d8
Respond to security review.
2018-10-30 16:18:23 -04:00
Matthew Chen
7d8b20d091
Apply refinements to UD logic.
2018-10-30 16:18:22 -04:00
Matthew Chen
44f6774396
Apply refinements to UD logic.
2018-10-30 16:18:22 -04:00
Matthew Chen
c28d131f97
Respond to CR.
2018-10-30 16:18:22 -04:00
Matthew Chen
e11d43d1f8
Respond to CR.
2018-10-30 16:18:22 -04:00
Matthew Chen
ee87f1b489
Fix test breakage.
2018-10-30 16:18:22 -04:00
Matthew Chen
c5f4711595
Apply refinements to UD logic.
2018-10-30 16:18:22 -04:00
Matthew Chen
2541be1619
Apply refinements to UD logic.
2018-10-30 16:18:22 -04:00
Michael Kirk
1dea927a3f
Remove some usage of throwswrapped_ in udmanager since we don't need to
...
propogate the wrapped exception anyway.
2018-10-30 11:35:34 -06:00
Michael Kirk
3d9cd4f4ed
CR: comments and code clarity
2018-10-30 11:35:34 -06:00
Michael Kirk
3bef78335d
find -E . -type f -regex ".*\.(m|h|swift)" -exec sed -i "" -e "s/trywrapped_/throwswrapped_/g" {} \;
2018-10-30 11:35:34 -06:00
Michael Kirk
cb9aa6304c
find -E . -type f -regex ".*\.(m|h)" -exec sed -i "" -e "s/try_/throws_/" {} \;
2018-10-30 11:35:34 -06:00
Michael Kirk
8544c86427
Swift Exception wrap HKDFKit
2018-10-30 11:35:34 -06:00
Michael Kirk
c4f8975308
Swift Exception wrap Curve25519
2018-10-30 11:35:34 -06:00
Michael Kirk
c686e766b1
Exception audit, fail directly where intended
2018-10-30 11:35:34 -06:00
Michael Kirk
9d2731c9b8
exception auditing OWSRaiseException
2018-10-30 11:35:34 -06:00
Michael Kirk
3a6aafc454
Swift Exception wrap NSData+keyVersionByte
2018-10-30 11:35:34 -06:00
Michael Kirk
5f5ec9b82a
ExceptionWrap loadPreKey
2018-10-30 11:35:34 -06:00
Michael Kirk
b622b3a020
Exception wrap TSDerivedSecrets for Swift
2018-10-30 11:35:34 -06:00
Michael Kirk
8d823193f1
Exception wrap WhisperMessage for Swift
2018-10-30 11:35:34 -06:00
Michael Kirk
1482c600b4
Exception wrap PreKeyWhisperMessage for Swift
2018-10-30 11:35:34 -06:00
Michael Kirk
60769a3d17
Exception wrap SessionCipher for Swift
2018-10-30 11:35:34 -06:00
Matthew Chen
a5f715eca1
Fix network manager error wrapping.
2018-10-29 16:42:33 -04:00
Matthew Chen
deafc749d1
Fix UD manager tests.
2018-10-29 16:41:02 -04:00
Michael Kirk
ccd30e0e1f
more logging
2018-10-29 13:39:34 -06:00
Michael Kirk
e26db74fcd
only check prekeys when decrypting a PKWM
2018-10-29 13:38:59 -06:00
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.
2018-10-29 13:38:25 -06:00
Matthew Chen
33f0a32e59
Improve UD logging.
2018-10-26 17:21:49 -04:00
Matthew Chen
302da66017
Fix UD access logic.
2018-10-26 17:21:23 -04:00
Matthew Chen
737f64b761
Improve UD logging.
2018-10-26 16:09:20 -04:00
Matthew Chen
ad59b2f6d2
Move "ud access for sends" logic into UD manager.
2018-10-26 16:09:20 -04:00
Matthew Chen
7de289f6be
Remove SSKUnidentifiedAccess.
2018-10-26 16:09:20 -04:00
Matthew Chen
dbe635f721
Try random UD access keys in profile gets.
2018-10-26 16:09:20 -04:00
Matthew Chen
70f274598c
Avoid deadlocks in contact manager.
2018-10-26 14:19:04 -04:00
Matthew Chen
f26241ebd0
Avoid deadlocks in contact manager.
2018-10-26 14:10:58 -04:00
Michael Kirk
c4677c9d4f
CR: add some reachability asserts
2018-10-25 12:17:58 -06:00
Michael Kirk
0c2bb439f9
kick-queue upon reachability
2018-10-25 11:56:39 -06:00
Michael Kirk
54c63c7a2e
Reachability Singleton
2018-10-25 11:56:39 -06:00
Michael Kirk
b8e4bfff86
shuffle isReady->isSetup, centralize starting workStep
2018-10-25 11:56:39 -06:00
Michael Kirk
751b6e5688
documentation for MessageSenderJobQueue
2018-10-25 11:54:59 -06:00
Michael Kirk
037bdebfab
clarify backoff delay examples
2018-10-25 11:54:59 -06:00
Michael Kirk
d35b735d76
Log message type in message sender
2018-10-25 11:54:59 -06:00
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
2018-10-25 11:54:59 -06:00
Michael Kirk
25af0f4c1e
more factories
2018-10-25 11:54:58 -06:00
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.
2018-10-25 11:54:58 -06:00
Matthew Chen
278c61fd16
Remove assert around group avatar updates.
2018-10-24 17:11:48 -04:00
Matthew Chen
9df94b8477
Rework sync transcript sending.
2018-10-24 10:53:23 -04:00
Matthew Chen
21cf467bb4
Don't use websocket after 409/410.
2018-10-23 15:09:22 -04:00
Matthew Chen
1a53005e08
Respond to CR.
2018-10-22 14:43:07 -04:00
Matthew Chen
a9aabf763a
Use temporary user defaults in tests.
2018-10-22 14:31:36 -04:00
Matthew Chen
b003049d9c
Improve UD logging.
2018-10-22 14:29:08 -04:00
Matthew Chen
8c8b3a95b8
Respond to CR.
2018-10-22 14:04:30 -04:00
Matthew Chen
00d79900e4
Fix edge cases around UD v. linked devices.
2018-10-22 12:52:10 -04:00
Matthew Chen
b83299888f
Fix edge cases around UD v. linked devices.
2018-10-22 12:44:34 -04:00
Matthew Chen
d656ae1017
Fix edge cases around UD v. linked devices.
2018-10-22 12:31:28 -04:00
Matthew Chen
64aa43edb1
Only enable UD if UD is supported by all linked devices.
2018-10-20 10:27:15 -04:00
Matthew Chen
86e22edcb1
Send "sent message transcript" sync messages at the _end_ of a send, not after the first recipient is sent.
2018-10-19 17:22:28 -04:00
Matthew Chen
9c161e913d
Respond to CR; handle device changes in SignalRecipient as well.
2018-10-19 17:21:42 -04:00
Matthew Chen
55369a1ca3
Only send 'sent message transcript' sync messages using UD.
2018-10-19 16:45:50 -04:00
Matthew Chen
94c7b72361
Only send "sent message transcript" sync messages using UD.
2018-10-19 16:45:50 -04:00
Matthew Chen
553d1ac3bc
Respond to CR.
2018-10-19 16:43:14 -04:00
Matthew Chen
2894db0d6e
Add request maker.
2018-10-19 16:35:19 -04:00
Matthew Chen
ab6c4a4c36
Try prekey fetches via websocket.
2018-10-19 09:03:47 -04:00
Matthew Chen
b7920fef84
Remove obsolete TODO.
2018-10-19 08:55:52 -04:00
Matthew Chen
99d0495ec7
Respond to CR.
2018-10-18 16:58:02 -04:00
Matthew Chen
bbcbbafaab
Sync local profile key after rotating it.
2018-10-18 16:47:18 -04:00
Matthew Chen
693b3e13a9
Revert "Sync local profile key after rotating it."
...
This reverts commit ddbd20e706
.
2018-10-18 16:00:48 -04:00
Matthew Chen
ddbd20e706
Sync local profile key after rotating it.
2018-10-18 15:59:43 -04:00
Matthew Chen
7115d45d08
Changes for UD in production.
2018-10-18 15:27:25 -04:00
Matthew Chen
d44e414b54
Clean up message sender.
2018-10-18 13:50:48 -04:00
Matthew Chen
6d075747c0
Update local profile after registration and profile key rotation.
2018-10-18 12:26:13 -04:00
Matthew Chen
9322442881
Don't assume all linked devices support UD.
2018-10-18 12:26:13 -04:00
Matthew Chen
353f91db64
Respond to CR.
2018-10-18 12:12:13 -04:00
Matthew Chen
9519e7961a
Rework recipient device updates.
2018-10-18 11:21:16 -04:00
Matthew Chen
a00ebdf4a2
Fix UD auth edge cases.
2018-10-18 11:21:16 -04:00
Matthew Chen
2f4094e801
Fix UD auth edge cases.
2018-10-18 11:21:16 -04:00
Matthew Chen
4d89670f19
Fix UD auth edge cases.
2018-10-18 11:21:16 -04:00