Commit graph

188 commits

Author SHA1 Message Date
Scott Nonnenberg
3fb6ab295f Debug log optimizations and improvements 2019-02-20 16:51:30 -08:00
Scott Nonnenberg
77ae717b9b Clean up shutdown handling - stop processing incoming messages 2019-02-20 16:51:30 -08:00
Scott Nonnenberg
7c4ba5446c Throw error if incoming attachment has mismatched attachment size 2019-02-20 16:40:35 -08:00
Scott Nonnenberg
2c3847affe MessageReceiver: Don't wait for cache update to move forward 2019-02-13 16:04:58 -08:00
Scott Nonnenberg
5b54c9554e Remove groups table, conversation is single source of truth 2019-02-13 16:04:58 -08:00
Scott Nonnenberg
b69eea543c MessageReceiver: Don't wait for app logic to start next decrypt 2019-02-13 16:04:58 -08:00
Scott Nonnenberg
041fe4be05 Remove JSON column and Backbone Model for unprocessed 2019-02-13 16:04:58 -08:00
Scott Nonnenberg
1d2c3ae23c Download attachments in separate queue from message processing 2019-02-12 16:34:21 -08:00
Scott Nonnenberg
021e807180 MessageReceiver: Log errors with proper message id 2019-02-11 18:32:05 -08:00
Scott Nonnenberg
813924685e Link Previews 2019-01-29 13:53:14 -08:00
Scott Nonnenberg
91ef39e482 Ensure that blocked messages are dropped even after sealed sender 2019-01-29 13:53:14 -08:00
Scott Nonnenberg
aab2a57b48 Some style and interaction fine-tuning 2019-01-14 17:40:31 -08:00
Scott Nonnenberg
43e5d16020 Support for web socket communication with no signaling key 2019-01-14 10:32:12 -08:00
Scott Nonnenberg
822ea9ae53 Improve sealed sender icon display logic 2018-11-29 15:41:26 -08:00
Scott Nonnenberg
79a861a870 Typing Indicators 2018-11-26 15:26:04 -08:00
Scott Nonnenberg
99252702e1 Support receiving multiple images in one messages 2018-11-26 15:26:04 -08:00
Scott Nonnenberg
c5f9fae444 A few small bugfixes 2018-11-12 15:31:17 -08:00
Scott Nonnenberg
a7d78c0e9b Sealed Sender support
https://signal.org/blog/sealed-sender/
2018-10-29 14:49:18 -07:00
Scott Nonnenberg
2cfbfe477a Better handle large numbers of messages in cache on startup 2018-10-01 18:18:37 -07:00
Scott Nonnenberg
814b9cf26a Only accept 'you left group' messages when group blocked 2018-09-17 15:58:27 -07:00
Scott Nonnenberg
c2e0ec5636 Group Blocking: Allow group metadata messages from own devices 2018-09-17 12:18:18 -07:00
Scott Nonnenberg
9c399624cc Support for blocking groups on mobile, via group/blocked syncs 2018-09-14 16:25:43 -07:00
Scott Nonnenberg
02fbea96c0 Move base64 conversions off of the main thread 2018-08-16 17:39:30 -07:00
Scott Nonnenberg
911bc63c67 Move all arrayBuffer<->base64 functions to be async 2018-08-16 17:01:32 -07:00
Scott Nonnenberg
15751f3521 MessageReceiver.queueAllCached: Give event loop a rest
We don't want to queue multiple hundreds of messages at once, so we
let the event loop catch up every 20 messages queued.
2018-08-15 17:00:32 -07:00
Scott Nonnenberg
0eb2c958a5 Handle contact: don't exit early if timer is 'invalid' 2018-08-15 11:20:53 -07:00
Scott Nonnenberg
7983300f4a Use base64 strings for incoming message cache instead of binary 2018-08-10 13:13:25 -07:00
Scott Nonnenberg
85ab4e567f Let server know that we failed to process message on cache error 2018-08-09 10:11:12 -07:00
Scott Nonnenberg
52ee6abf52 Provide needed function to migration process
And disable attachment cleanup for now
2018-08-07 08:30:18 -07:00
Scott Nonnenberg
44dec45995 Ensure that all messages in cache are migrated properly 2018-08-06 18:08:10 -07:00
Scott Nonnenberg
59f955ff30 On error handling cached message, show error then delete 2018-08-06 18:08:10 -07:00
Scott Nonnenberg
baf419b7b6 Ensure that we always enqueue in the same order received 2018-08-02 17:25:51 -07:00
Scott Nonnenberg
3105b77475 Migrate to SQLCipher for messages/cache
Quite a few other fixes, including:
  - Sending to contact with no avatar yet (not synced from mobile)
  - Left pane doesn't update quickly or at all on new message
  - Left pane doesn't show sent or error status

Also:
 - Contributing.md: Ensure set of linux dev dependencies is complete
2018-07-31 17:08:45 -07:00
Scott Nonnenberg
5933a34a18 Use window.log in browser context, turn on console eslint rule 2018-07-21 14:52:43 -07:00
Scott Nonnenberg
f5852bb357 Be resilient to null thrown errors so we can surface to user 2018-07-13 08:59:18 -07:00
Scott Nonnenberg
a40a39314a Disable notifications on new 'reconnect' event for laptop resume 2018-07-03 15:06:58 -07:00
Scott Nonnenberg
1c23c6a9d7 Remove window.config in favor of window.getXXX() accessors 2018-06-14 17:03:53 -07:00
Scott Nonnenberg
f3bd0cf903 Refactor api.js into web_api, which encapsulates all web access 2018-05-31 13:25:45 -07:00
Scott Nonnenberg
fffcba0fec Properly handle contact property as an array in MessageReceiver 2018-05-10 11:54:58 -07:00
Scott Nonnenberg
3ea3e4e256 Contact sharing: protos and data pipeline
As of this commit: 82b76ccf37
2018-05-07 19:09:55 -07:00
Scott Nonnenberg
a0ed993b42 Now we've got everything prettified! 2018-05-02 13:40:57 -07:00
Scott Nonnenberg
feb68b24b4
Fix lint issues in message_receiver.js 2018-04-13 18:10:52 -07:00
Scott Nonnenberg
a806f32675
Fix message_receiver 2018-04-13 18:10:52 -07:00
Scott Nonnenberg
06c70b0ff4
Don't fail message load if we can't load quote thumbnail 2018-04-13 18:10:51 -07:00
Scott Nonnenberg
c747c55b37
MessageReceiver: Translate from BigNumber to number for quote id 2018-04-13 18:10:50 -07:00
Scott Nonnenberg
5602241a0c
Eliminate eslint-generated triple-parents 2018-04-13 18:10:47 -07:00
Scott Nonnenberg
d5043eb9cf
MessageReceiver: Can't use arrow function if it is to be new'd 2018-04-13 18:10:47 -07:00
Scott Nonnenberg
054d3887a1
Quotes: The full pipeline into the database
1. MessageReceiver always pulls down thumbnails included in quotes
2. Message.upgradeSchema has a new schema that puts all thumbnails on
   disk just like happens with full attachments.
3. handleDataMessage pipes quote from dataMessage into the final message
   destined for the database
2018-04-13 18:05:45 -07:00
Scott Nonnenberg
e69586200a
Unleash eslint on message_receiver.js - lots of change 2018-04-13 18:05:45 -07:00
Daniel Gasienica
b6ef67c402 Sync Protocol Buffers with libsignal-service-java (#2046)
Synchronizes our protocol buffers with `libsignal-service-java` project.

**Changes**
- [x] **BREAKING:** Rename `package` from `textsecure` to `signalservice`.
      ⚠️~~Workaround: Rename back to `textsecure`.~~
      Changed all protobuf `package` names across our project.
- [x] Rename `java_` metadata.
- [x] Move `NullMessage`, `ReceiptMessage`, and `Verified`.
- [x] Rename `Contacts.isComplete` to `Contacts.complete`. Confirmed to be
      unreferenced in our project.
- [x] Rename `Settings` to `Configuration` (`textsecure.protobuf.Settings` seems
      to be unused)
  - [x] Rename `libtextsecure` `MessageReceiver` `settings` event to
        `configuration`.
- [x] Rename `ReceiptMessage.timestamps` to `ReceiptMessage.timestamp`.
- [x] Add `AttachmentPointer` `width` and `height`.
- [x] Renamed `IncomingPushMessageSignal.proto` to `SignalService.proto` to
      match server.

---

commit 2b6aa19bf9ea5d8f2f4fd9e4102699a9d06a2b45
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Wed Feb 14 19:41:24 2018 -0500

    Rename protobuf `package`: `textsecure` --> `signalservice`

    Brings us closer to `libsignal-service-java`.

commit 91612880a5bf2c9ae8a9334877ac24e91102b905
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Wed Feb 14 19:19:35 2018 -0500

    Rename `SyncMessage.Settings` to `SyncMessage.Configuration`

commit 848eb9559928c54dffd3426bba8e7cd7b1687cdc
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 13 20:16:43 2018 -0500

    Rename `ReadReceipt` `timestamps` --> `timestamp`

commit 39859e64b41ddf41127b52d963fe7cc2b9fcad68
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Wed Feb 14 18:43:42 2018 -0500

    Rename `IncomingPushMessageSignal.proto` to `SignalService.proto`

    This matches the `libsignal-service-java` filename.

commit fd4bfd76af57ffa44178caf21d350cca211dc048
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 13 16:24:36 2018 -0500

    Revert protobuf `package` to `textsecure`

    This was a breaking change and would need to be introduced with additional
    changes.

commit 9f618fa91717a0349f1ea28bf6d365ef0a5c9ca5
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 13 16:09:55 2018 -0500

    Sync service protocol buffers with Java project

    Snapshot: 4684a49b2e/protobuf/SignalService.proto
2018-02-15 15:06:14 -05:00