Commit Graph

3229 Commits (4033a9f8137e62ed286170ed5d4941982b1d3a64)
 

Author SHA1 Message Date
Scott Nonnenberg 4033a9f813
Fix typo in issue template (#2020) 7 years ago
Scott Nonnenberg 7ceeb8bac4
Update electron to 1.7.12 (#2029) 7 years ago
Steven Leiva 742fe73d34 'Restart' -> 'Restart Signal' button in update dialog (#2024) 7 years ago
Scott Nonnenberg 7b49180bc0
Big update to new signal branding (#2018) 7 years ago
Scott Nonnenberg c64f0fc75e
app.quit() -> app.exit(), immediate app close on second instance (#2017) 7 years ago
Scott Nonnenberg 72b7e4ec34
Process expireTimer and block status along with contact/group sync (#1980)
* Mark group as left = false if it is active in contact sync

* Handle expireTimer + blocked state along with contact/group sync
7 years ago
Scott Nonnenberg 3f0354f09e
Harden production against NODE_ENV environment variable (#2010)
Fixes #1999
7 years ago
Scott Nonnenberg 9d9991e0f3
v1.3.0-beta.1
Update to Electron 1.7.11 (#1996)

Fixed: Crash during input via Chinese IME on Mac (#1996)

Fixed: Expired disappearing messages would sometimes remain in
conversation (#1983)
7 years ago
Scott Nonnenberg 5bb6b2f77f
Update to latest Electron 1.7.x (#1996)
Fixes #1991, related to IME input on Mac.
7 years ago
Scott Nonnenberg fb2ebddaa3
Remove expired message if it expired during database fetch (#1983)
* Log SyncMessage destination, even if it's a group

* Remove disappearing message even if deleted during fetch

This change fixes a potential race condition with disappearing message
removal from the UI. If the UI is in the middle of making a database
request for messages to display, then we need to wait for that to
complete before removing the newly-deleted expired message.
7 years ago
Scott Nonnenberg b2a3a0e679
v1.2.0-beta.2
Fixed: forwarded video would not play (#1977)

Fixed: conversation was inaccessible if group member had invalid phone
number (#1968)

Fixed: powershell warning caused cert validation of downloaded update to
fail on windows (#1976)

Fixed: 'Missing signed prekey' errors after re-link (#1979)

Add badge with unread count to the tray icon - thanks @m-pilia (#1934)
  Note: to try this test feature out, use the
   `--use-tray-icon` and `--start-in-tray` command-line arguments

Dev:
- Additional logging for sort of conversation list (#1969)
- Dependency updates, fixes required for successful release
  (#1966 and #1976)
- Log more info along with http errors (#1968)

Note: 1.2.0-beta.1 was never released - changes here:
  https://github.com/WhisperSystems/Signal-Desktop/releases/tag/v1.2.0-beta.1
7 years ago
Scott Nonnenberg 33fd9c5dd4
Account setup: confirm first signed prekey, clear prekeys (#1979) 7 years ago
Scott Nonnenberg c70fb3a254
Video/audio: rely on the browser to detect content type (#1977) 7 years ago
Martino Pilia 7034d8759d Add badge for unread messages to the tray icon (#1934)
This commit adds a badge to the tray icon that displays the number of
unread messages, if there is any. It is implemented by providing
alternative versions of the icon, that replace the default image when a
message is received.

The badge is rendered graphically as a red circle containing the number
of unread messages. Since a different icon file is needed for each
possible number of unread messages, but this number is clearly
unbounded, only the numbers from 1 to 9 are provided. If there are 10 or
more unread messages, a single badge (depicted as "9+") is used.

Resolves #1917
7 years ago
Scott Nonnenberg 9ef8228ff8
Update electron-builder to latest, with .ico fix (#1976) 7 years ago
Scott Nonnenberg 743e897541
Left pane: small sorting fix, logging for error cases (#1969) 7 years ago
Scott Nonnenberg ce01eb7913
Log more info w/http errors, resilient to invalid group members (#1968)
* api.js: HttpError now preserves more of original error info

* Allow invalid conversation to be added to ConversationController

If a number we don't believe is valid comes in as part of a group, we
fall apart. We event prevent display of that conversation. Because we
have 'isValid()' protections in place for the places we create contacts
from user input in desktop (the search bar), we can temporarily add an
invalid contact to our collection (not saving it to the database) to
unblock this group scenario.

Still investigating what kind of phone number is valid in a mobile app
but not valid for us.

* Finish the debuggable error support

* Fix logging in the case of an invalid number
7 years ago
Scott Nonnenberg 177dfb3220
Dependency updates, fixes required for successful release (#1966)
* A number of fixes required for successful build after upgrades

- extract now takes an absolute directory only
- something changed, so we now need to force NODE_ENV=production; we use
  electron-is-dev for this
- electron-builder, electron-publisher-s3, and electron-updater are now
  updated to their latest available versions

* Add direct dependency on extract-zip, since we use it directly

* Load 'config' module after we've modified NODE_ENV

* Downgrade electron-builder due to bug, downgrade icon-maker too

The latest electron-builder came with a fix for one of our bugs as well
as a new bug that blocks builds on Windows: https://github.com/electron-userland/electron-builder/issues/2462

There's no good reason to upgrade icon-maker. And a good reason to keep at the version on github: https://github.com/jaretburkett/electron-icon-maker/issues/7
7 years ago
Scott Nonnenberg d81943cf20
v1.2.0-beta.1
Update to Electron 1.7.10 (#1919)

Fix issue where clicking Windows notification breaks window out of
aero-snap location (#1918)

Fix issue where old log data would persist in logs dir (#1945)

Fix issue where disabled send field (in the middle of send) could be
edited after click (#1937)

Update strings (#1921)

Dev:
  - Fix error to console when verifying contact in standalone mode
    (#1961)
  - Remove all built assets from repo (#1955)
  - Log out information from DOMException when import fails (#1923)
  - Log clearer messages regarding prekey/signed prekey fetches (#1961)
  - Make errors more debuggable; capture correct stack, include name
    (#1944)
  - Add eslint/mocha with code coverage for non-browser code (#1945)
  - Revamped github issue and pull request templates, updates to
    contributing.md/readme.md (#1955 and #1956)
  - Document building/testing releases in Contributing.md,
    thanks @veggiedefender (#1867)
  - Update a number of dependencies to the latest: builder, websocket,
    spellcheck (#1920)
7 years ago
Scott Nonnenberg bbab4bba10
Fix device ID check, clean up prekey fetch logging (#1961)
* DeviceId is a string, so we use the less-strict comparison

* Clean up prekey fetch logging
7 years ago
Scott Nonnenberg 9b2e2a4605
Readme: big install, Contributing: mention Next Steps project (#1956) 7 years ago
Scott Nonnenberg d503d1ace3
Remove built assets from repo, updates to docs + GH templates (#1955)
* Revamp issue and pull request templates, other docs tweaks

`yarn test` now runs all of our tests.

* Remove generated files from the repository

* Update to new Signal support URL

* Prevent the 'Test failed 2 == 1' from test-release in CI

* Another attempt to fix grunt test-release on Appveyor

* grunt test-release: Fail build if test fails

* Lint fix, and move jshint earlier in CI process
7 years ago
Jesse Li 752ef40d47
Document building/testing releases in Contributing.md (#1867)
* Document building/testing releases

* move instructions for testing releases to bottom
7 years ago
Scott Nonnenberg 64fe9dbfb2
Clean logs on start - and eslint/mocha with code coverage (#1945)
* Clean logs on startup; install server-side testing/linting

* Add eslint config, make all of app/ conform to its demands

* Add Node.js testing and linting to CI

* Lock project to Node.js 7.9.0, used by Electron 1.7.10

* New eslint error: trailing commas in function argumensts

Node 7.9.0 doesn't like trailing commas, but Electron does

* Move electron to devDependency, tell eslint it's built-in
7 years ago
Scott Nonnenberg 6464d0a5fa
Make errors more debuggable; capture correct stack, include name (#1944)
No more errors like this in the logs!

```
INFO  2018-01-05T18:33:15.942Z Message.saveErrors: null Error
    at file:///C:/Users/Test/AppData/Local/Programs/signal-desktop/resources/app.asar/js/libtextsecure.js:30:33
    at file:///C:/Users/Test/AppData/Local/Programs/signal-desktop/resources/app.asar/js/libtextsecure.js:138:3
    at file:///C:/Users/Test/AppData/Local/Programs/signal-desktop/resources/app.asar/js/libtextsecure.js:40718:3
```

It has no information in the title, and then the callstack points to
the `new Error()` line in the old `errors.js`.

This change will include the actual error name and message details in
the stack, and will include the original http error stack as well if
provided.
7 years ago
Scott Nonnenberg 94a8c7e524
Update a number of dependencies to the latest: builder, websocket, spellcheck (#1920)
* Update builder to the latest

* Upgrade a number of dependencies
7 years ago
Scott Nonnenberg e999473f19
Preserve disabled state in the middle of sending message (#1937)
* Preserve disabled state in send-message field on click

Also: get consistent in treatment of 'disabled' property.

* Add some comments explaining how audio recording dismissal works
7 years ago
Scott Nonnenberg 98d3a5e607
Update strings for just about all supported languages (#1921) 7 years ago
Scott Nonnenberg 66aa76e501
Log out information from DOMException when import fails (#1923)
This should give us the information we're looking for when imports fail
mysteriously!

https://developer.mozilla.org/en-US/docs/Web/API/DOMException
7 years ago
Scott Nonnenberg 8fd0adc486
Update to Electron 1.7.10 (#1919) 7 years ago
Scott Nonnenberg deb9bab086
Remove duplicate showWindow method (#1918) 7 years ago
Scott Nonnenberg 2bd27941c0
v1.1.0
Note: This release is the same thing as https://github.com/WhisperSystems/Signal-Desktop/releases/tag/v1.1.0-beta.6

Listed below are the changes from the previous production release: https://github.com/WhisperSystems/Signal-Desktop/releases/tag/v1.0.41

Update to electron 1.7.9 (#1736)

Support the latest phone number formats via libphonenumber update (#1899)

Reduce download size by ~25MB over the previous production build (#1869)

Emoji - thanks @liliakai:
  - Emoji picker (#1608)
  - Add support for Emoji 5 (#1797)

Notifications:
  - Windows 7: Use an alternate mechanism for notifications (#1812)
  - Prevent drawAttention() when notifications are turned off - thanks @canerelci! (#1612)

Linux:
  - Support for current (artful) and previous (xenial) ubuntu versions (#1856)
  - Fix missing application icon on some Linux distributions (#1735)
  - Fix issue where window would not show new message alerts on some Linux systems - thanks @cornerman (#1820)
  - Add .deb specific dependencies - thanks @veggiedefender (#1858)

The default button is now 'later', not 'restart' in the 'update available' dialog (#1894)

Make the window minimum width a little smaller - thanks @emptyflask (#1863)

Intl-friendly sort order for contact lists (#1900)

Fix issue where update would restore deleted windows shortcut (#1804)

Fix issue where .tif file attachments could not be sent or received (#1901)

(in testing) Add a tray icon to the application behind command-line argument - thanks @m-pilia (#1676)
  --use-tray-icon enables the tray icon
  --start-in-tray enables the tray icon and the application starts minimized in the tray bar

(in testing) Support pass-through proxies with HTTPS_PROXY environment variable (#1878)

Dev:
  - Display of environment and app instance in title bar/about window (#1606)
  - Support for beta releases installed beside production versions (#1606)
  - Fix json parsing exceptions obscuring server errors (#1605)
  - Be resilient to thrown non-errors in import process (#1737)
7 years ago
Scott Nonnenberg 72971a365f
manifest.css catch-up 7 years ago
Scott Nonnenberg 14ec36f208
Promote v1.1.0-beta.6 to production 7 years ago
Scott Nonnenberg 250bd955a6
v1.1.0-beta.6
Fix issue where .tif file attachments could not be sent or received
(#1901)

Support the latest phone number formats via libphonenumber update
(#1899)

Intl-friendly sort order for contact lists (#1900)

Show window if hidden to tray when second instance attempts to start
(#1897)

Make the window minimum width a little smaller - thanks @emptyflask
(#1863)

Fix issue where duplicate emoji were listed in the emoji panel (#1893)

The default button is now 'later', not 'restart' in the
'update available' dialog (#1894)

Dev:
  - Add .deb specific dependencies - thanks @veggiedefender (#1858)
7 years ago
Scott Nonnenberg 7781f8fa5b
Treat tiffs like unrecognized files; Chrome doesn't render them (#1901) 7 years ago
Scott Nonnenberg 5caee59921
Support the latest phone number formats via libphonenumber (#1899)
* Update to the latest google-libphonenumber

* Update package.json to the format uses when updating it
7 years ago
Scott Nonnenberg f0aaa7a1c5
Introduce intl-friendly sort order for contact lists (#1900) 7 years ago
Scott Nonnenberg 5cf320e429
Show window if hidden when second instance attempts to start (#1897) 7 years ago
Jesse Li 8a919efbe9 Add .deb specific dependencies (#1858)
Some barebones debian-based systems (e.g. Docker containers) don't come with the libasound2 and libxss1 libraries, which electron-builder does not include by default.
7 years ago
Jon Roberts bc399c6777 a slightly more reasonable min-width (#1863) 7 years ago
Scott Nonnenberg 18ee8a3557
Remove obsolete emoji via a new fork of emoji-panel (#1893)
In many cases this removes generic emoji in favor of new gendered
options (one of which was a copy of the previous generic emoji anyway).
7 years ago
Scott Nonnenberg 5c5fdaaed5
Update available dialog: default now 'later', not 'restart' (#1894)
This prevents the user from restarting the app by pressing space on
MacOS,  which happens frequently during the course of normal typing of a
message.

In the future we'll move to a less-obtrusive system a little
more like Chrome, where you choose to do the restart when it is
convenient for you. For now, we minimize the chance of accidental
restart in the middle of typing a message.
7 years ago
Scott Nonnenberg 6f2260d08c
v1.1.0-beta.5
Support pass-through proxies with HTTPS_PROXY env var (#1878)
7 years ago
Scott Nonnenberg b17a67ec65
Support pass-through proxies with HTTPS_PROXY env var (#1878)
We've simplified; HTTPS_PROXY or https_proxy is used for all requests.

We also require that only our self-signed certificates are used for
secure traffic. That rules out all SSL-terminating MITM proxies, since
we don't trust their root certificate.

Once we're sure that this system works for people, we'll improve config
on MacOS and Windows.
7 years ago
Scott Nonnenberg 4f487d208d
v1.1.0-beta.4
Reduce download size by ~125MB versus the previous beta build, about
~25MB over the previous production build (#1869)

Dev:
  - Update to v1.0.41 equivalence
  (5bc70c35e7)
  - This update to match production includes update fixes for OSX.
  Note: The transition v1.1.0-beta.3->v1.1.0-beta.4 will still have
  upgrade difficulties. When v1.1.0-beta.4 updates to the next release
  version, the behavior will be fixed.
7 years ago
Scott Nonnenberg 2a56c53fda
Merge branch 'master' into development 7 years ago
Scott Nonnenberg 00852cb828
v1.0.41
Fix issue where 'upgrade to new version' dialog would not restart app on
OSX (#1866)

Note: The transition v1.0.40->v1.0.41 will still exhibit this problem.
When v1.0.41 updates to the next release version, the behavior will be
fixed.
7 years ago
Scott Nonnenberg 53d7761e43
Merge branch 'master' into development 7 years ago
Scott Nonnenberg e96502ba5e
Delay our call to quitAndInstall(); doesn't work inside callback (#1866) 7 years ago