Compare commits

..

117 Commits

Author SHA1 Message Date
RiotRobot
2b0ec9eb2f v1.7.11 2020-10-26 17:24:28 +00:00
RiotRobot
5220abbfd4 Prepare changelog for v1.7.11 2020-10-26 17:24:28 +00:00
RiotRobot
272f317415 v1.7.11-rc.1 2020-10-21 14:54:46 +01:00
RiotRobot
0023fb25a2 Prepare changelog for v1.7.11-rc.1 2020-10-21 14:54:46 +01:00
RiotRobot
783117fea9 Merge branch 'master' into develop 2020-10-20 11:31:41 +01:00
RiotRobot
4e61aad299 v1.7.10 2020-10-20 11:31:22 +01:00
RiotRobot
94dee7bece Prepare changelog for v1.7.10 2020-10-20 11:31:22 +01:00
Travis Ralston
92f57ca880 Merge pull request #148 from vector-im/dependabot/npm_and_yarn/npm-user-validate-1.0.1
Bump npm-user-validate from 1.0.0 to 1.0.1
2020-10-16 13:40:10 -06:00
dependabot[bot]
7bd70e2eb6 Bump npm-user-validate from 1.0.0 to 1.0.1
Bumps [npm-user-validate](https://github.com/npm/npm-user-validate) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/npm/npm-user-validate/releases)
- [Commits](https://github.com/npm/npm-user-validate/compare/v1.0.0...v1.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-16 19:33:28 +00:00
Damir Jelić
8add8d7717 electron-main: Fix some lint issues. 2020-10-13 17:07:39 +02:00
Damir Jelić
1d811b6f4b electron-main: Use keytar to for the seshat passphrase.
This will also change the passphrase for existing setups if no
passphrase is found in the secret store.
2020-10-13 15:59:21 +02:00
Damir Jelić
50a4069893 electron-main: Refactor out the randomArray method. 2020-10-13 15:58:35 +02:00
RiotRobot
14415e2707 Merge branch 'master' into develop 2020-10-12 13:52:44 +01:00
RiotRobot
367dd5640c v1.7.9 2020-10-12 13:52:24 +01:00
RiotRobot
08ee24dfb6 Prepare changelog for v1.7.9 2020-10-12 13:52:23 +01:00
J. Ryan Stinnett
9bb386f2b5 Merge pull request #146 from vector-im/jryans/electron-10.1.3
Upgrade to Electron 10.1.3
2020-10-07 15:24:19 +01:00
J. Ryan Stinnett
0f94667dea Upgrade to Electron 10.1.3 2020-10-07 15:02:51 +01:00
RiotRobot
a71ac70a13 v1.7.9-rc.1 2020-10-07 14:23:43 +01:00
RiotRobot
5a0f686b28 Prepare changelog for v1.7.9-rc.1 2020-10-07 14:23:43 +01:00
poljar
2170e494fb Merge pull request #145 from vector-im/poljar/seshat-bump
package.json: Bump the seshat version.
2020-10-05 18:30:27 +02:00
Damir Jelić
6ced94914f package.json: Bump the seshat version. 2020-10-05 18:23:32 +02:00
Michael Telatynski
5ca16bf2fc Merge pull request #144 from vector-im/t3chguy/fix/15311
Explicitly depend on `request` as webcontents-handler requires it
2020-09-29 13:03:41 +01:00
Michael Telatynski
f56dadd0ad Explicitly depend on request as webcontents-handler requires it
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-09-29 12:53:08 +01:00
J. Ryan Stinnett
215babb081 Merge pull request #143 from vector-im/jryans/upgrade-pti-2020
Upgrade png-to-ico
2020-09-28 16:35:37 +01:00
J. Ryan Stinnett
f71e2bf232 Upgrade png-to-ico
This is a major version upgrade, but seems API compatible for our case. This
helps bring several dependencies up to modern versions.
2020-09-28 16:22:30 +01:00
RiotRobot
b146f50e91 Merge branch 'master' into develop 2020-09-28 16:13:25 +01:00
RiotRobot
e86e784359 v1.7.8 2020-09-28 16:13:06 +01:00
RiotRobot
afd578df71 Prepare changelog for v1.7.8 2020-09-28 16:13:06 +01:00
David Baker
b54ebc9008 Merge pull request #142 from vector-im/dbkr/fix_new_issue_link
Point 'new issue' link at issue-type choice page
2020-09-28 12:52:18 +01:00
David Baker
30d03d64b3 Point 'new issue' link at issue-type choice page
Fixes https://github.com/vector-im/element-web/issues/15289
2020-09-28 11:37:34 +01:00
RiotRobot
e14c43a2fe v1.7.8-rc.1 2020-09-23 15:27:17 +01:00
RiotRobot
8e16b1b5e0 Prepare changelog for v1.7.8-rc.1 2020-09-23 15:27:17 +01:00
J. Ryan Stinnett
161b024bf2 Merge pull request #141 from vector-im/jryans/neon-seshat
Fix neon error by upgrading Seshat
2020-09-21 14:55:17 +01:00
J. Ryan Stinnett
434215b24b Fix neon error by upgrading Seshat 2020-09-21 14:52:26 +01:00
RiotRobot
df958ff56b Merge branch 'master' into develop 2020-09-14 16:05:19 +01:00
RiotRobot
89d4be6cb6 v1.7.7 2020-09-14 16:05:02 +01:00
RiotRobot
e9ecdde704 Prepare changelog for v1.7.7 2020-09-14 16:05:02 +01:00
RiotRobot
0e6ae2514a Merge branch 'master' into develop 2020-09-14 13:45:34 +01:00
RiotRobot
f5b51aecfe v1.7.6 2020-09-14 13:45:15 +01:00
RiotRobot
a88d1a838c Prepare changelog for v1.7.6 2020-09-14 13:45:15 +01:00
RiotRobot
3a3b9641e9 v1.7.6-rc.1 2020-09-09 15:59:31 +01:00
RiotRobot
6e9407e7c1 Prepare changelog for v1.7.6-rc.1 2020-09-09 15:59:31 +01:00
J. Ryan Stinnett
7d3c203464 Merge pull request #140 from vector-im/jryans/electron-10.1.1
Upgrade to Electron 10.1.1
2020-09-09 15:10:26 +01:00
J. Ryan Stinnett
e9b4fb2245 Upgrade to Electron 10.1.1 2020-09-09 14:57:09 +01:00
J. Ryan Stinnett
2382cc56b1 Merge pull request #139 from vector-im/jryans/rename-pipeline
Update to Element pipeline name
2020-09-09 11:10:19 +01:00
J. Ryan Stinnett
b7a2810dc3 Update to Element pipeline name 2020-09-09 11:09:10 +01:00
Travis Ralston
9eb6932f11 Merge pull request #137 from vector-im/dependabot/npm_and_yarn/bl-4.0.3
Bump bl from 4.0.2 to 4.0.3
2020-09-02 10:39:57 -06:00
dependabot[bot]
d1883aa2e8 Bump bl from 4.0.2 to 4.0.3
Bumps [bl](https://github.com/rvagg/bl) from 4.0.2 to 4.0.3.
- [Release notes](https://github.com/rvagg/bl/releases)
- [Commits](https://github.com/rvagg/bl/compare/v4.0.2...v4.0.3)

Signed-off-by: dependabot[bot] <support@github.com>
2020-09-02 16:24:05 +00:00
RiotRobot
2308ab9a83 v1.7.5 2020-09-01 17:24:09 +01:00
RiotRobot
b33205d607 Prepare changelog for v1.7.5 2020-09-01 17:24:09 +01:00
RiotRobot
df3d37586e v1.7.5-rc.1 2020-08-26 12:17:37 +01:00
RiotRobot
fd68a83c08 Prepare changelog for v1.7.5-rc.1 2020-08-26 12:17:37 +01:00
Travis Ralston
b0f4a4debc Merge pull request #135 from vector-im/travis/settings-v3
Settings v3: Update configs for new feature flag behaviour
2020-08-19 11:56:53 -06:00
Travis Ralston
7fac3a9b7c Update configs for new settings structure 2020-08-17 13:44:17 -06:00
RiotRobot
711967d19b Merge branch 'master' into develop 2020-08-17 12:53:54 +01:00
RiotRobot
e00eb4b952 v1.7.4 2020-08-17 12:53:31 +01:00
RiotRobot
caff0ef9f0 Prepare changelog for v1.7.4 2020-08-17 12:53:31 +01:00
Michael Telatynski
065f5d7adc Merge pull request #134 from vector-im/t3chguy-patch-1
Add reaction preview labs flags to nightly
2020-08-17 11:15:52 +01:00
Michael Telatynski
67f0570af4 Add reaction preview labs flags to nightly 2020-08-17 11:10:11 +01:00
RiotRobot
87125f4c59 v1.7.4-rc.1 2020-08-13 12:04:28 +01:00
RiotRobot
bae3f08936 Prepare changelog for v1.7.4-rc.1 2020-08-13 12:04:28 +01:00
J. Ryan Stinnett
efc8baf1df Merge pull request #132 from vector-im/jryans/rebrand-policy
Update policy links to element.io
2020-08-13 11:30:44 +01:00
J. Ryan Stinnett
c0ca8cd240 Merge pull request #131 from vector-im/jryans/rebrand-rageshakes
Update bug report submission URL
2020-08-10 11:11:42 +01:00
J. Ryan Stinnett
501611fa30 Update policy links to element.io
Part of https://github.com/vector-im/element-web/issues/14904
2020-08-07 11:38:48 +01:00
J. Ryan Stinnett
9d6cd6c7c0 Update bug report submission URL
Part of https://github.com/vector-im/element-web/issues/14892
2020-08-07 10:53:15 +01:00
J. Ryan Stinnett
d67f75779e Merge pull request #130 from vector-im/jryans/new-cert
Update code signing cert for Windows
2020-08-05 19:04:10 +01:00
J. Ryan Stinnett
26f283b56d Update code signing cert for Windows
The existing Windows code signing cert was due to expire 2020-08-23, so this
replaces it with a renewed cert.
2020-08-05 18:59:02 +01:00
RiotRobot
e1b1020700 Merge branch 'master' into develop 2020-08-05 15:34:06 +01:00
RiotRobot
53d46343b8 v1.7.3 2020-08-05 15:33:43 +01:00
RiotRobot
aaddcef169 Prepare changelog for v1.7.3 2020-08-05 15:33:43 +01:00
J. Ryan Stinnett
ba0210f8c1 Merge pull request #129 from vector-im/jryans/riot-to-element
Replace Riot with Element in docs and comments
2020-08-04 10:07:32 +01:00
David Baker
99d1ed4ff1 Merge pull request #128 from vector-im/dbkr/readme_build_order
Fix order of README steps
2020-08-04 08:23:34 +01:00
J. Ryan Stinnett
045f122688 Replace Riot with Element in docs and comments
This only covers the simple cases of references to issues and repos. More
complex areas, such as deployment scripts, will be handled separately.

Part of https://github.com/vector-im/element-web/issues/14864
2020-08-03 18:32:42 +01:00
David Baker
cbfb247ade Fix order of README steps
to be in the order they needd to be run.
2020-07-31 21:04:54 +01:00
J. Ryan Stinnett
eb4bf9e401 Merge pull request #127 from vector-im/jryans/electron-9.1.2
Upgrade to Electron 9.1.2
2020-07-31 13:20:33 +01:00
RiotRobot
0cdf85e20b v1.7.3-rc.1 2020-07-31 13:18:34 +01:00
RiotRobot
6e455f6bd4 Prepare changelog for v1.7.3-rc.1 2020-07-31 13:18:33 +01:00
J. Ryan Stinnett
0892ea5006 Upgrade to Electron 9.1.2 2020-07-31 12:56:47 +01:00
J. Ryan Stinnett
f344d8cac4 Merge pull request #126 from vector-im/jryans/cleanup-lint
Clean up linting
2020-07-28 18:38:43 +01:00
J. Ryan Stinnett
3decdb060e Remove redundant lint dependencies
We can let the linting package pull these in transitively for us.
2020-07-28 16:56:15 +01:00
J. Ryan Stinnett
92f48eced9 Remove JS SDK, no longer needed for lint rules
The JS SDK was previously only here for the ESLint config, but this is now part
of a separate package.
2020-07-28 16:37:46 +01:00
David Baker
045f6f8b42 Merge pull request #125 from vector-im/dbkr/more_renaming_faff
Update renaming workaround for 'Element' name
2020-07-28 16:16:32 +01:00
David Baker
358e3b8f7d Update rebrand stub to run 'Element.exe' 2020-07-28 16:02:40 +01:00
David Baker
c6ab88508f Remove the Element (Riot) shortcuts too 2020-07-28 15:56:05 +01:00
RiotRobot
a4cbe3acab Reset matrix-js-sdk back to develop branch 2020-07-27 21:11:27 +01:00
RiotRobot
4c7bdb35dd v1.7.2 2020-07-27 21:10:48 +01:00
RiotRobot
5735a0abdd Prepare changelog for v1.7.2 2020-07-27 21:10:48 +01:00
RiotRobot
0e882b80d2 Upgrade matrix-js-sdk to 8.0.0 2020-07-27 21:05:45 +01:00
David Baker
6b75b83c00 Merge pull request #124 from vector-im/dbkr/catch_exceptions_fetch_scripts
Catch exceptions from main method in fetch script
2020-07-23 11:21:47 +01:00
David Baker
d9e8fa34e7 Catch exceptions from main method in fetch script 2020-07-23 11:14:26 +01:00
Jorik Schellekens
300eac197d Merge pull request #122 from vector-im/joriks/eslint-config
Use new eslint package
2020-07-22 16:53:57 +01:00
David Baker
d49625e253 Merge pull request #123 from vector-im/dbkr/remove_bracketed_riot
Remove ' (Riot)' from app name
2020-07-21 18:11:48 +01:00
David Baker
94086f247a Remove ' (Riot)' from app name
And remove the hacks to make the user data path different from the
app name. Also add the profile dir to the legacy user data dir too.

Fixes https://github.com/vector-im/riot-web/issues/14619
Fixes https://github.com/vector-im/riot-web/issues/14623
2020-07-21 17:57:54 +01:00
Jorik Schellekens
422a827b82 Use new eslint package 2020-07-21 15:06:38 +01:00
RiotRobot
f21c1bee11 Reset matrix-js-sdk back to develop branch 2020-07-16 16:13:19 +01:00
RiotRobot
a6c86b131d v1.7.1 2020-07-16 16:12:44 +01:00
RiotRobot
777003d9a3 Prepare changelog for v1.7.1 2020-07-16 16:12:44 +01:00
RiotRobot
72334b8cd4 Upgrade matrix-js-sdk to 7.1.0 2020-07-16 16:12:07 +01:00
J. Ryan Stinnett
5ae86cd728 Merge pull request #121 from vector-im/dependabot/npm_and_yarn/lodash-4.17.19
Bump lodash from 4.17.15 to 4.17.19
2020-07-16 14:07:42 +01:00
dependabot[bot]
adf4453903 Bump lodash from 4.17.15 to 4.17.19
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19)

Signed-off-by: dependabot[bot] <support@github.com>
2020-07-16 08:55:42 +00:00
David Baker
180710f54c Merge pull request #120 from vector-im/dbkr/userdata_support_nightly
Don't forget nightly when computing userData path
2020-07-16 09:55:09 +01:00
David Baker
afa40de885 Merge pull request #119 from vector-im/dbkr/hostinglink
Fix hosting link
2020-07-16 09:30:38 +01:00
J. Ryan Stinnett
96c9b85e11 Merge pull request #117 from vector-im/neilalexander/icns
New macOS icon
2020-07-15 22:34:58 +01:00
David Baker
9d15c1bbd0 Don't forget nightly when computing userData path
We were assuming we were always 'Element'
2020-07-15 20:21:06 +01:00
David Baker
9004ce4fa5 Merge remote-tracking branch 'origin/develop' into dbkr/hostinglink 2020-07-15 20:16:57 +01:00
David Baker
174aaa684e Apparently this has been changed and should be changed here too 2020-07-15 20:05:43 +01:00
David Baker
583caa0aaa Fix hosting link
Fixes https://github.com/vector-im/riot-web/issues/14500
2020-07-15 20:03:02 +01:00
J. Ryan Stinnett
62736b86f1 Merge pull request #118 from theoryshaw/patch-1
Update README.md
2020-07-15 17:39:50 +01:00
Ryan Schultz
16c6f9839b Update README.md 2020-07-15 11:25:02 -05:00
Neil Alexander
e3e79fdfe1 New macOS icon 2020-07-15 15:52:31 +01:00
David Baker
764835a43c Merge pull request #115 from vector-im/dbkr/update_more_icons
More icon updates
2020-07-15 13:57:56 +01:00
David Baker
769d4cf647 Merge remote-tracking branch 'old-origin/develop' into dbkr/update_more_icons 2020-07-15 13:53:04 +01:00
David Baker
b06bba2c69 More icon updates 2020-07-15 13:50:00 +01:00
David Baker
80746c1f22 Merge pull request #114 from vector-im/dbkr/yarn_install
Don't forget to yarn install
2020-07-15 13:28:51 +01:00
David Baker
c2a39a4a8e Merge remote-tracking branch 'old-origin/develop' into dbkr/yarn_install 2020-07-15 12:55:58 +01:00
David Baker
e7190e3168 Don't forget to yarn install 2020-07-15 12:53:50 +01:00
RiotRobot
78a601fbeb Reset matrix-js-sdk back to develop branch 2020-07-15 12:12:12 +01:00
20 changed files with 1734 additions and 515 deletions

View File

@@ -1,5 +1,3 @@
const jsSdkEslintCfg = require('matrix-js-sdk/.eslintrc');
module.exports = {
parserOptions: {
ecmaVersion: 8,
@@ -10,17 +8,15 @@ module.exports = {
// we also have some browser code (ie. the preload script)
browser: true,
},
extends: ["eslint:recommended", "google"],
rules: jsSdkEslintCfg.rules,
extends: ["matrix-org"],
rules: {
// js-sdk uses a babel rule which we can't use because we
// don't use babel, so remove it & put the original back
"babel/no-invalid-this": "off",
"no-invalid-this": "error",
"quotes": "off",
"indent": "off",
"prefer-promise-reject-errors": "off",
"no-async-promise-executor": "off",
}
}
// js-sdk uses a babel rule which we can't use because we
// don't use babel, so remove it & put the original back
delete module.exports.rules["babel/no-invalid-this"];
module.exports.rules["no-invalid-this"] = "error";
// also override the line length to be consistent with
// vector-web / react-sdk rather than js-sdk
module.exports.rules["max-len"] = ["warn", {
code: 120,
}];

View File

@@ -1,3 +1,164 @@
Changes in [1.7.11](https://github.com/vector-im/element-desktop/releases/tag/v1.7.11) (2020-10-26)
===================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.11-rc.1...v1.7.11)
* No changes since rc.1
Changes in [1.7.11-rc.1](https://github.com/vector-im/element-desktop/releases/tag/v1.7.11-rc.1) (2020-10-21)
=============================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.10...v1.7.11-rc.1)
* Bump npm-user-validate from 1.0.0 to 1.0.1
[\#148](https://github.com/vector-im/element-desktop/pull/148)
* Use keytar for the seshat passphrase.
[\#147](https://github.com/vector-im/element-desktop/pull/147)
* Upgrade to Electron 10.1.3
[\#146](https://github.com/vector-im/element-desktop/pull/146)
Changes in [1.7.10](https://github.com/vector-im/element-desktop/releases/tag/v1.7.10) (2020-10-20)
===================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.9...v1.7.10)
* No changes since 1.7.9
Changes in [1.7.9](https://github.com/vector-im/element-desktop/releases/tag/v1.7.9) (2020-10-12)
=================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.9-rc.1...v1.7.9)
* No changes since rc.1
Changes in [1.7.9-rc.1](https://github.com/vector-im/element-desktop/releases/tag/v1.7.9-rc.1) (2020-10-07)
===========================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.8...v1.7.9-rc.1)
* package.json: Bump the seshat version.
[\#145](https://github.com/vector-im/element-desktop/pull/145)
* Explicitly depend on `request` as webcontents-handler requires it
[\#144](https://github.com/vector-im/element-desktop/pull/144)
* Upgrade png-to-ico
[\#143](https://github.com/vector-im/element-desktop/pull/143)
* Point 'new issue' link at issue-type choice page
[\#142](https://github.com/vector-im/element-desktop/pull/142)
Changes in [1.7.8](https://github.com/vector-im/element-desktop/releases/tag/v1.7.8) (2020-09-28)
=================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.8-rc.1...v1.7.8)
* No changes since rc.1
Changes in [1.7.8-rc.1](https://github.com/vector-im/element-desktop/releases/tag/v1.7.8-rc.1) (2020-09-23)
===========================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.7...v1.7.8-rc.1)
* Fix neon error by upgrading Seshat
[\#141](https://github.com/vector-im/element-desktop/pull/141)
* Upgrade to Electron 10.1.1
[\#140](https://github.com/vector-im/element-desktop/pull/140)
Changes in [1.7.7](https://github.com/vector-im/element-desktop/releases/tag/v1.7.7) (2020-09-14)
=================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.6...v1.7.7)
* No changes since 1.7.6
Changes in [1.7.6](https://github.com/vector-im/element-desktop/releases/tag/v1.7.6) (2020-09-14)
=================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.6-rc.1...v1.7.6)
* No changes since rc.1
Changes in [1.7.6-rc.1](https://github.com/vector-im/element-desktop/releases/tag/v1.7.6-rc.1) (2020-09-09)
===========================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.5...v1.7.6-rc.1)
* Update to Element pipeline name
[\#139](https://github.com/vector-im/element-desktop/pull/139)
* Bump bl from 4.0.2 to 4.0.3
[\#137](https://github.com/vector-im/element-desktop/pull/137)
Changes in [1.7.5](https://github.com/vector-im/element-desktop/releases/tag/v1.7.5) (2020-09-01)
=================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.5-rc.1...v1.7.5)
* No changes since 1.7.5-rc.1
Changes in [1.7.5-rc.1](https://github.com/vector-im/element-desktop/releases/tag/v1.7.5-rc.1) (2020-08-26)
===========================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.4...v1.7.5-rc.1)
* Settings v3: Update configs for new feature flag behaviour
[\#135](https://github.com/vector-im/element-desktop/pull/135)
* Add reaction preview labs flags to nightly
[\#134](https://github.com/vector-im/element-desktop/pull/134)
Changes in [1.7.4](https://github.com/vector-im/element-desktop/releases/tag/v1.7.4) (2020-08-17)
=================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.4-rc.1...v1.7.4)
* No changes since 1.7.4-rc.1
Changes in [1.7.4-rc.1](https://github.com/vector-im/element-desktop/releases/tag/v1.7.4-rc.1) (2020-08-13)
===========================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.3...v1.7.4-rc.1)
* Update policy links to element.io
[\#132](https://github.com/vector-im/element-desktop/pull/132)
* Update bug report submission URL
[\#131](https://github.com/vector-im/element-desktop/pull/131)
* Update code signing cert for Windows
[\#130](https://github.com/vector-im/element-desktop/pull/130)
* Replace Riot with Element in docs and comments
[\#129](https://github.com/vector-im/element-desktop/pull/129)
* Fix order of README steps
[\#128](https://github.com/vector-im/element-desktop/pull/128)
* Upgrade to Electron 9.1.2
[\#127](https://github.com/vector-im/element-desktop/pull/127)
Changes in [1.7.3](https://github.com/vector-im/element-desktop/releases/tag/v1.7.3) (2020-08-05)
=================================================================================================
[Full Changelog](https://github.com/vector-im/element-desktop/compare/v1.7.3-rc.1...v1.7.3)
* No changes since 1.7.3-rc.1
Changes in [1.7.3-rc.1](https://github.com/vector-im/riot-desktop/releases/tag/v1.7.3-rc.1) (2020-07-31)
========================================================================================================
[Full Changelog](https://github.com/vector-im/riot-desktop/compare/v1.7.2...v1.7.3-rc.1)
* Clean up linting
[\#126](https://github.com/vector-im/riot-desktop/pull/126)
* Update renaming workaround for 'Element' name
[\#125](https://github.com/vector-im/riot-desktop/pull/125)
Changes in [1.7.2](https://github.com/vector-im/riot-desktop/releases/tag/v1.7.2) (2020-07-27)
==============================================================================================
[Full Changelog](https://github.com/vector-im/riot-desktop/compare/v1.7.1...v1.7.2)
* Catch exceptions from main method in fetch script
[\#124](https://github.com/vector-im/riot-desktop/pull/124)
* Use new eslint package
[\#122](https://github.com/vector-im/riot-desktop/pull/122)
* Remove ' (Riot)' from app name
[\#123](https://github.com/vector-im/riot-desktop/pull/123)
Changes in [1.7.1](https://github.com/vector-im/riot-desktop/releases/tag/v1.7.1) (2020-07-16)
==============================================================================================
[Full Changelog](https://github.com/vector-im/riot-desktop/compare/v1.7.0...v1.7.1)
* Bump lodash from 4.17.15 to 4.17.19
[\#121](https://github.com/vector-im/riot-desktop/pull/121)
* Don't forget nightly when computing userData path
[\#120](https://github.com/vector-im/riot-desktop/pull/120)
* Fix hosting link
[\#119](https://github.com/vector-im/riot-desktop/pull/119)
* New macOS icon
[\#117](https://github.com/vector-im/riot-desktop/pull/117)
* Update README.md
[\#118](https://github.com/vector-im/riot-desktop/pull/118)
* More icon updates
[\#115](https://github.com/vector-im/riot-desktop/pull/115)
* Don't forget to yarn install
[\#114](https://github.com/vector-im/riot-desktop/pull/114)
Changes in [1.7.0](https://github.com/vector-im/riot-desktop/releases/tag/v1.7.0) (2020-07-15)
==============================================================================================
[Full Changelog](https://github.com/vector-im/riot-desktop/compare/v1.6.8...v1.7.0)

View File

@@ -3,13 +3,21 @@ Element Desktop
Element Desktop is a Matrix client for desktop platforms with Element Web at its core.
First Steps
===========
Before you do anything else, fetch the dependencies:
```
yarn install
```
Fetching Element
================
Since this package is just the Electron wrapper for Element Web, it doesn't contain any of the Element Web code,
so the first step is to get a working copy of Element Web. There are a few ways of doing this:
```
# Fetch the prebuilt release Element package from the riot.im GitHub releases page. The version
# Fetch the prebuilt release Element package from the element-web GitHub releases page. The version
# fetched will be the same as the local element-desktop package.
# We're explicitly asking for no config, so the packaged Element will have no config.json.
yarn run fetch --noverify --cfgdir ''
@@ -27,7 +35,7 @@ yarn run fetch --cfgdir ''
...or either of the above, but fetching a specific version of Element:
```
# Fetch the prebuilt release Element package from the riot.im GitHub releases page. The version
# Fetch the prebuilt release Element package from the element-web GitHub releases page. The version
# fetched will be the same as the local element-desktop package.
yarn run fetch --noverify --cfgdir '' v1.5.6
```
@@ -35,8 +43,8 @@ yarn run fetch --noverify --cfgdir '' v1.5.6
If you only want to run the app locally and don't need to build packages, you can
provide the `webapp` directory directly:
```
# Assuming you've checked out and built a copy of riot-web in ../riot-web
ln -s ../riot-web/webapp ./
# Assuming you've checked out and built a copy of element-web in ../element-web
ln -s ../element-web/webapp ./
```
[TODO: add support for fetching develop builds, arbitrary URLs and arbitrary paths]
@@ -47,6 +55,20 @@ Building
Now you have a copy of Element, you're ready to build packages. If you'd just like to
run Element locally, skip to the next section.
If you'd like to build the native modules (for searching in encrypted rooms and
secure storage), do this first. This will take 10 minutes or so, and will
require a number of native tools to be installed, depending on your OS (eg.
rust, tcl, make/nmake). If you don't need these features, you can skip this
step.
```
yarn run build:native
```
On Windows, this will automatically determine the architecture to build for based
on the environment (ie. set up by vcvarsall.bat).
Now you can build the package:
```
yarn run build
```
@@ -67,16 +89,6 @@ yarn run build64
This build step will not build any native modules.
If you'd like to build the native modules (for searching in encrypted rooms):
This will take 10 minutes or so, and will require a number of native tools
to be installed, depending on your OS (eg. rust, tcl, make/nmake).
```
yarn run build:native
```
On Windows, this will automatically determine the architecture to build for based
on the environment (ie. set up by vcvarsall.bat).
You can also build using docker, which will always produce the linux package:
```
# Run this once to make the docker image
@@ -110,7 +122,7 @@ mkdir myconfig
cp /path/to/my/config.json myconfig/
yarn run fetch --cfgdir myconfig
```
The config dir for the official Element.im app is in `riot.im`. If you use this,
The config dir for the official Element app is in `element.io`. If you use this,
your app will auto-update itself using builds from element.io.
Profiles
@@ -135,3 +147,10 @@ In the paths above, `$NAME` is typically `Element`, unless you use `--profile
$PROFILE` in which case it becomes `Element-$PROFILE`, or it is using one of
the above created by a pre-1.7 install, in which case it will be `Riot` or
`Riot-$PROFILE`.
Report bugs & give feedback
==========================
If you run into any bugs or have feedback you'd like to share, please let us know on GitHub.
To help avoid duplicate issues, please [view existing issues](https://github.com/vector-im/element-web/issues?q=is%3Aopen+is%3Aissue+sort%3Areactions-%2B1-desc) first (and add a +1) or [create a new issue](https://github.com/vector-im/element-web/issues/new/choose) if you can't find it. Please note that this issue tracker is associated with the [element-web](https://github.com/vector-im/element-web) repo, but is also applied to the code in this repo as well.

View File

Binary file not shown.

View File

@@ -4,7 +4,7 @@
#include <tchar.h>
/*
* This just runs 'Element (Riot).exe' with the same args as
* This just runs 'Element.exe' with the same args as
* this process was invoked with. This gets around the fact that
* squirrel always tries to run an executable with the same name,
* so fails to restart if the app's name has changed.
@@ -15,7 +15,7 @@ void _tmain( int argc, TCHAR *argv[] )
char cmdLine[32767];
LPSTR cmdLinePos = cmdLine;
LPSTR toRun = "\"Element (Riot).exe\" ";
LPSTR toRun = "\"Element.exe\" ";
strncpy(cmdLinePos, toRun, strlen(toRun));
cmdLinePos += strlen(toRun);

View File

Binary file not shown.

View File

@@ -1,34 +1,34 @@
-----BEGIN CERTIFICATE-----
MIIF0jCCBLqgAwIBAgIRAISYBqZi3VvCUeSfHXF+cbwwDQYJKoZIhvcNAQELBQAw
MIIF8DCCBNigAwIBAgIRAIZSd8hNVs3w8AhJIsQSoYYwDQYJKoZIhvcNAQELBQAw
gZExCzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO
BgNVBAcTB1NhbGZvcmQxGjAYBgNVBAoTEUNPTU9ETyBDQSBMaW1pdGVkMTcwNQYD
VQQDEy5DT01PRE8gUlNBIEV4dGVuZGVkIFZhbGlkYXRpb24gQ29kZSBTaWduaW5n
IENBMB4XDTE3MDgyMzAwMDAwMFoXDTIwMDgyMjIzNTk1OVowgdgxETAPBgNVBAUT
IENBMB4XDTIwMDczMDAwMDAwMFoXDTIzMDczMDIzNTk1OVowgfMxETAPBgNVBAUT
CDEwODczNjYxMRMwEQYLKwYBBAGCNzwCAQMTAkdCMR0wGwYDVQQPExRQcml2YXRl
IE9yZ2FuaXphdGlvbjELMAkGA1UEBhMCR0IxETAPBgNVBBEMCFdDMVIgNEFHMQ8w
DQYDVQQIDAZMb25kb24xDzANBgNVBAcMBkxvbmRvbjEbMBkGA1UECQwSMjYgUmVk
IExpb24gU3F1YXJlMRcwFQYDVQQKDA5OZXcgVmVjdG9yIEx0ZDEXMBUGA1UEAwwO
TmV3IFZlY3RvciBMdGQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7
X0HP3oM/SVr6PboD03ndtYTONZDcJ/GJ3EyYi6UNrcbKjuDHwPktx9hjAhNjcVkG
lmuTEPluPj9DbvjaTrers0cQsAS1vJ0RHjLfA93Flg1ys9Q6OThUMw77FtFPtiJU
z5cSYzfFAhn/4dv7BcgGptn+Mv/8CaTu+RUZJUgoSlRWcT1TREmxkzWotbblqsHO
zjDmUg20tL5/qpt6BSWsNespf5udKQFXMtqkczBcLvBLmql0vurVcQy8BibB+Q89
QKwRzwLgaIa7O8WEssFcW8uJe9s0SNtUy8ehbuoSxpA/DbHFwsiDbNA78vp7HrqM
qY6t6OIgLtDYBFCfe/btAgMBAAGjggHaMIIB1jAfBgNVHSMEGDAWgBTfj/MgDOnK
pgTYW1g3Kj2rRtyDSTAdBgNVHQ4EFgQUH+mDOdRkF3bYDxCWEaGB4lxiCxcwDgYD
VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwEwYDVR0lBAwwCgYIKwYBBQUHAwMw
EQYJYIZIAYb4QgEBBAQDAgQQMEYGA1UdIAQ/MD0wOwYMKwYBBAGyMQECAQYBMCsw
KQYIKwYBBQUHAgEWHWh0dHBzOi8vc2VjdXJlLmNvbW9kby5jb20vQ1BTMFUGA1Ud
HwROMEwwSqBIoEaGRGh0dHA6Ly9jcmwuY29tb2RvY2EuY29tL0NPTU9ET1JTQUV4
dGVuZGVkVmFsaWRhdGlvbkNvZGVTaWduaW5nQ0EuY3JsMIGGBggrBgEFBQcBAQR6
MHgwUAYIKwYBBQUHMAKGRGh0dHA6Ly9jcnQuY29tb2RvY2EuY29tL0NPTU9ET1JT
QUV4dGVuZGVkVmFsaWRhdGlvbkNvZGVTaWduaW5nQ0EuY3J0MCQGCCsGAQUFBzAB
hhhodHRwOi8vb2NzcC5jb21vZG9jYS5jb20wJgYDVR0RBB8wHaAbBggrBgEFBQcI
A6APMA0MC0dCLTEwODczNjYxMA0GCSqGSIb3DQEBCwUAA4IBAQBJ2aH4aixh0aiz
4WKlK+LMVLHpQ2POE3FZYNpAW7o1q2YDGEADXdGrygPE9NCGNBXKo0CAemCYNWfX
Ov/jdoiMfeqW3vrZ66oEy8OqbvJSwK1xmomWuYw3wYPWcPVG+YbWYD2CGdQu8jTz
fzAJCpvAuY3Wji3fQjiecAC7JCSB4fBHa0ALJOmiSqKQUUpkXs5kW7O0lPBnHzNF
2tQGltXMSIrq1QfFtcreMyKlwDOxPIh360dv5aHhaeSRDRKxq7uq5ikQF2gjKx4k
ieg2HRbAW6fVPpFr4zRS5umpeZV3i06i11VQQPS/mA/OBEXyaqzx4mr6B7U6ptrp
jMqiUv2w
IE9yZ2FuaXphdGlvbjELMAkGA1UEBhMCR0IxDzANBgNVBBEMBlc0IDFRVTEYMBYG
A1UECAwPTG9uZG9uLCBDaXR5IG9mMQ8wDQYDVQQHDAZMb25kb24xJzAlBgNVBAkM
HjE0IFR1cm5oYW0gR3JlZW4sIFRlcnJhY2UgTWV3czEbMBkGA1UECgwSTmV3IFZl
Y3RvciBMaW1pdGVkMRswGQYDVQQDDBJOZXcgVmVjdG9yIExpbWl0ZWQwggEiMA0G
CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDKDnGul2M7oCCN+3veGf7yfakSfMjK
Kqeylyo0Nj8dUleNQvsRo0OHxIWJlbHDYglxebT109MqgyASr0SoeiqvXOSSFACD
MYFoyerRGMnXEuomTU0y7+FE3p/hcim8+C5gS+rHr3YaJJuzzXRztjjCBGoY4was
h9V8kYiyMMK0xi2WftOCBa1yYS32CInHIZVmdhzoK4k4YzSYIp57BWvnIUlDyCYk
slNfp0SFbDrOGa7kbmy8HRfWPLjNmW5PPIrsf8LlnVRBfmTeUIJtV31w/FuMjeir
pzYjzooXmpIrj96ecxdc9thP6etCUazvpowjfewu7UNWRUhGPtYn8v8rAgMBAAGj
ggHdMIIB2TAfBgNVHSMEGDAWgBTfj/MgDOnKpgTYW1g3Kj2rRtyDSTAdBgNVHQ4E
FgQUB9su4pCQXE5ZWFhB1eo48992LEcwDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB
/wQCMAAwEwYDVR0lBAwwCgYIKwYBBQUHAwMwEQYJYIZIAYb4QgEBBAQDAgQQMEkG
A1UdIARCMEAwNQYMKwYBBAGyMQECAQYBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8v
c2VjdGlnby5jb20vQ1BTMAcGBWeBDAEDMFUGA1UdHwROMEwwSqBIoEaGRGh0dHA6
Ly9jcmwuY29tb2RvY2EuY29tL0NPTU9ET1JTQUV4dGVuZGVkVmFsaWRhdGlvbkNv
ZGVTaWduaW5nQ0EuY3JsMIGGBggrBgEFBQcBAQR6MHgwUAYIKwYBBQUHMAKGRGh0
dHA6Ly9jcnQuY29tb2RvY2EuY29tL0NPTU9ET1JTQUV4dGVuZGVkVmFsaWRhdGlv
bkNvZGVTaWduaW5nQ0EuY3J0MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5jb21v
ZG9jYS5jb20wJgYDVR0RBB8wHaAbBggrBgEFBQcIA6APMA0MC0dCLTEwODczNjYx
MA0GCSqGSIb3DQEBCwUAA4IBAQBZ8/YtqW/+VUoV8knKpdhMR2uTn8AEyVmfmoZA
Ly5kdCRoKvFm/z4VK4cqF7gsUDxRIgDuMKKbWTtr1FEXuaZkUkOjicNcdYxc0pDn
nFKBWAv5pN5OmnC9cVqIG7PtvD+8bKVzDdQRjpGMy6PY4rN2PYGfQ7KGgddEDD6m
oM51jI/OTvCeU0Tyl0bixKEmpUJvbeQM9Ul2Y1o5Enx1Q9uda8xATb0HCMKgJ+GC
iFHL2DNC3j1xK4QoZEIYgbTscj9rK4OMEov3PT/e1FwQyB5V9xdJ5i1MDBDD9fAf
OiVgf90SffT7TgWUbA4Z+PtQHq/qNma0+dZWyeq7zYn2IIX3
-----END CERTIFICATE-----

View File

@@ -11,25 +11,13 @@
"https://scalar-staging.vector.im/api",
"https://scalar-staging.riot.im/scalar/api"
],
"hosting_signup_link": "https://modular.im/services/matrix-hosting-riot?utm_source=riot-web&utm_medium=web",
"bug_report_endpoint_url": "https://riot.im/bugreports/submit",
"features": {
"feature_new_spinner": "labs",
"feature_pinning": "labs",
"feature_custom_status": "labs",
"feature_custom_tags": "labs",
"feature_state_counters": "labs",
"feature_many_integration_managers": "labs",
"feature_mjolnir": "labs",
"feature_dm_verification": "labs",
"feature_bridge_state": "labs",
"feature_presence_in_room_list": "labs",
"feature_custom_themes": "labs"
},
"hosting_signup_link": "https://element.io/matrix-services?utm_source=element-web&utm_medium=web",
"bug_report_endpoint_url": "https://element.io/bugreports/submit",
"showLabsSettings": true,
"piwik": {
"url": "https://piwik.riot.im/",
"siteId": 1,
"policyUrl": "https://matrix.org/legal/riot-im-cookie-policy"
"policyUrl": "https://element.io/cookie-policy"
},
"roomDirectory": {
"servers": [
@@ -42,11 +30,11 @@
},
"terms_and_conditions_links": [
{
"url": "https://riot.im/privacy",
"url": "https://element.io/privacy",
"text": "Privacy Policy"
},
{
"url": "https://matrix.org/legal/riot-im-cookie-policy",
"url": "https://element.io/cookie-policy",
"text": "Cookie Policy"
}
]

View File

@@ -11,17 +11,18 @@
"https://scalar-staging.vector.im/api",
"https://scalar-staging.riot.im/scalar/api"
],
"hosting_signup_link": "https://modular.im/services/matrix-hosting-riot?utm_source=riot-web&utm_medium=web",
"bug_report_endpoint_url": "https://riot.im/bugreports/submit",
"hosting_signup_link": "https://element.io/matrix-services?utm_source=element-web&utm_medium=web",
"bug_report_endpoint_url": "https://element.io/bugreports/submit",
"roomDirectory": {
"servers": [
"matrix.org"
]
},
"showLabsSettings": false,
"piwik": {
"url": "https://piwik.riot.im/",
"siteId": 1,
"policyUrl": "https://matrix.org/legal/riot-im-cookie-policy"
"policyUrl": "https://element.io/cookie-policy"
},
"enable_presence_by_hs_url": {
"https://matrix.org": false,
@@ -29,11 +30,11 @@
},
"terms_and_conditions_links": [
{
"url": "https://riot.im/privacy",
"url": "https://element.io/privacy",
"text": "Privacy Policy"
},
{
"url": "https://matrix.org/legal/riot-im-cookie-policy",
"url": "https://element.io/cookie-policy",
"text": "Cookie Policy"
}
]

View File

@@ -1,8 +1,8 @@
{
"name": "element-desktop",
"productName": "Element (Riot)",
"productName": "Element",
"main": "src/electron-main.js",
"version": "1.7.0",
"version": "1.7.11",
"description": "A feature-rich client for Matrix.org",
"author": "Element",
"repository": {
@@ -34,7 +34,8 @@
"electron-store": "^2.0.0",
"electron-window-state": "^4.1.0",
"minimist": "^1.2.3",
"png-to-ico": "^1.0.2"
"png-to-ico": "^2.1.0",
"request": "^2.88.2"
},
"devDependencies": {
"asar": "^2.0.1",
@@ -42,13 +43,11 @@
"electron-builder-squirrel-windows": "^22.7.0",
"electron-devtools-installer": "^2.2.4",
"electron-notarize": "^0.2.0",
"eslint": "^5.8.0",
"eslint-config-google": "^0.7.1",
"eslint-plugin-babel": "^4.1.2",
"eslint": "7.3.1",
"eslint-config-matrix-org": "^0.1.2",
"find-npm-prefix": "^1.0.2",
"fs-extra": "^8.1.0",
"glob": "^7.1.6",
"matrix-js-sdk": "7.1.0",
"mkdirp": "^1.0.3",
"needle": "^2.5.0",
"node-pre-gyp": "^0.15.0",
@@ -58,12 +57,12 @@
"tar": "^6.0.1"
},
"hakDependencies": {
"matrix-seshat": "^2.1.0",
"matrix-seshat": "^2.2.1",
"keytar": "^5.6.0"
},
"build": {
"appId": "im.riot.app",
"electronVersion": "9.0.5",
"electronVersion": "10.1.3",
"files": [
"package.json",
{

View File

@@ -9,52 +9,4 @@ set -e
cd `dirname $0`
for i in matrix-js-sdk
do
echo "Checking version of $i..."
depver=`cat package.json | jq -r .devDependencies[\"$i\"]`
latestver=`yarn info -s $i dist-tags.next`
if [ "$depver" != "$latestver" ]
then
echo "The latest version of $i is $latestver but package.json depends on $depver."
echo -n "Type 'u' to auto-upgrade, 'c' to continue anyway, or 'a' to abort:"
read resp
if [ "$resp" != "u" ] && [ "$resp" != "c" ]
then
echo "Aborting."
exit 1
fi
if [ "$resp" == "u" ]
then
echo "Upgrading $i to $latestver..."
yarn add -ED $i@$latestver
git add -u
# The `-e` flag opens the editor and gives you a chance to check
# the upgrade for correctness.
git commit -m "Upgrade $i to $latestver" -e
fi
fi
done
./node_modules/matrix-js-sdk/release.sh -n -z "$@"
release="${1#v}"
prerelease=0
# We check if this build is a prerelease by looking to
# see if the version has a hyphen in it. Crude,
# but semver doesn't support postreleases so anything
# with a hyphen is a prerelease.
echo $release | grep -q '-' && prerelease=1
if [ $prerelease -eq 0 ]
then
# For a release, reset SDK deps back to the `develop` branch.
for i in matrix-js-sdk
do
echo "Resetting $i to develop branch..."
yarn add -D github:matrix-org/$i#develop
git add -u
git commit -m "Reset $i back to develop branch"
done
git push origin develop
fi

BIN
res/img/element.ico Normal file
View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

BIN
res/img/element.png Normal file
View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

View File

@@ -2,12 +2,4 @@
set -ex
scripts/fetchdep.sh matrix-org matrix-js-sdk
pushd matrix-js-sdk
yarn link
yarn install $@
popd
yarn link matrix-js-sdk
yarn install $@

View File

@@ -12,14 +12,14 @@ const needle = require('needle');
const riotDesktopPackageJson = require('../package.json');
const PUB_KEY_URL = "https://packages.riot.im/riot-release-key.asc";
const PACKAGE_URL_PREFIX = "https://github.com/vector-im/riot-web/releases/download/";
const PACKAGE_URL_PREFIX = "https://github.com/vector-im/element-web/releases/download/";
const ASAR_PATH = 'webapp.asar';
const {setPackageVersion, setDebVersion} = require('./set-version.js');
async function getLatestDevelopUrl(bkToken) {
const buildsResult = await needle('get',
"https://api.buildkite.com/v2/organizations/matrix-dot-org/pipelines/riot-web/builds",
"https://api.buildkite.com/v2/organizations/matrix-dot-org/pipelines/element-web/builds",
{
branch: 'develop',
state: 'passed',
@@ -289,4 +289,4 @@ async function main() {
console.log("Done!");
}
main().then((ret) => process.exit(ret));
main().then((ret) => process.exit(ret)).catch(e => process.exit(1));

View File

@@ -61,7 +61,7 @@ let Seshat;
let SeshatRecovery;
let ReindexError;
const seshatPassphrase = "DEFAULT_PASSPHRASE";
const seshatDefaultPassphrase = "DEFAULT_PASSPHRASE";
try {
const seshatModule = require('matrix-seshat');
@@ -115,14 +115,16 @@ if (userDataPathInProtocol) {
} else if (argv['profile-dir']) {
userDataPath = argv['profile-dir'];
} else {
// always override the user data path because electron uses the ${appData}/productName
// but we want our productName to be "Element (Riot)" for a transition period after the rename.
let newUserDataPath = path.join(app.getPath('appData'), 'Element');
let newUserDataPath = app.getPath('userData');
if (argv['profile']) {
newUserDataPath += '-' + argv['profile'];
}
const newUserDataPathExists = isRealUserDataDir(newUserDataPath);
const oldUserDataPath = path.join(app.getPath('appData'), 'Riot');
let oldUserDataPath = path.join(app.getPath('appData'), app.getName().replace('Element', 'Riot'));
if (argv['profile']) {
oldUserDataPath += '-' + argv['profile'];
}
const oldUserDataPathExists = isRealUserDataDir(oldUserDataPath);
console.log(newUserDataPath + " exists: " + (newUserDataPathExists ? 'yes' : 'no'));
console.log(oldUserDataPath + " exists: " + (oldUserDataPathExists ? 'yes' : 'no'));
@@ -208,7 +210,7 @@ async function setupGlobals() {
// The tray icon
// It's important to call `path.join` so we don't end up with the packaged asar in the final path.
const iconFile = `riot.${process.platform === 'win32' ? 'ico' : 'png'}`;
const iconFile = `element.${process.platform === 'win32' ? 'ico' : 'png'}`;
iconPath = path.join(resPath, "img", iconFile);
trayConfig = {
icon_path: iconPath,
@@ -260,6 +262,18 @@ const deleteContents = async (p) => {
}
};
async function randomArray(size) {
return new Promise((resolve, reject) => {
crypto.randomBytes(size, (err, buf) => {
if (err) {
reject(err);
} else {
resolve(buf.toString("base64").replace(/=+$/g, ''));
}
});
});
}
// handle uncaught errors otherwise it displays
// stack traces in popup dialogs, which is terrible (which
// it will do any time the auto update poke fails, and there's
@@ -437,16 +451,7 @@ ipcMain.on('ipcCall', async function(ev, payload) {
case 'createPickleKey':
try {
const randomArray = await new Promise((resolve, reject) => {
crypto.randomBytes(32, (err, buf) => {
if (err) {
reject(err);
} else {
resolve(buf);
}
});
});
const pickleKey = randomArray.toString("base64").replace(/=+$/g, '');
const pickleKey = await randomArray(32);
await keytar.setPassword("element.io", `${args[0]}|${args[1]}`, pickleKey);
ret = pickleKey;
} catch (e) {
@@ -501,18 +506,42 @@ ipcMain.on('seshat', async function(ev, payload) {
case 'initEventIndex':
if (eventIndex === null) {
try {
await afs.mkdir(eventStorePath, {recursive: true});
eventIndex = new Seshat(eventStorePath, {passphrase: seshatPassphrase});
} catch (e) {
if (e instanceof ReindexError) {
// If this is a reindex error, the index schema
// changed. Try to open the database in recovery mode,
// reindex the database and finally try to open the
// database again.
try {
const userId = args[0];
const deviceId = args[1];
const passphraseKey = `seshat|${userId}|${deviceId}`;
let changePassphrase = false;
let passphrase = seshatDefaultPassphrase;
if (keytar) {
try {
// Try to get a passphrase for seshat.
const storedPassphrase = await keytar.getPassword("element.io", passphraseKey);
// If no passphrase was found mark that we should change
// it, if one is found, use that one.
if (storedPassphrase === null) {
changePassphrase = true;
} else {
passphrase = storedPassphrase;
}
} catch (e) {
console.log("Error getting the event index passphrase out of the secret store", e);
}
}
const openSeshat = async () => {
try {
await afs.mkdir(eventStorePath, {recursive: true});
return new Seshat(eventStorePath, {passphrase});
} catch (e) {
if (e instanceof ReindexError) {
// If this is a reindex error, the index schema
// changed. Try to open the database in recovery mode,
// reindex the database and finally try to open the
// database again.
const recoveryIndex = new SeshatRecovery(eventStorePath, {
passphrase: seshatPassphrase,
passphrase,
});
const userVersion = await recoveryIndex.getUserVersion();
@@ -530,14 +559,33 @@ ipcMain.on('seshat', async function(ev, payload) {
await recoveryIndex.reindex();
}
eventIndex = new Seshat(eventStorePath, {
passphrase: seshatPassphrase,
});
} catch (e) {
sendError(payload.id, e);
return;
return new Seshat(eventStorePath, {passphrase});
} else {
throw (e);
}
} else {
}
};
try {
eventIndex = await openSeshat();
} catch (e) {
sendError(payload.id, e);
return;
}
if (changePassphrase) {
try {
// Generate a new random passphrase.
const newPassphrase = await randomArray(32);
await keytar.setPassword("element.io", passphraseKey, newPassphrase);
// Set the new passphrase, this will close the event
// index.
await eventIndex.changePassphrase(newPassphrase);
// Re-open the event index with the new passphrase.
eventIndex = new Seshat(eventStorePath, {newPassphrase});
} catch (e) {
sendError(payload.id, e);
return;
}

View File

@@ -51,6 +51,19 @@ function checkSquirrelHooks() {
appDataDir, 'Microsoft', 'Windows', 'Start Menu', 'Programs', 'New Vector Ltd',
);
return fsProm.rmdir(startMenuDir, { recursive: true });
}).then(() => {
// same for 'Element (Riot) which is old now too (we have to try to delete both because
// we don't know what version we're updating from, but of course we do know this version
// is 'Element' so the two old ones are all safe to delete).
const appDataDir = process.env.APPDATA;
if (!appDataDir) return;
const oldStartMenuLink = path.join(
appDataDir, 'Microsoft', 'Windows', 'Start Menu', 'Programs', 'Element', 'Element (Riot).lnk',
);
return fsProm.unlink(oldStartMenuLink).catch(() => {});
}).then(() => {
const oldDesktopShortcut = path.join(app.getPath('desktop'), 'Element (Riot).lnk');
return fsProm.unlink(oldDesktopShortcut).catch(() => {});
}).then(() => {
const oldDesktopShortcut = path.join(app.getPath('desktop'), 'Riot.lnk');
return fsProm.unlink(oldDesktopShortcut).catch(() => {});

1710
yarn.lock
View File

File diff suppressed because it is too large Load Diff