diff --git a/index.js b/index.js index 164ea3a4..a894b1fc 100644 --- a/index.js +++ b/index.js @@ -3,6 +3,7 @@ const path = require("path"); const electron = require("electron"); const is = require("electron-is"); +const unhandled = require("electron-unhandled"); const { autoUpdater } = require("electron-updater"); const config = require("./config"); @@ -11,6 +12,12 @@ const { fileExists, injectCSS } = require("./plugins/utils"); const { isTesting } = require("./utils/testing"); const { setUpTray } = require("./tray"); +// Catch errors and log them +unhandled({ + logger: console.error, + showDialog: false, +}); + const app = electron.app; app.commandLine.appendSwitch( "js-flags", diff --git a/package.json b/package.json index 84507199..c464cac7 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,10 @@ }, "win": { "icon": "assets/generated/icons/win/icon.ico", - "target": ["nsis", "portable"] + "target": [ + "nsis", + "portable" + ] }, "nsis": { "runAfterFinish": false @@ -69,6 +72,7 @@ "electron-is": "^3.0.0", "electron-localshortcut": "^3.2.1", "electron-store": "^6.0.1", + "electron-unhandled": "^3.0.2", "electron-updater": "^4.3.6", "filenamify": "^4.2.0", "node-fetch": "^2.6.1", diff --git a/yarn.lock b/yarn.lock index 014befa7..d6628bc2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2319,6 +2319,11 @@ clean-regexp@^1.0.0: dependencies: escape-string-regexp "^1.0.5" +clean-stack@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + cli-boxes@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.0.tgz#538ecae8f9c6ca508e3c3c95b453fe93cb4c168d" @@ -3076,7 +3081,7 @@ electron-is-dev@^0.3.0: resolved "https://registry.yarnpkg.com/electron-is-dev/-/electron-is-dev-0.3.0.tgz#14e6fda5c68e9e4ecbeff9ccf037cbd7c05c5afe" integrity sha1-FOb9pcaOnk7L7/nM8DfL18BcWv4= -electron-is-dev@^1.1.0: +electron-is-dev@^1.0.1, electron-is-dev@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/electron-is-dev/-/electron-is-dev-1.2.0.tgz#2e5cea0a1b3ccf1c86f577cee77363ef55deb05e" integrity sha512-R1oD5gMBPS7PVU8gJwH6CtT0e6VSoD0+SzSnYpNm+dBkcijgA+K7VAMHDfnRq/lkKPZArpzplTW6jfiMYosdzw== @@ -3131,6 +3136,16 @@ electron-store@^6.0.1: conf "^7.1.2" type-fest "^0.16.0" +electron-unhandled@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/electron-unhandled/-/electron-unhandled-3.0.2.tgz#e14a19c830ccf7b6e755191c8e78d23094d25112" + integrity sha512-IIqXnM5eNgV7k5sDA/GZ39ygJbpfF3WTArNGQ1TB4AI6ajQuuVztA0M6Mq9uEpmTh5gz4nR+YsTNWYsHLoM5rw== + dependencies: + clean-stack "^2.1.0" + electron-is-dev "^1.0.1" + ensure-error "^2.0.0" + lodash.debounce "^4.0.8" + electron-updater@^4.3.6: version "4.3.7" resolved "https://registry.yarnpkg.com/electron-updater/-/electron-updater-4.3.7.tgz#632434cf1dd856e37f5557a68b55867fae29c39e" @@ -3216,6 +3231,11 @@ enquirer@^2.3.5: dependencies: ansi-colors "^4.1.1" +ensure-error@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/ensure-error/-/ensure-error-2.1.0.tgz#f11fbe383c0cf4a54850ac77acceb7bc06e0f99d" + integrity sha512-+BMSJHw9gxiJAAp2ZR1E0TNcL09dD3lOvkl7WVm4+Y6xnes/pMetP/TzCHiDduh8ihNDjbGfuYxl7l4PA1xZ8A== + env-editor@^0.4.0: version "0.4.1" resolved "https://registry.yarnpkg.com/env-editor/-/env-editor-0.4.1.tgz#77011e08ce45f46e404e8d996b465c684ca57502" @@ -5800,6 +5820,11 @@ lodash.clonedeep@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= +lodash.debounce@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= + lodash.defaults@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c"