Merge branch 'release/3.5.3'

This commit is contained in:
Baptiste Grob
2020-11-04 13:37:23 +01:00
3 changed files with 51 additions and 4 deletions

View File

@@ -5,6 +5,16 @@ import Bugsnag from '@bugsnag/js';
declare const __VERSION__: string;
function redactFilePath(line: string): string {
const fileName = line.match(/\w+\.(html|js)?.*/)?.[0];
const redacted = '<redacted file path>';
if (fileName) {
return redacted + '/' + fileName;
} else {
return redacted;
}
}
export function startErrorReporting() {
if (storage.get(StorageKey.DisableErrorReporting)) {
SNLog.onError = console.error;
@@ -17,14 +27,51 @@ export function startErrorReporting() {
appVersion: __VERSION__,
collectUserIp: false,
autoTrackSessions: false,
releaseStage: isDev ? 'development' : undefined
releaseStage: isDev ? 'development' : undefined,
onError(event) {
/**
* Redact any data that could be used to identify user,
* such as file paths.
*/
if (isDesktopApplication()) {
if (event.context) {
event.context = `Desktop/${redactFilePath(event.context)}`;
}
}
if (event.request.url?.includes('file:')) {
event.request.url = redactFilePath(event.request.url);
}
const originalStack = event.originalError.stack;
if (
typeof originalStack === 'string' &&
originalStack.includes('file:')
) {
event.originalError.stack = originalStack
.split('\n')
.map((line) =>
line.includes('file:') ? redactFilePath(line) : line
)
.join('\n');
}
for (const error of event.errors) {
for (const stackFrame of error.stacktrace) {
if (stackFrame.file.includes('file:')) {
stackFrame.file = redactFilePath(stackFrame.file);
}
}
}
},
});
if (isDev) {
SNLog.onError = console.error;
} else {
SNLog.onError = (error) => {
Bugsnag.notify(error);
}
};
}
} catch (error) {
console.error('Failed to start Bugsnag.', error);

2
package-lock.json generated
View File

@@ -1,6 +1,6 @@
{
"name": "standard-notes-web",
"version": "3.5.2",
"version": "3.5.3",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View File

@@ -1,6 +1,6 @@
{
"name": "standard-notes-web",
"version": "3.5.2",
"version": "3.5.3",
"license": "AGPL-3.0-or-later",
"repository": {
"type": "git",