Commit Graph

106 Commits

Author SHA1 Message Date
Scott Nonnenberg ecb126e74c
Custom linter to check code quality (#2753) 2018-09-20 15:24:52 -07:00
Scott Nonnenberg 998c35dcb3 Split configuration into low and high traffic files
Also, we're now handling config ourselves instead of using
electron-config and config dependencies.
2018-08-29 10:40:16 -07:00
Scott Nonnenberg f59ec92fef Routine update to Electron v2.0.8 2018-08-28 13:54:03 -07:00
Scott Nonnenberg e13f431456 Build libcrypto.a on Ubuntu 14.04 for maximum compatibility 2018-08-02 19:12:18 -07:00
Scott Nonnenberg fe84e92359 node-sqlcipher update: always build, statically link openssl 2018-08-02 17:32:51 -07:00
Scott Nonnenberg ce2f3bd3c4 Statically compile openssl into sqlcipher for linux targets 2018-08-01 10:58:26 -07:00
Scott Nonnenberg f9780f85bf Yarn lockfile catch-up 2018-07-31 17:17:53 -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 3c69886320 Finish new Message component, integrate into application
Also:
- New schema version 8 with video/image thumbnails, screenshots, sizes
- Upgrade messages not at current schema version when loading messages
  to show in conversation
- New MessageDetail react component
- New ConversationHeader react component
2018-07-17 15:58:07 -07:00
Scott Nonnenberg 43a44793c5 Remove jshint - move everything over to eslint
Also removed all hints of previous linters
2018-07-17 15:54:32 -07:00
Scott Nonnenberg 8eeaad8e18 Remove unused export/import functionality 2018-06-21 11:54:01 -07:00
Scott Nonnenberg ec3e36824c Remove jscs from the project 2018-05-23 16:26:48 -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
Scott Nonnenberg 91c247ef8d Move all forks to @scottnonnenberg-signal account 2018-05-23 12:26:17 -07:00
Scott Nonnenberg e02887565b
Update to electron v2.0.1 (#2401)
* Remove extra parenthesis causing warnings on latest chromium

* Update to electron 2.0.1

* Move all @types dependencies to devDependencies

* Update electron-builder/electron-updater

* Update to Node.js 8.9.3 to match Electron 2.0.1
2018-05-23 12:17:58 -07:00
Scott Nonnenberg 4e5c8965ff Move to react for newlines, emoji, and links in message body 2018-05-14 16:09:37 -07:00
Scott Nonnenberg 41be7f126b Visuals for embedded contacts as well as contact detail screen 2018-05-07 19:09:55 -07:00
Daniel Gasienica 58399549c3 Add `protobufjs` dependency 2018-05-07 21:53:39 -04:00
Daniel Gasienica 38b23c6627 Add `@types/semver` 2018-05-02 20:01:56 -04:00
Daniel Gasienica 0b4c60c272 Add `@types/sinon` 2018-05-02 19:58:33 -04:00
Daniel Gasienica e3191c9017 Remove `node-notifier` 2018-05-02 19:58:33 -04:00
Scott Nonnenberg 58fddc4e9d Remove electron builder support for publishing to S3
We do this ourselves now.
2018-05-01 09:46:36 -07:00
Daniel Gasienica 1bf3ab630c Add `eslint-config-prettier` 2018-04-30 16:52:43 -04:00
Daniel Gasienica 5ec8b1c6e1 Add `@types/jquery` 2018-04-25 15:24:51 -04:00
Daniel Gasienica 3a8c3ccdab Add `prettier` 2018-04-25 15:24:51 -04:00
Daniel Gasienica 8ef04cb1fd Move `@types/*` dependencies to `devDependencies` 2018-04-25 15:24:51 -04:00
Daniel Gasienica 10bede85c9 Add `filesize` dependency 2018-04-25 15:24:50 -04:00
Daniel Gasienica 9533c09707 Add `@types/lodash` 2018-04-25 15:24:50 -04:00
Scott Nonnenberg 21bf02c94d
Fixed examples in Quote.md, rough Android visuals 2018-04-13 18:05:44 -07:00
Daniel Gasienica 9d159da79c Add Microsoft contributed TSlint rules: `tslint-microsoft-contrib` 2018-04-11 19:45:31 -04:00
Daniel Gasienica 9d41b86162 Remove escaping from `linkText`
We leverage jQuery’s HTML escaping in `$.html(…)`.
2018-04-11 16:36:42 -04:00
Daniel Gasienica d9381c543e Add `linkify-it` dependency 2018-04-11 16:36:42 -04:00
Daniel Gasienica 6f8dee402d Add `@types/mocha` 2018-04-11 16:36:42 -04:00
Daniel Gasienica 7ac4bee959 Add `@types/chai` 2018-04-11 16:36:42 -04:00
Daniel Gasienica 78ba4eddc1 Add `@types/lodash` 2018-04-11 16:36:42 -04:00
Daniel Gasienica f5641fe6d6 Add `link-text` dependency
It only has the minimum required dependencies:
- `linkify-it`: Best-in-class link detection library with support for
                Unicode/IDN.
- `escape-html`: Standalone dependency for escaping HTML.
- `uc.micro`: Standalone dependency of Unicode data files.
2018-04-11 16:36:42 -04:00
Scott Nonnenberg be91a89d68
Parse theme from querystring, put on util. Moment from require()
We also fully set up i18n and put it on util as well as making
it available on windows.i18n for Backbone views.
2018-04-05 08:31:43 -07:00
Scott Nonnenberg 1326b26585
Full styleguide now available via `yarn styleguide`
Due to a number of hacks, the style guide can be used to show Backbone
views. This will allow a smooth path from the old way of doing things to
the new.
2018-04-04 16:08:38 -07:00
Scott Nonnenberg 893fb1cb9e
Introduce React/TypeScript/TSLint into app for new UI components
npm run transpile
  Works on files under js/react/
  Outputs files right next to the .tsx file

This is part of our `grunt dev` task, as well as the default grunt task,
which does everything else necessary to get a raw git checkout ready to
run.
2018-04-04 16:08:27 -07:00
Scott Nonnenberg 1ad2b080c8
Move moment from bower deps to npm deps 2018-04-04 16:00:38 -07:00
Daniel Gasienica 29832c445a Add `@sindresorhus/is` dependency
This will allow us to do runtime and, once we have TypeScript support,
compile-time type checks.
2018-04-04 17:40:19 -04:00
Scott Nonnenberg 4e6d1e128f
Update to electron 1.8.4 (#2186) 2018-03-26 14:39:55 -07:00
Daniel Gasienica 7eaa6ef2f7 Remove `string-to-arraybuffer` dependency
The function is simple enough to inline and this allows us to reduce our
dependencies surface area.
2018-03-26 16:38:34 -04:00
Daniel Gasienica 19a70ad8b8 Add `to-arraybuffer` dependency
Used for converting Node.js buffers to `ArrayBuffer`.
2018-03-26 16:38:34 -04:00
Daniel Gasienica 0fc2868f0e Remove `tempy` dependency
We already use `tmp`.
2018-03-26 16:38:34 -04:00
Daniel Gasienica 14f58281bc Add `string-to-array-buffer` as dev dependency
Used for testing attachment data migration.
2018-03-26 16:38:34 -04:00
Daniel Gasienica 925ddbd7db Add `tempy` as dev dependency
Useful for creating random temporary directories for testing.
2018-03-26 16:38:34 -04:00
Scott Nonnenberg 6d8f4b7b6e
Backup: zipped messages.json, flat attachments dir
Backup creates, in a target directory:
  - An attachments folder, with all attachments, each named for their
    parent message's id - a GUID. If there is more than one attachment
    in a given message,  each attachment beyond the first will end with
    '-N', zero-indexed.
  - A file named messages.zip. It contains exactly what went to disk in
    the original export code, but zipped up.

Export is now only 'light,' and in this new messages.zip format.

Import supports both the new format and the old format. If the target
directory has a messages.zip file, we'll treat it as the new format.

Next up: Encrypting attachments and the messages.zip!
2018-03-20 11:53:22 -07:00
Scott Nonnenberg fd056e1b4c
Add nsp to dev dependencies and to travis and CI scripts 2018-03-14 14:42:13 -07:00
Daniel Gasienica c317f34f67 Remove `ensure-error` and `clean-error` dependency
It potentially could leak information from serialized non-errors that are thrown
due to `util.inspect`.
2018-03-08 17:45:55 -05:00