Commit graph

124 commits

Author SHA1 Message Date
Michael Telatynski
8e2a7cc3f6 Convert crypto index to TS 2021-06-19 19:41:45 +01:00
Michael Telatynski
b4fbc791bb Add experimental options to the Spaces beta 2021-06-16 09:01:13 +01:00
Germain Souquet
84679cf8ec remove legacy polyfills and unused dependencies 2021-06-11 12:19:14 +01:00
Travis Ralston
5b2dacd99e Adapt for js-sdk MatrixClient conversion to TS
For https://github.com/matrix-org/matrix-js-sdk/pull/1718
2021-06-01 21:36:28 -06:00
Michael Telatynski
ea9be0dd4c
Merge pull request #6012 from matrix-org/t3chguy/fix/17238
Add feedback mechanism for beta features, namely Spaces
2021-05-11 17:46:21 +01:00
Michael Telatynski
7396ce76e5 Tweak the feedbacks a tad 2021-05-11 17:30:33 +01:00
Michael Telatynski
bf4c8f048f Add feedback mechanism for beta features 2021-05-11 15:58:19 +01:00
Travis Ralston
b61fe2f8e6 Improve error recovery when starting a recording
This helps return the microphone access to the user.
2021-05-06 21:43:17 -06:00
Travis Ralston
c285b79a8d Add possibility to delay rageshake persistence in app startup
Even if the app takes a moment to set up persistence, this will still capture any logs before persistence happened.
2021-03-16 14:19:49 -06:00
J. Ryan Stinnett
84b1f2e6c6 Resolve typing errors after TypeScript upgrade 2021-01-27 12:42:37 +00:00
David Baker
7ec1d5a881 Fix a bunch of silly lint errors
At some point the script to generate .eslintignore.errorfiles had
been run and added all these files to the ignore list, often because
they lacked a space before a brace or something equally mundane.

These are the easiest bunch.
2020-10-30 18:18:17 +00:00
J. Ryan Stinnett
0d25f62a9a Tweak diagnostics for session backup key 2020-09-16 15:03:06 +01:00
J. Ryan Stinnett
18d25acf4f Organise cross-signing / secret storage rageshake details
This changes to a common prefix for cross-signing and secret storage details so
they appear all together in the alpha-sorted report.
2020-09-03 13:43:14 +01:00
J. Ryan Stinnett
a732c55797 Add secret storage readiness checks
This visits all places that were checking for cross-siging readiness and adapts
them to also check for secret storage readiness if needed.

Part of https://github.com/vector-im/element-web/issues/13895
2020-08-25 13:20:15 +01:00
David Baker
095824adbc
Merge pull request #5136 from matrix-org/dbkr/send_settings_in_rageshake
Send mx_local_settings in rageshake
2020-08-21 10:43:49 +01:00
David Baker
6a03c0a3c0 Send mx_local_settings in rageshake
Perhaps ideally we should get a complete dump of the settings in
effect out of the settings manager, but all I want for now is the
webrtc audio inputs and outputs, so let's send the ones stored locally.
2020-08-21 10:32:51 +01:00
Travis Ralston
c9d98a1d19
Merge pull request #5124 from matrix-org/travis/settings-v3
Settings v3: Feature flag changes
2020-08-19 12:00:48 -06:00
Michael Telatynski
d55cb4266a Update copy 2020-08-18 17:38:10 +01:00
Travis Ralston
3659115921 Followup on some SettingsStore removals 2020-08-17 13:37:16 -06:00
Travis Ralston
96087d61f6 Convert feature setting usages to regular settings 2020-08-17 13:12:18 -06:00
Michael Telatynski
df980dbf92 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into travis/download-logs 2020-08-12 22:48:03 +01:00
J. Ryan Stinnett
d076d6351f
Merge pull request #5093 from matrix-org/jryans/rebrand-rageshakes
Update rageshake app name
2020-08-10 11:11:37 +01:00
J. Ryan Stinnett
f03ed868bd Update rageshake app name
Fixes https://github.com/vector-im/element-web/issues/14892
2020-08-06 17:54:54 +01:00
J. Ryan Stinnett
810f07a846 Report master key cache status in rageshakes 2020-08-06 15:26:47 +01:00
Michael Telatynski
70b5e5b470 skip gzipping for downloading 2020-08-03 13:42:01 +01:00
Michael Telatynski
cbcac9dd49 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into travis/download-logs
 Conflicts:
	package.json
2020-08-03 12:54:06 +01:00
Travis Ralston
9c8682428f Fix various TypeScript linting issues 2020-07-29 11:03:43 -06:00
Michael Telatynski
a0e7efd7d5 delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-21 22:50:39 +01:00
Michael Telatynski
fd869b20fa type coerce
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-21 22:33:01 +01:00
Michael Telatynski
c4fc70b9be Post-merge fix
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-21 22:28:36 +01:00
Michael Telatynski
70c81cc377 Merge branches 'develop' and 'travis/download-logs' of github.com:matrix-org/matrix-react-sdk into travis/download-logs
 Conflicts:
	src/i18n/strings/en_EN.json
	src/rageshake/submit-rageshake.ts
2020-07-21 22:22:28 +01:00
Michael Telatynski
6fe5196a19 send state of lowBandwidth in rageshakes
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-06-08 11:43:50 +01:00
David Baker
4bf2e5fd8e Remove SSSS key upgrade check from rageshake
This code doesn't exist anymore as the SSSS symmetric upgrade stuff
has been removed.

Fixes https://github.com/vector-im/riot-web/issues/13715
2020-05-19 15:40:26 +01:00
Michael Telatynski
03ad8a606a
Merge branch 'develop' into t3chguy/rageshake_xsign_debug 2020-05-12 09:44:49 +01:00
David Baker
f487c2b38c Fix rageshake with no matrix client
We checked for the presence of a matrix client but then went and
called a method on it assuming it existed on the line below, so,
don't do that.

https://github.com/vector-im/riot-web/issues/13624 pointed this out
2020-05-11 16:21:08 +01:00
Michael Telatynski
3e934c8081 Send cross-signing debug booleans over rageshake
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-11 15:17:25 +01:00
Bruno Windels
d9639c5412 increare rage shake size limit to 5mb 2020-05-04 13:40:52 +02:00
Michael Telatynski
3bc5a0a0b2 Convert submit-rageshake to typescript
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-19 12:06:56 +01:00
Michael Telatynski
f91565c231 only append crypto details if crypto is enabled
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-10 13:33:57 +01:00
Michael Telatynski
0153f39c10 Rageshake, remind user of unsupported browser and report missing features in report
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-09 22:55:28 +01:00
Michael Telatynski
63853d9de1 Add download logs button to BugReportDialog
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-30 16:12:28 +01:00
Michael Telatynski
2a45ccaef3 Merge branches 'develop' and 'travis/download-logs' of github.com:matrix-org/matrix-react-sdk into travis/download-logs
 Conflicts:
	yarn.lock
2020-03-30 15:52:36 +01:00
Bruno Windels
9a5f4d9b22 fall back, don't do both on FF 2020-03-25 12:07:11 +01:00
Bruno Windels
f6e9c32c48 fall back to non-standard persisted api for Safari 2020-03-25 12:04:09 +01:00
Hubert Chathi
953af6f036
add device and cross-signing public keys to rageshake info (#4097) 2020-02-21 10:19:53 -05:00
Michael Telatynski
ffde11ca91 Use Persistent Storage where possible
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-20 00:38:08 +00:00
J. Ryan Stinnett
ca28f83841 Report touch input status in rageshakes, analytics
This reports whether the device has touch input as a primary input mechanism in
rageshakes and analytics.

For analytics, this replaces the identity server (which ends up being reported
as "<redacted>" by default anyway) because Matomo only supports a limited number
of custom variables.
2020-02-14 17:36:14 +00:00
J. Ryan Stinnett
ca4f591cb6 Report installed PWA status in rageshakes, analytics
This adds installed PWA status reporting to rageshakes and analytics, as well as
cleaning up some related strings.
2020-02-14 16:30:07 +00:00
Travis Ralston
01a7a6987e Add a rageshake function to download the logs locally
For https://github.com/vector-im/riot-web/issues/3304

This generates something similar to what the rageshake server does, just in an easy package for people to use. tar-js was chosen over zip or anything else because it's small, simple, and stable. 

Note: this doesn't work in Chrome, but firefox seems to be okay with it. Chrome appears to be blocking the  download for some reason - the very first download was fine, but none afterwards
2020-01-15 23:22:31 -07:00
Travis Ralston
fde32f13a5 [CONFLICT CHUNKS] Merge branch 'develop' into travis/sourcemaps-develop 2020-01-09 14:15:09 -07:00
Travis Ralston
59f608ffd6
Merge pull request #3761 from matrix-org/travis/babel7-wp-es6-export
Convert CommonJS exports to ES6 exports
2020-01-08 09:09:11 -07:00
Michael Telatynski
814c0aa4c2 Send enabled_labs over rageshake as comma delimited list
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-01-05 20:52:54 +00:00
Travis Ralston
042bd35d79 Fix MatrixClientPeg imports 2019-12-22 21:15:54 -07:00
Travis Ralston
344dac4fb9 Convert CommonJS exports to ES6-compatible exports
We use `export default` begrudgingly here. Ideally we'd use just `export`, though this entire SDK expects things to be exported as a default. Instead of breaking everything, we'll sacrifice our export pattern for a smaller diff - a later commit can always do the default export -> regular export conversion.
2019-12-22 21:01:02 -07:00
Michael Telatynski
d4d51dc61f Rip out the remainder of Bluebird 2019-11-18 10:03:05 +00:00
Michael Telatynski
47948812b0 Attempt number two at ripping out Bluebird from rageshake.js 2019-11-18 09:47:37 +00:00
Michael Telatynski
84f78ae726 Revert ripping bluebird out of rageshake.js for time being
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-14 16:05:09 +00:00
Michael Telatynski
54dcaf1302 Replace bluebird specific promise things. Fix uses of sync promise code.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-14 13:52:17 +00:00
Michael Telatynski
217dfc3eed Replace all trivial Promise.defer usages with regular Promises
(cherry picked from commit 44401d73b4)
2019-11-12 12:07:56 +00:00
Michael Telatynski
548e38cba9 Revert "Replace all trivial Promise.defer usages with regular Promises"
This reverts commit 44401d73
2019-11-12 11:56:53 +00:00
Michael Telatynski
44401d73b4 Replace all trivial Promise.defer usages with regular Promises 2019-11-12 11:40:38 +00:00
J. Ryan Stinnett
e905abe5ce Add label to rageshakes for React soft crashes
This adds a label all rageshakes submitted via the React error boundary marking
them as soft crashes for triage.

Fixes https://github.com/vector-im/riot-web/issues/11072
2019-10-09 11:59:10 +01:00
J. Ryan Stinnett
538c3795d8 Allow cyclic objects in console logs
This fixes a bug in rageshake handling that would throw an error if you log a
cyclic object, which can be convenient during development.
2019-10-08 14:29:03 +01:00
David Baker
a15c8fd476 Only limit the rageshake log size in one place
We had two different places in the code that were both trying to
limit to the MAX_LOG_SIZE and doing different things with it.
fetchLogs was keeping each individual file to MAX_LOG_SIZE but then
the outer loop was also discarding the whole file if it would make
the total exceed MAX_LOG_SIZE. This meant that if you ran your client
for a while then refreshed and sent a rageshake, the logic would
omit everything from before the refresh but make sure it included the
tiny amount of useless logging from after the refresh.

This will truncate large files if they would take the whole thing
over the size limit and still include part of them.
2019-10-04 14:56:46 +01:00
David Baker
796f5746db Truncate debug logs at the start, not the end
We left out later parts if we exceeded the maximum log size, which
was deeply unhelpful since the problem almost certainly happened
just before the user hit the 'submit debug logs' button.

Instead, iterate backwards through the fragments and prepend them,
leaving off the earlier ones if we run over the size.

Also, check we're not going to run over the size before adding
the fragment so we might actually stick to the maximum log size.

May fix https://github.com/vector-im/riot-web/issues/10951
2019-09-26 18:46:19 +01:00
Jason Robinson
f505aa0c83 Ensure logging tweak doesn't fail on undefined
Run the replace on the log line string instead of the separate
parts since we can ensure the line is a string.

Signed-off-by: Jason Robinson <jasonr@matrix.org>
2019-08-23 10:14:26 +03:00
Jason Robinson
8c73056693 Tweak rageshake logging messages
Signed-off-by: Jason Robinson <jasonr@matrix.org>
2019-08-21 16:06:32 +03:00
Travis Ralston
e1f26059a7 Convert objects and such to usable strings in rageshake
Fixes https://github.com/vector-im/riot-web/issues/7844
2019-03-01 09:58:54 -07:00
David Baker
259d3608ee Make rageshake use less memory
If an individual log is larger than the max size, ignore the rest
of it. Also build the string as we go rather than joining it all
together at the end, that way we only need the whole string + one
chunk in memory at once, rather than the whole string x 2.
2018-10-15 15:23:44 +01:00
Aaron Raimist
752d816780
Fix some more lint errors
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-11 22:06:01 -05:00
Aaron Raimist
c83521bb31
Fix lint errors in rageshake.js
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-11 21:58:22 -05:00
Bruno Windels
14b040e6a6 log correct error code when opening log idb 2018-10-08 15:14:03 +02:00
David Baker
3ea5fc9185 Fix rageshake
aka. Module Variables Are Not Global Variables pt. 319
2018-04-20 14:06:09 +01:00
Matthew Hodgson
efe466ef75 move rageshake to sdk 2018-04-13 01:34:16 +01:00