Commit graph

32 commits

Author SHA1 Message Date
Fedor Indutny
4ef0bf96cc
Uint8Array migration 2021-09-23 17:49:05 -07:00
Josh Perez
65ddf0a9e8
Import log instead of using it off of window 2021-09-17 14:27:53 -04:00
Fedor Indutny
3f7957c20d
Self-repairing message counter 2021-09-15 11:45:22 -07:00
Fedor Indutny
570fb182d4
Fully move to protobufjs 2021-07-13 11:54:53 -07:00
Scott Nonnenberg
1520c80013
Remove messageCollection from Conversation model 2021-06-15 17:44:14 -07:00
Fedor Indutny
207d05fd05 Run SQL initialize in parallel with createWindow 2021-04-09 00:06:46 -04:00
Josh Perez
d82ce07942 Improve cold start performance 2021-03-19 16:57:35 -04:00
Evan Hahn
8bfaf598af Add license headers across the project 2020-11-04 13:03:13 -06:00
Evan Hahn
cb9a7f79d1 Rewrite Message model tests in TypeScript 2020-11-04 13:00:41 -06:00
Scott Nonnenberg
b3ac1373fa Move left pane entirely to React 2019-03-12 17:44:14 -07:00
Scott Nonnenberg
e828253ef0 Restor full function syntax to custom Mocha reporter 2018-11-07 16:53:41 -08:00
Scott Nonnenberg
dbf0be2db5 eslintify all test files 2018-11-07 16:34:38 -08:00
Scott Nonnenberg
1755e0adfd Move all remaining stores to SQLCipher 2018-10-31 17:36: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
61f7b8360b Conversation: store lastMessage/lastMessageStatus in memory only 2018-07-27 10:55:10 -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
cfe0bd0e79 Move to npm for several dependencies
mustache
jQuery
underscore
backbone
mocha
chai
intl-tel-input
2018-05-23 16:26:48 -07:00
Daniel Gasienica
1dd87ad197 Format all source code using Prettier 2018-04-30 16:53:34 -04:00
Daniel Gasienica
9065b647ad Run migrations before clearing database during tests 2018-04-03 11:45:11 -04:00
Daniel Gasienica
01480f5dd2 Improve formatting 2018-04-03 11:45:11 -04:00
Scott Nonnenberg
3a3aa3efb6
Remove test/protos symlink, use window.PROTO_ROOT for config 2017-09-14 16:53:48 -07:00
lilia
40af226a4a Move Whisper.events out of views and tests 2017-04-21 13:21:18 -07:00
lilia
d0448ec778 Fix tests
// FREEBIE
2017-04-13 13:15:42 -07:00
lilia
173e037fa6 Fix minor style errors
And keep it that way, by making jscs config more opinionated.

// FREEBIE
2016-02-18 13:45:22 -08:00
lilia
f764445c86 Remove erroneous license file and headers
We only use GPLV3 around here.

// FREEBIE
2015-09-07 14:58:42 -07:00
lilia
026f110d36 Delete the database once, before tests run 2015-04-15 18:02:44 -07:00
Matt Corallo
444b765dfc Remove unused function in _test.js 2015-01-14 09:35:57 -10:00
lilia
470346c9c4 Save incoming messages and pass to frontend asynchronously
After a message is saved asynchronsly, fire an event and pass the
message attributes to frontend listeners via the chrome-runtime API.

This behavior is similar to the 'storage' event fired by localStorage.
2014-11-24 19:25:03 -08:00
lilia
ced295a630 Move message and conversation storage to IndexedDB
Getting up and running with IndexedDB was pretty easy, thanks to
backbone. The tricky part was making reads and writes asynchronous.
In that process I did some refactoring on Whisper.Threads, which
has been renamed Conversations for consistency with the view names.

This change also adds the unlimitedStorage permission.
2014-11-24 19:25:03 -08:00
Arlo Breault
5638b20046 Expose test results to sauce
* Do what blanket does, adding another level of indirection in the
   reporting.
2014-11-24 19:11:36 -08:00
lilia
9f676af9bb Refactor crypto.js and native client interface
NB: this diff is best viewed with --ignore-whitespace

Distills crypto.js down to the hard cryptoey bones. It pulls from
webcrypto for aes and hmac, and from native client for curve25519 stuff
or potentially another object implementing the handful of needed
curve25519 functions.

Everything else formerly known as crypto, including session storage and
management, axolotl, etc.. is now protocol.js. The separation is not
quite perfect, but it's a big step.

nativeclient.js now enables talking to the native client module through
a high level interface as well as registering callbacks that will be
executed once the module is loaded. And it has tests!

Finally, this commit removes all references to the "testing_only"
object, preferring to run tests on textsecure.crypto instead.
2014-11-06 04:33:43 -08:00
lilia
6b034e951a Make the concat list explicit
Since I decided to preen mocha and chai, we can no longer generate the
concat file list from the preen config. We must instead explicitly list
the modules we want to concatenate. I placed this config in bower.json
so that most of the time, we won't need to change the Gruntfile.

Also added a concatenation task for test page dependencies.
2014-10-30 18:33:37 -07:00