Commit Graph

609 Commits

Author SHA1 Message Date
Michael Kirk 91ad2ec32b Properly handle too-large messages
1. Take note of any large messages.
2. If they are way too large, we just drop them on the floor.

// FREEBIE
2017-07-27 11:37:10 -04:00
Matthew Chen 4ac7600c07 Respond to CR.
// FREEBIE
2017-07-27 10:24:07 -04:00
Michael Kirk 4d8429186d Store undecrypted envelopes before doing any processing.
This lets us clear the server side queue immediately, and paves the way
for retry, give up logic.

// FREEBIE
2017-07-26 14:29:56 -04:00
Matthew Chen 2418baec15 Respond to CR.
// FREEBIE
2017-07-24 16:13:22 -04:00
Michael Kirk a5f067936c migration to fix any half-registered users
// FREEBIE
2017-07-24 13:01:43 -04:00
Matthew Chen 4059c34170 [SSK] Migrating changes from obsolete SSK repo.
// FREEBIE
2017-07-21 15:17:35 -04:00
Matthew Chen 4f5b2993b0 [SSK] Migrating changes from obsolete SSK repo.
// FREEBIE
2017-07-21 14:55:31 -04:00
Michael Kirk e52248fe39 Localize JSQMessagesViewController within Signal
// FREEBIE
2017-07-21 14:16:41 -04:00
Michael Kirk 1b8efb5255 CI runs SSK tests
Clean up Makefile cruft

// FREEBIE
2017-07-21 13:58:57 -04:00
Michael Kirk 4b69126d1a Use interned SSK
// FREEBIE
2017-07-21 13:58:32 -04:00
Matthew Chen 1600b1f440 [SSK] Avoid nil country names on iOS 8.
FREEBIE
2017-07-20 09:16:15 -04:00
Michael Kirk 878806aa52 [JSQMVC] Add Croatian translations
// FREEBIE
2017-07-18 18:22:01 -04:00
Matthew Chen 235a842137 [SSK] Use existing transaction in cleanup.
// FREEBIE.
2017-07-14 09:27:48 -04:00
Matthew Chen 8884cb5a2b [SSK] Fix copy and paste of voice messages.
// FREEBIE
2017-07-13 17:23:11 -04:00
Matthew Chen 0357081cc7 [SSK] Run orphan cleanup on startup.
// FREEBIE
2017-07-12 12:15:21 -04:00
Michael Kirk 4b7924cc72 [SSK] update CI gems
// FREEBIE
2017-07-12 11:57:30 -04:00
Michael Kirk d15da6e6d4 fix bubble calculator tests
// FREEBIE
2017-07-11 16:36:50 -04:00
Michael Kirk 3eb90ba383 Disable singleton assert for tests
introduce a new build configuration, used by tests, which disables
singleton asserts

// FREEBIE
2017-07-11 16:36:50 -04:00
Michael Kirk cc31d88f29 [SSK] Fix persist view for upgrade scenario
// FREEBIE
2017-07-11 15:28:15 -04:00
Michael Kirk f61980e376 [SSK] remove unhelpful logging
// FREEBIE
2017-07-11 13:21:33 -04:00
Michael Kirk dbf0235974 [SSK] persist thread view
// FREEBIE
2017-07-10 11:54:37 -05:00
Matthew Chen 3e11c10c9c [SSK] Don’t sync verification state until app has finished becoming active.
// FREEBIE
2017-07-06 14:42:04 -04:00
Matthew Chen 9e5447f1d4 Respond to CR.
// FREEBIE
2017-07-06 13:20:21 -04:00
Matthew Chen 944cd7beef Show app update nag on launch if necessary.
// FREEBIE
2017-07-06 12:56:27 -04:00
Michael Kirk 8e891eb357 Merge branch 'hotfix/2.13.3.0'
// FREEBIE
2017-07-06 09:33:57 -05:00
Matthew Chen e0ee4e42f1 [SSK] Modify TSStorageManager to use separate shared read and write connections.
// FREEBIE
2017-07-05 19:08:36 -04:00
Matthew Chen dc1453264b [SSK] Modify TSStorageManager to use separate shared read and write connections.
// FREEBIE
2017-07-05 17:24:48 -04:00
Matthew Chen 7135895c1c Modify TSStorageManager to use separate shared read and write connections.
// FREEBIE
2017-07-05 17:01:28 -04:00
Michael Kirk 7b04823aaf [SSK] FIX: verifiying unregistered user prints "no longer registered"
error on every launch

// FREEBIE
2017-07-05 13:01:48 -05:00
Michael Kirk 1f9f066fa9 print call record when declining a call
// FREEBIE
2017-07-05 12:45:34 -05:00
Michael Kirk dbad3b4f8d [SSK] MessagesManager observes for badge count
// FREEBIE
2017-06-30 10:25:00 -10:00
Michael Kirk d0d4e67615 update badge count when app is in background
// FREEBIE
2017-06-30 09:39:26 -10:00
Michael Kirk 544dec1af8 [SSK] Fix typo in assert
// FREEBIE
2017-06-30 06:18:33 -10:00
Michael Kirk 46bf05182a [SSK][SPK] fix upstream tests
No changes that should affect running client.

// FREEBIE
2017-06-28 18:48:44 -10:00
Michael Kirk ab40bc7242 [SSK] sync key version
// FREEBIE
2017-06-23 15:23:32 -04:00
Matthew Chen 1eff5513b3 [SSK] Archive sessions upon identity change.
// FREEBIE
2017-06-22 18:21:42 -04:00
Michael Kirk 3e43eef534 [SSK][SPK] Archive all recipient's sessions on identity change.
// FREEBIE
2017-06-22 17:25:32 -04:00
Matthew Chen ad17c444f7 [SSK] Add creation timestamp to attachment streams.
// FREEBIE
2017-06-22 17:18:01 -04:00
Michael Kirk 140625b2a0 [SSK] verification sync
// FREEBIE
2017-06-22 15:23:52 -04:00
Michael Kirk a933fbf215 sync verifications with contact syncing
// FREEBIE
2017-06-22 15:21:25 -04:00
Matthew Chen e6aacf0bca [SSK] Reduce chattiness of logs; increase log file sizes.
// FREEBIE
2017-06-22 14:29:32 -04:00
Matthew Chen eff1974eeb [SSK] Reduce chattiness of logs; increase log file sizes.
// FREEBIE
2017-06-22 10:10:56 -04:00
Matthew Chen 12e083b4e0 [SSK] Fix OWSCFail() macro.
// FREEBIE
2017-06-21 17:46:41 -04:00
Matthew Chen c7d9236526 [SSK] Ensure verification UI is updated to reflect incoming verification state sync messages.
// FREEBIE
2017-06-21 17:44:18 -04:00
Matthew Chen 6a1f766657 [SSK] Improve perf of attachment stream file path upgrade.
// FREEBIE
2017-06-21 10:39:45 -04:00
Michael Kirk 11fa08470d [JSQ] Fix: can't dismiss keyboard after sending
// FREEBIE
2017-06-20 17:45:28 -04:00
Matthew Chen eb17a7b189 [SSK] Refine observation of async registration completion.
// FREEBIE
2017-06-20 13:19:01 -04:00
Matthew Chen 5ae4b99f89 Refine observation of async registration completion.
// FREEBIE
2017-06-20 13:17:44 -04:00
Matthew Chen 8948a54e2f Enable verification state sync.
// FREEBIE
2017-06-19 19:54:13 -04:00
Michael Kirk 62c096aa15 [SSK] append/remove key type as necessary to fix verification syncing
// FREEBIE
2017-06-19 17:28:05 -04:00
Michael Kirk 41065e692e [SSK] fix crash while syncing verifications
// FREEBIE
2017-06-19 15:35:59 -04:00
Matthew Chen b53ab8a85c [SSK] Respond to post-holiday code reviews.
// FREEBIE
2017-06-17 13:48:10 -04:00
Matthew Chen bd440f0878 Respond to post-holiday code reviews.
// FREEBIE
2017-06-17 13:38:19 -04:00
Matthew Chen f4ae0dbbab [SSK] Rework verification state sync per latest proto schema.
// FREEBIE
2017-06-17 13:37:00 -04:00
Matthew Chen 6444754cbb [SSK] Cache the attachments folder in TSAttachmentStream. Add isFirstLaunch method to AppVersion. Add a “last app completed launch” version.
// FREEBIE
2017-06-16 12:07:49 -04:00
Matthew Chen f098df9056 [SSK] Upgrade attachment streams on a serial queue.
// FREEBIE
2017-06-16 10:17:10 -04:00
Matthew Chen 42bf2106bd [SSK] Avoid crashing on startup due to database view creation. Use transactions in the jobs.
// FREEBIE
2017-06-15 15:45:32 -04:00
Matthew Chen c7426f9343 Avoid crashing on startup due to database view creation.
* Substitute unread view for unseen view until unseen view is ready.
* Register as many views as possible async.
* Perform blocking, safe migrations before async registration of views.
* Add debug settings view for internal app stats.
* Show blocking overlay until async registration of database views is complete.
* Convert version migrations to use AppVersions.

// FREEBIE
2017-06-15 13:44:30 -04:00
Matthew Chen 7c1d3fe23c [SSK] Remove “block on safety number changes” setting in preferences.
FREEBIE
2017-06-14 14:39:02 -04:00
Matthew Chen 05e316381b Remove “block on safety number changes” setting in preferences.
// FREEBIE
2017-06-14 14:36:21 -04:00
Matthew Chen cf0319f025 [SSK] Reduce number of database views.
// FREEBIE
2017-06-14 12:35:57 -04:00
Matthew Chen 575d631123 Reduce number of database views.
// FREEBIE.
2017-06-14 12:27:23 -04:00
Matthew Chen d1097c3610 [SSK] Remove an unnecessary database view.
// FREEBIE
2017-06-14 09:55:25 -04:00
Matthew Chen 35879046c3 Remove OpenSSL pod.
// FREEBIE
2017-06-14 09:15:45 -04:00
Matthew Chen 1057e40008 Fix OpenSSL cocoapod.
// FREEBIE
2017-06-13 18:33:57 -04:00
Matthew Chen 1818aea628 [SSK] Ensure message sends only succeed or fail once. Add “group creation failed” error message.
// FREEBIE
2017-06-13 15:36:39 -04:00
Matthew Chen 6f1f1fac80 Improve handling of group creation failures.
// FREEBIE
2017-06-13 15:09:47 -04:00
Matthew Chen ab043cea5e [SSK] Improve logging around incoming messages.
// FREEBIE
2017-06-13 11:18:27 -04:00
Matthew Chen 5ecf38117c [SSK] Rework how messages are marked read.
* Filter messages shown in the home view.
* When we receive a read receipt, mark older messages in thread as read.
* When we receive a read receipt, start expiration of older messages in thread.
* When we receive a read receipt, hide notifications for older messages in thread.
2017-06-12 14:46:56 -04:00
Matthew Chen 027cd8cb34 Rework how messages are marked read.
// FREEBIE
2017-06-12 11:52:21 -04:00
Matthew Chen 3c7d47f565 [SSK] Remove legacy message sending.
// FREEBIE
2017-06-12 09:26:17 -04:00
Matthew Chen df21e616d1 [SSK] Don’t update home view sort order in response to dynamic interactions or verification state changes. We only want to create change messages in response to user activity, on any of their devices.
// FREEBIE
2017-06-10 14:26:17 -04:00
Matthew Chen cc5e810211 [SSK] Add a default description for verification state messages.
// FREEBIE
2017-06-09 11:43:13 -04:00
Michael Kirk 0a55b965b6 [SSK][SPK] Archive sessions when fetching profile
// FREEBIE
2017-06-08 17:56:44 -04:00
Michael Kirk 6715e76c99 Prefer archiving, to deleting old sessions for better handling of out of
order decryption.

// FREEBIE
2017-06-08 16:19:31 -04:00
Matthew Chen bc63a72c25 Add verification state change messages.
// FREEBIE
2017-06-08 10:44:23 -04:00
Michael Kirk 64efa2b3c6 [SSK] remove redundant SN changes when sending to new identity
// FREEBIE
2017-06-08 10:34:45 -04:00
Michael Kirk 75bab75dc8 Show no redundant error when failing to send due to changed identity
The old "blocking" style SN alerts are deprecated. We maintain the
functionality to decrypt incoming messages from legacy SN alerts so that
users have time to recover their undecrypted messages.

// FREEBIE
2017-06-08 10:34:45 -04:00
Matthew Chen a1d3e360df [SSK] Sync verification state.
// FREEBIE
2017-06-07 17:51:27 -04:00
Michael Kirk 9ec6ec5e4e [SSK] create missed call notification in threads
// FREEBIE
2017-06-07 15:04:23 -04:00
Michael Kirk 1a3204bf46 create interaction in thread when missing call due to changed identity
// FREEBIE
2017-06-07 15:04:21 -04:00
Michael Kirk 32d05bbe08 [SSK] avoid deadlock on unknown session
// FREEBIE
2017-06-07 14:51:32 -04:00
Michael Kirk 2692977168 [SSK] New identity manager
// FREEBIE
2017-06-07 10:36:19 -04:00
Matthew Chen ceb210748e Sketch out OWSIdentityManager.
// FREEBIE
2017-06-07 10:18:16 -04:00
Matthew Chen e80a00a6b2 [SSK] Format fail messages.
// FREEBIE
2017-06-06 09:58:53 -04:00
Matthew Chen 58f360b620 [SSK] Rework and unify the system messages.
// FREEBIE
2017-06-06 09:50:29 -04:00
Matthew Chen 05fb7dcb3f [SSK] Remove obsolete TSUIDatabaseConnectionDidUpdateNotification notification.
// FREEBIE
2017-06-02 10:33:00 -04:00
Michael Kirk eea0d7be7f [SSK] update to merged
// FREEBIE
2017-06-01 13:21:56 -07:00
Michael Kirk 5b12f4afae Prevent outgoing calls started from various places unless have been seen
e.g. from contacts app

// FREEBIE
2017-06-01 12:59:34 -07:00
Michael Kirk 130aa132a0 Reject incoming calls from an unseen changed identity
// FREEBIE
2017-06-01 12:59:34 -07:00
Matthew Chen 6b4a5398ef [SPK] Improve logging around updating and using prekeys.
// FREEBIE
2017-06-01 11:59:40 -04:00
Michael Kirk 76a0f88f7c [SSK] dont cache session store
// FREEBIE
2017-05-31 11:47:10 -07:00
Matthew Chen c0753152db [SPK] Improve logging around updating and using prekeys.
// FREEBIE
2017-05-31 10:33:04 -04:00
Matthew Chen d752a9b030 [SSK] Add incoming and outgoing message database views.
// FREEBIE
2017-05-31 10:05:25 -04:00
Matthew Chen f49309bf66 Add incoming and outgoing message database views.
// FREEBIE
2017-05-31 09:58:32 -04:00
Matthew Chen 19a2a1539e [SSK] Clean up timer usage.
// FREEBIE
2017-05-31 09:54:33 -04:00
Matthew Chen cdda0d4f02 [SSK] Fix “mark as read” logic.
// FREEBIE
2017-05-31 09:52:23 -04:00
Matthew Chen 85d54798fe [SSK] Changes for unseen indicator.
// FREEBIE
2017-05-30 10:12:19 -04:00
Matthew Chen 7afcad81c6 Fix data type issue around losing millisecond precision in message expiration times.
// FREEBIE
2017-05-30 10:05:53 -04:00
Matthew Chen 63f014fab4 [SSK] Cache display names for accounts.
// FREEBIE
2017-05-30 09:59:14 -04:00
Matthew Chen dd3394be1b Cache display names for accounts.
// FREEBIE
2017-05-30 09:41:28 -04:00
Michael Kirk 85d0d27505 [SSK] remove some redundant error notifications
// FREEBIE
2017-05-26 15:49:53 -07:00
Michael Kirk 37e0b1a004 Sending to unconfirmed idnetity presents confirmation
Rather than send/fail

// FREEBIE
2017-05-26 15:39:10 -07:00
Michael Kirk 1a03be8ae7 Fetch safety number upon entering thread
* uniform method to get recipients in group/contact thread
  * use it to clean up markAsSeenJob

// FREEBIE
2017-05-26 09:50:09 -07:00
Matthew Chen 1d792d1878 Rename audio duration and image size methods in TSAttachmentStream.
// FREEBIE
2017-05-26 11:19:45 -04:00
Michael Kirk fc37e251de [SSK] log error on failure
// FREEBIE
2017-05-25 08:38:54 -07:00
Michael Kirk 4700294c26 [SSK][SPK] Safety Number Updates
// FREEBIE
2017-05-24 18:08:46 -07:00
Michael Kirk bb25d2beb6 IdentityKeyStore changes
1) Always accept keys from incoming messages

2) Block sending only if it's a recent change, or if always
   block is enabled

// FREEBIE

// FREEBIE
2017-05-24 18:01:24 -07:00
Matthew Chen f30cd7c7fa [SSK] Remove invalid assert in socket manager.
// FREEBIE
2017-05-24 17:45:25 -04:00
Matthew Chen d8ade3288c [SSK] Cache image size and audio duration on attachments.
// FREEBIE
2017-05-24 10:02:24 -04:00
Matthew Chen b1f7cf0d62 Cache image size and audio duration on attachments.
// FREEBIE
2017-05-24 10:02:24 -04:00
Matthew Chen b0005ea932 Respond to CR.
// FREEBIE
2017-05-23 09:33:31 -04:00
Matthew Chen 2e36f41838 Add support for manually activating censorship circumvention.
// FREEBIE
2017-05-22 20:34:25 -04:00
Matthew Chen 7b70fe674a “Add to contacts” offer.
// FREEBIE
2017-05-22 18:27:11 -04:00
Matthew Chen 4223766e60 [SSK] Try the country code for the local phone number when parsing phone numbers.
// FREEBIE
2017-05-22 18:26:11 -04:00
Matthew Chen e7de25ab01 [SSK] Pin YapDatabase to v2.9.3 to avoid v.3.x.
// FREEBIE
2017-05-19 18:05:38 -04:00
Matthew Chen cab9e3d3db [SSK] Persist attachment file paths.
// FREEBIE
2017-05-19 17:35:40 -04:00
Matthew Chen e4f31b5e40 Rename attachment source filename property.
// FREEBIE
2017-05-19 17:21:31 -04:00
Michael Kirk 7e031b7306 [SSK] Show SN changes in groups, and include name
// FREEBIE
2017-05-19 17:04:11 -04:00
Michael Kirk dfd438e5f8 revert Yap update until next release
// FREEBIE
2017-05-18 10:21:41 -04:00
Michael Kirk 557488bc7d return iOS8 support in project files
// FREEBIE
2017-05-18 10:05:39 -04:00
Matthew Chen 07cc8baa60 [SSK] Honor the local calling code in select recipient view.
// FREEBIE
2017-05-18 09:53:48 -04:00
Matthew Chen 6833fb7181 [SSK] Retry push token registration.
// FREEBIE
2017-05-17 16:21:41 -04:00
Michael Kirk 72168e2881 [SSK] faster contact parsing
// FREEBIE
2017-05-15 16:38:33 -04:00
Michael Kirk 20ad9114e2 [SSK] Reduce time between editing contacts and seeing those changes in
the app

cache phone number parsing

// FREEBIE
2017-05-12 19:25:58 -04:00
Matthew Chen 09f8a20acb [SSK] Revert "Merge branch 'charlesmchen/autoMarkAsRead'"
// FREEBIE
2017-05-12 16:22:53 -04:00
Matthew Chen 625b1d0200 [SSK] Only reply to group info requester & Don’t reply to “request group info” messages from non-members of the group in question.
// FREEBIE
2017-05-12 16:12:38 -04:00
Michael Kirk da58eb18ad partial revert of previous pod update
// FREEBIE
2017-05-12 15:52:38 -04:00
Matthew Chen 67c3bca913 [SSK] Move filename property to TSAttachment.
// FREEBIE
2017-05-12 09:51:36 -04:00
Matthew Chen 96e155c75e Rework appearance of voice messages and audio attachments.
// FREEBIE
2017-05-12 09:46:54 -04:00
Matthew Chen c7777bcb13 [SSK] Show example phone numbers.
// FREEBIE
2017-05-10 16:15:15 -04:00
Matthew Chen 0adcd157da [SSK] Don’t ignore “unnamed” phone numbers.
// FREEBIE
2017-05-10 14:59:41 -04:00
Matthew Chen eb385f1e97 [SSK] Rework the “disappearing messages” logic.
// FREEBIE
2017-05-10 14:55:31 -04:00
Matthew Chen 8871331cfa [SPK] Update license.
// FREEBIE
2017-05-10 10:26:08 -04:00
Matthew Chen 387f1018f5 [SSK] Auto-rejoin groups by emitting and responding to “request group info” messages.
// FREEBIE
2017-05-10 10:06:19 -04:00
Michael Kirk e295f92943 [SSK] Safer SignedPreKey deletion policy
// FREEBIE
2017-05-09 19:09:46 -04:00
Matthew Chen d535ce3155 [SSK] Flag voice messages as such in protos.
// FREEBIE
2017-05-09 11:45:16 -04:00
Matthew Chen 560122067c [SSK] Prefer to deduce the MIME type from the file extension using lookup, not the UTI type.
[SSK] Try to deduce attachment MIME type from the file extension if possible.

// FREEBIE
2017-05-09 11:30:32 -04:00
Matthew Chen 0137e01aff Try to deduce attachment MIME type from the file extension if possible.
// FREEBIE
2017-05-09 11:29:33 -04:00
Matthew Chen bbf099894c [SSK] Fix a hotspot in the phone number parsing logic.
// FREEBIE
2017-05-05 21:07:32 -04:00
Matthew Chen 057bb76e66 [SSK] Rework handling of phone number names.
// FREEBIE
2017-05-05 21:01:51 -04:00
Matthew Chen 0c4351a908 Use SignalAccount class to sync contacts.
// FREEBIE
2017-05-05 20:57:35 -04:00
Michael Kirk 835ab3dd93 [SSK] fix some compiler warnings
// FREEBIE
2017-05-05 14:28:24 -04:00
Michael Kirk 83a089f429 [SSK] better sender logs
// FREEBIE
2017-05-04 09:48:45 -04:00
Michael Kirk b24cf29189 don't request contacts until necessary
Most commonly this will be after hitting the "compose" button

But also we'll do it in the SignalViewController once you've received a
message.

- get rid blocking contacts nag
- use Contacts framework simplifies logic
- remove dead AB code

// FREEBIE
2017-05-04 09:47:04 -04:00
Matthew Chen 931b6b4200 [SSK] Minor cleanup.
// FREEBIE
2017-05-03 18:02:59 -04:00
Matthew Chen 563ccf671e [SSK] Temporary change to improve read receipt logging.
// FREEBIE
2017-05-03 18:01:09 -04:00
Matthew Chen c2cdeb3bcd Remove SCWaveformView.
// FREEBIE
2017-05-03 17:05:27 -04:00
Michael Kirk 4b6bfa4c4c "home", "other" and "work" instead of "Unknown" phone label
// FREEBIE
2017-05-03 16:50:49 -04:00
Matthew Chen cb293f286a [SSK] Add SignalAccount class, Extract labels for phone numbers.
// FREEBIE
2017-05-02 12:40:51 -04:00
Matthew Chen 42768294ee Extract labels for phone numbers.
// FREEBIE
2017-05-02 09:28:50 -04:00
Michael Kirk e1162fa641 [SSK] Better debugging information
- explicitly log type of received message vs. just "encrypted message"
  for better call debugging
- debug tool to print signed prekey report

// FREEBIE
2017-05-01 10:28:54 -04:00
Matthew Chen 788ec4ce01 Respond to CR.
// FREEBIE
2017-04-26 13:27:24 -04:00
Matthew Chen 8bf4cb83a5 [SSK] Improve handling of whitespace in contacts.
// FREEBIE
2017-04-20 20:26:51 -04:00
Matthew Chen d248f6117f [SSK] Ignore oversize messages.
// FREEBIE
2017-04-20 17:37:57 -04:00
Michael Kirk b3fc16b0ba [SSK] handle synced reset-session messages
// FREEBIE
2017-04-19 19:40:21 -04:00
Michael Kirk 5bbcc23da5 [SSK] Do not retry fatal message send errors.
e.g. don't retry group sends when someone had a SN change

// FREEBIE
2017-04-19 18:54:24 -04:00
Michael Kirk d9e3e87735 New downloading progress view (#2006)
Replace previous "scary" warning-style attachment notifications with
something less alarming.

Includes file name and file type emoji when discernable.

// FREEBIE
2017-04-19 18:50:27 -04:00
Matthew Chen 67e94e2b55 [SSK] Do not try to resend unsaved outgoing messages when accepting a safety number change.
// FREEBIE
2017-04-19 18:21:09 -04:00
Matthew Chen 3c8635c352 [SSK] Add muting of threads.
// FREEBIE
2017-04-19 10:01:29 -04:00
Matthew Chen ea848f31e6 [SSK] Fix outgoing message status for messages sent from linked devices.
// FREEBIE
2017-04-19 09:53:34 -04:00
Matthew Chen dd807f676c [SSK] Rework outgoing message state & refine error handling for outgoing group messages.
// FREEBIE
2017-04-17 18:07:37 -04:00
Matthew Chen f41762c316 [SSK] Avoid lost messages.
// FREEBIE
2017-04-17 16:08:25 -04:00
Matthew Chen f9b51c01f4 [SSK] De-bounce the prekey checks.
// FREEBIE
2017-04-14 14:35:32 -04:00
Michael Kirk 0743722782 [SSK] ensure accepted SPKs are marked
// FREEBIE
2017-04-14 10:58:15 -04:00
Matthew Chen 9c6f76253a [SSK] Honor attachment filenames.
// FREEBIE
2017-04-13 16:09:51 -04:00
Matthew Chen dc3a382c23 Respond to CR.
// FREEBIE
2017-04-13 15:38:32 -04:00
Matthew Chen f38f3d8887 [SSK] Update SignalAttachment to allow arbitrary attachments.
// FREEBIE
2017-04-13 15:27:55 -04:00
Matthew Chen 33593921f6 [SSK] Rework socket manager.
// FREEBIE
2017-04-12 12:01:38 -04:00
Michael Kirk 1d9de09429 [SSK] Make sure we can return multiple recipients matches
// FREEBIE
2017-04-12 11:00:35 -04:00
Michael Kirk 5d604a796c [JSQMVC] Fixes "floating" edit menu for narrow media items
previously, edit menu was only positioned correctly for text bubbles,
and centered for media bubbles.

It wasn't that noticable for images/videos since those usually extended
to the middle of the conversation view, but with narrower media bubbles
(like arbitrary attachments) this became a bigger problem.

// FREEBIE
2017-04-12 10:24:29 -04:00
Matthew Chen 1d2e5d218d [SSK] Create block offer when non-contacts send you a message.
// FREEBIE
2017-04-12 08:42:22 -04:00
Matthew Chen 8490be6ed9 [SSK] Remove the properties related to Redphone and WebRTC support.
// FREEBIE
2017-04-11 17:39:57 -04:00
Matthew Chen 2fd8a13a3c [SSK] Improve attachment upload progress indicator.
// FREEBIE
2017-04-11 17:39:49 -04:00
Michael Kirk 2af89c9a2e [SSK][SPK] only assert dispatch in DEBUG
// FREEBIE
2017-04-07 14:20:35 -04:00
Michael Kirk 87845525b6 [SSK] serialize all read/write to sessionStore
Attempt to avoid session corruption happening due to an inconsistent
view of the session store by ensuring all access to the session store
happens on a serialized queue

// FREEBIE
2017-04-06 21:07:11 -04:00
Michael Kirk 398ee22f50 [SSK] rename cipher queue to sessionStoreQueue
// FREEBIE
2017-04-06 21:06:13 -04:00
Michael Kirk a951d11d97 [SSK] move iOSVersion to SSK
// FREEBIE
2017-04-06 21:06:13 -04:00
Michael Kirk 4494a95a62 Block list is two words. Update code/comments/constants
// FREEBIE
2017-04-05 17:37:08 -04:00
Michael Kirk f46080519e [SSK] Don't retry terminal sending failures
* Causing prekey request rate-limit when sending to someone who's
  reregistered.
* Unnecessarily printing "unregistered user" multiple times.
* etc.

// FREEBIE
2017-04-05 11:36:43 -04:00
Matthew Chen 3537518268 [SSK] Don’t block outgoing group messages.
// FREEBIE
2017-04-05 11:20:57 -04:00
Matthew Chen f604cfb553 Apply assert to ensure singletons are only created once & filter incoming messages using the blacklist.
// FREEBIE
2017-04-03 14:53:23 -04:00
Matthew Chen 5ff454fd90 Fix double creation of NotificationsManager singleton.
// FREEBIE
2017-03-31 23:25:30 -04:00
Matthew Chen d00c892158 Apply assert to ensure singletons are only created once.
// FREEBIE
2017-03-31 18:36:30 -04:00
Michael Kirk 7153994929 [SSK] [SPK] Update SignalProtocolKit and SignalServiceKit
// FREEBIE
2017-03-31 12:42:59 -04:00
Michael Kirk 7f239c8040 [SSK] + Enforce singleton access for MessagesManager and MessageSender
// FREEBIE
2017-03-31 10:41:46 -04:00
Michael Kirk 4c0242ee17 [spk] Update SignalProtocolKit
// FREEBIE
2017-03-30 13:36:05 -04:00
Matthew Chen 5138539d99 [SSK] Fix sharing of oversize text messages.
// FREEBIE
2017-03-30 11:20:45 -04:00
Matthew Chen 306895ea6d [SSK] Improve support for arbitrary attachments.
// FREEBIE
2017-03-30 09:13:48 -04:00
Matthew Chen 630fcedff0 [SSK] Accept arbitrary incoming attachments.
// FREEBIE
2017-03-29 12:59:29 -04:00
Matthew Chen 32d856ff2d [SSK] Improve handling of incomplete and failed attachment downloads.
// FREEBIE
2017-03-29 12:41:36 -04:00
Matthew Chen 5250d327e4 [SSK] Remove RedPhone code.
// FREEBIE
2017-03-29 12:36:20 -04:00
Matthew Chen faf75e25c2 [SSK] Remove RedPhone code.
// FREEBIE
2017-03-29 12:30:31 -04:00
Matthew Chen 74f939b520 Remove RedPhone code.
// FREEBIE
2017-03-29 12:26:08 -04:00
Matthew Chen 9db33a9651 Remove RedPhone code.
// FREEBIE
2017-03-29 12:25:33 -04:00
Matthew Chen 00a29dea4d [SSK] Filter out country codes properly.
// FREEBIE
2017-03-27 09:21:21 -04:00
Michael Kirk ea62e21611 [SSK] fix attachment crash on iOS9
// FREEBIE
2017-03-24 16:39:17 -04:00
Michael Kirk f29ca7851f Move PureLayout back to cocoapods for now
This introduced some unexpected crashes related to frameworks in Swift.

// FREEBIE
2017-03-23 21:48:59 -04:00
Michael Kirk 0d52a18458 Update dependencies
Also moved PureLayout to Carthage for faster incremental builds

// FREEBIE
2017-03-23 20:35:21 -04:00
Matthew Chen eb8d4388c6 [SSK] Avoid YapDatabase deadlock in OWSMessageSender.
// FREEBIE
2017-03-23 17:15:31 -04:00
Michael Kirk 6466e9f41f [SSK] Better logging for envelopes
Leave last 3 digits of recipientId when scrubbing logs.

This is in line with other Signal clients, and makes it possible to
trace interactions.

// FREEBIE
2017-03-23 17:10:26 -04:00
Matthew Chen fe18cb9a39 [SSK] Use a separate sending queue for each conversation & Fix “send to self operations never complete” issue.
// FREEBIE
2017-03-23 15:59:01 -04:00
Michael Kirk 34831ea105 [SPK][SSK] Ensure old sessions removed when identity changes
// FREEBIE
2017-03-22 22:25:23 -04:00
Matthew Chen 949a7cd9a2 [SSK] Further refinements to phone number parsing.
// FREEBIE
2017-03-22 09:56:39 -04:00
Matthew Chen 95de36d671 [SSK] Improve logging around decryption exceptions.
// FREEBIE
2017-03-22 09:55:09 -04:00
Matthew Chen 50ad6e4f62 [SSK] Update SSK pod to reflect websocket lifecycle edge cases.
// FREEBIE
2017-03-22 09:40:33 -04:00
Matthew Chen 5797cb1093 [SSK] Update SSK to reflect cancel oversize attachment downloads. 2017-03-21 13:10:14 -04:00
Michael Kirk 49da1aea1e [SSK] Only send messages on main thread
// FREEBIE
2017-03-20 16:10:46 -04:00
Michael Kirk da32570dc6 [SSK] remove convoluted dependency
Moved query method to PhoneNumberUtil since that's they only caller.
Moved corresponding tests to SSK

// FREEBIE
2017-03-20 15:35:09 -04:00
Michael Kirk 8ed10c3a9b [SSK] Don't suspend app until message sending completes.
// FREEBIE
2017-03-20 15:06:08 -04:00
Michael Kirk 55063fec63 [SSK] Serialize message sending
Most notable on shoddy networks, Signal-iOS will now make sure that
messages sent first can be delivered first.

This *does* entail that we have to wait for attachments to upload and
send before subsequent messages can be sent. Some people don't like
this, but the majority UX is improved.

// FREEBIE
2017-03-20 15:04:06 -04:00
Michael Kirk 0ecbbfaefe [SSK] backwards compatible attachment digests
// FREEBIE
2017-03-20 15:03:14 -04:00
Michael Kirk 8adba61b37 intern Pastelog back into Signal.
Not worth the cocaopods/framework/project mgmt machinery for making
changes to 1 class.

// FREEBIE
2017-03-17 17:37:32 -04:00
Matthew Chen 0993860376 [SSK] Update SSK pod to reflect corresponding changes.
// FREEBIE
2017-03-16 14:36:02 -03:00
Michael Kirk 99c982fbb2 change ZXing to framework for faster incremental compiles in xcode
// FREEBIE
2017-03-16 12:04:45 -04:00
Matthew Chen c68bfac71d [SSK] Update SSK pod to fix build break.
// FREEBIE
2017-03-15 18:20:52 -03:00
Matthew Chen bdc729ad29 Respond to CR.
// FREEBIE
2017-03-14 10:25:03 -03:00
Michael Kirk d8c4558c80 [SSK] Attachment digests
// FREEBIE
2017-03-13 12:37:56 -04:00
Michael Kirk 8f7e0a8a5b [SSK] 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
2017-03-03 15:33:28 -05:00
Matthew Chen e96692d702 Respond to CR.
// FREEBIE
2017-02-27 17:28:25 -05:00
Matthew Chen c35c118dcd Respond to CR.
// FREEBIE
2017-02-24 23:02:17 -05:00
Michael Kirk 8104ffa129 [SSK] Dedupe incoming messages by timestamp/device
// FREEBIE
2017-02-24 19:24:20 -08:00
Michael Kirk be9725c7ce [SSK] lost changes needed to fixup 'charlesmchen/webrtcByDefault'
Previous commit referenced no-longer existent SHA

// FREEBIE
2017-02-22 15:52:29 -08:00
Matthew Chen f4453eb995 Enable WebRTC-based audio and video calls by default.
// FREEBIE
2017-02-21 11:10:57 -05:00
Matthew Chen 92509169a6 [SSK] Update SSK pod to reflect release/2.7.1.
// FREEBIE
2017-02-17 12:37:28 -05:00
Matthew Chen 701b264188 [libPhoneNumber-iOS] update pod.
// FREEBIE
2017-02-16 21:01:43 -05:00
Matthew Chen 82c4ca04c7 [SPK] Release 2.7.1 and prekey cleanup.
// FREEBIE
2017-02-16 21:01:20 -05:00
Matthew Chen e27475f8a8 [SSK] Add “received at” timestamp to all TSMessages so that they may be sorted properly.
// FREEBIE
2017-02-16 21:00:55 -05:00
Matthew Chen e4c3fe378d Update Cocoapods and Carthage submodule.
// FREEBIE
2017-02-16 14:53:54 -05:00
Matthew Chen 3c3f782e7d Clean up prekey usage.
// FREEBIE
2017-02-14 13:46:08 -05:00
Matthew Chen c0f52d1de9 [SSK] Mark "attempting out" messages as "unsent" on app launch
// FREEBIE
2017-02-13 17:21:58 -05:00
Matthew Chen 21e55d3be5 Mark "attempting out" messages as "unsent" on app launch.
// FREEBIE
2017-02-13 17:16:32 -05:00
Matthew Chen fcf1d7af97 Respond to CR.
// FREEBIE
2017-02-13 16:07:33 -05:00
Matthew Chen 2b64d94bad Update SignalServiceKit pod.
// FREEBIE
2017-02-13 15:59:07 -05:00
Matthew Chen 97001018ae Clean up prekey logic.
// FREEBIE
2017-02-10 16:35:16 -05:00
Michael Kirk 2675a724ce [SSK] avoid intermittent YAP deadlock when receiving message
// FREEBIE
2017-02-08 18:36:31 -05:00
Matthew Chen e798964308 Update SignalServiceKit pod.
// FREEBIE
2017-02-08 17:22:49 -05:00
Matthew Chen 06a775b41a Improve the call status messages in conversation view.
// FREEBIE
2017-02-08 16:47:09 -05:00
Matthew Chen 8e2ac368a0 Update SignalServiceKit pod.
// FREEBIE
2017-02-08 16:45:37 -05:00
Michael Kirk 420d717580 [SSK] log when messages are marked as read locally
// FREEBIE
2017-02-08 10:39:41 -05:00
Michael Kirk c621e3a000 [SSK] Missed calls increment unread counter
Avoid deadlock by moving unrelated DB work out of transaction

// FREEBIE
2017-02-07 17:02:17 -05:00
Matthew Chen 72ef6e6007 Update SSK to reflect charlesmchen/messagesFromMeAreAlreadyAutoRead.
// FREEBIE
2017-02-06 15:48:31 -05:00
Michael Kirk 947d345837 SSK update to include latest master (which now includes CallKit)
// FREEBIE
2017-02-02 17:13:53 -05:00
Michael Kirk 7361418274 Merge remote-tracking branch 'origin/master' into feature/webrtc 2017-02-01 20:10:13 -05:00
Michael Kirk 7e825648ef Show alert when trying to call a non-signal contact from Contacts.
// FREEBIE
2017-02-01 19:22:25 -05:00
Matthew Chen 49bb3d942d Clean up ahead of PR.
// FREEBIE
2017-02-01 10:44:29 -05:00
Matthew Chen d294557bdd Rework concurrency in the signaling logic.
// FREEBIE
2017-02-01 10:24:23 -05:00
Michael Kirk feb5a9ed3a [SSK] fix crash when messaging newly unregistered
// FREEBIE
2017-01-31 12:46:22 -05:00
Michael Kirk fff061ff3f Make sure WebRTC preferences are synced *every* call
This slows the UI, but only for people who have locally opted into
WebRTC calls, and the alternative is that users are likely to have stale
settings the first time a pair of people opt-in.

// FREEBIE
2017-01-27 14:33:12 -05:00
Michael Kirk ff7ae4f81b [SSK] Disable resetting unreadable storage (#1643)
// FREEBIE
2017-01-25 16:45:50 -05:00