-
Notifications
You must be signed in to change notification settings - Fork 251
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Release v7.10.0 #1411
Merged
Merged
Release v7.10.0 #1411
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…into store-event-state-in-main-process
The test was supposed to check total length == matching length. Along the way fixed some incorrect assertions around API key and hashing.
Some tests may not fire event during launch window
The actual net package on windows does not like `0.0.0.0` as localhost
The Breadcrumb.toJSON method renames the internal properties of a breadcrumb object. This is fine, but with some changes the toJSON method stops being called during serialisation. When this happens, the breadcrumbs are silently dropped because the 'name' is undefined and the core Client drops breadcrumbs without a name/message By avoiding toJSON in all cases, this should be a bit more robust
Avoid Breadcrumb.toJSON by copying breadcrumbs to an object before sending them over IPC
Co-authored-by: Ben Gourley <[email protected]>
Add browser onerror & unhanded rejection plugins to renderers
Add console, network and interaction breadcrumb plugins
On windows the build fails intermittently in the publish step with: lerna ERR! ZlibError: zlib: invalid block type lerna ERR! at Unzip.write (D:\a\bugsnag-electron\bugsnag-electron\node_modules\minizlib\index.js:147:22) lerna ERR! at Object.write (D:\a\bugsnag-electron\bugsnag-electron\node_modules\tar\lib\parse.js:305:58) lerna ERR! at Yallist.<anonymous> (D:\a\bugsnag-electron\bugsnag-electron\node_modules\minipass\index.js:374:18) lerna ERR! at Yallist.forEach (D:\a\bugsnag-electron\bugsnag-electron\node_modules\minipass\node_modules\yallist\yallist.js:156:8) lerna ERR! at ReadStream.emit (D:\a\bugsnag-electron\bugsnag-electron\node_modules\minipass\index.js:373:20) lerna ERR! at ReadStream.emit (D:\a\bugsnag-electron\bugsnag-electron\node_modules\fs-minipass\index.js:154:22) lerna ERR! at ReadStream.write (D:\a\bugsnag-electron\bugsnag-electron\node_modules\minipass\index.js:163:17) lerna ERR! at ReadStream.[_handleChunk] (D:\a\bugsnag-electron\bugsnag-electron\node_modules\fs-minipass\index.js:131:19) lerna ERR! at ReadStream.[_onread] (D:\a\bugsnag-electron\bugsnag-electron\node_modules\fs-minipass\index.js:109:32) lerna ERR! at D:\a\bugsnag-electron\bugsnag-electron\node_modules\fs-minipass\index.js:101:22 lerna ERR! lerna zlib: invalid block type
macOS expands to find all available space and time
We aren't even using this, removing for now to unblock the build
This commit introduces an new plugin whose job it is to manage the lifecycle of an event created in the renderer. This ensures internal onError callbacks in main populate the event's data fields so that all data is present for onError callbacks in a renderer.
Co-authored-by: Delisa <[email protected]>
Allow Act to run the tests with Ubuntu
Increase bugsnag-android dependency to v5.9.2
feat(electron): Use page title/window location for default context in renderers
This allows the plugin to work if the project root has already been stripped before it runs
…cess-type feat(electron): Set process.type=preload for errors in preload scripts
Load surrounding code from paths relative the project root
…ded-breadcrumb feat(electron): Add 'Bugsnag loaded' breadcrumb
The code is the same for all renderer errors and all main errors because the compiled webpack bundles are minified, so we grab the first 200 characters of each bundle. I've not added the expected code to all tests because it's the same every time
…lugin Add surrounding code plugin to Electron
Allow merging falsy options in renderers and use plugin schema extensions
Add electron support
|
Minified | Minfied + Gzipped | |
---|---|---|
Before | 40.86 kB |
12.61 kB |
After | 40.87 kB |
12.62 kB |
± | +9 bytes |
+9 bytes |
code coverage diff
Ok | File | Lines | Branches | Functions | Statements |
---|---|---|---|---|---|
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/core/event.js | 95.24% (+0%) |
88.33% (+3.33%) |
100% (+0%) |
95.58% (+0%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/core/session.js | 100% (+15.38%) |
100% (+0%) |
100% (+40%) |
100% (+15.38%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/delivery-electron/delivery.js | 97.4% (+97.4%) |
86.21% (+86.21%) |
77.27% (+77.27%) |
94.19% (+94.19%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/delivery-electron/network-status.js | 100% (+100%) |
94.12% (+94.12%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/delivery-electron/payload-loop.js | 87.8% (+87.8%) |
71.43% (+71.43%) |
85.71% (+85.71%) |
86.05% (+86.05%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/delivery-electron/queue.js | 98.18% (+98.18%) |
95% (+95%) |
93.33% (+93.33%) |
96.55% (+96.55%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron-filestore/filestore.js | 92.86% (+92.86%) |
72.73% (+72.73%) |
91.3% (+91.3%) |
92.86% (+92.86%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron-filestore/lib/minidump-io.js | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron-test-helpers/helpers.ts | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron-test-helpers/src/App.ts | 96.3% (+96.3%) |
100% (+100%) |
94.12% (+94.12%) |
96.77% (+96.77%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron-test-helpers/src/BrowserWindow.ts | 91.43% (+91.43%) |
78.57% (+78.57%) |
100% (+100%) |
92.11% (+92.11%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron-test-helpers/src/Display.ts | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron-test-helpers/src/PowerMonitor.ts | 95.45% (+95.45%) |
91.67% (+91.67%) |
100% (+100%) |
95.65% (+95.65%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron-test-helpers/src/Screen.ts | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron-test-helpers/src/client.ts | 96% (+96%) |
60% (+60%) |
75% (+75%) |
93.1% (+93.1%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron-test-helpers/src/process.ts | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron/src/id.js | 0% (+0%) |
100% (+100%) |
100% (+100%) |
0% (+0%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron/src/notifier.js | 53.57% (+53.57%) |
35.71% (+35.71%) |
33.33% (+33.33%) |
50% (+50%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron/src/client/renderer.js | 35.48% (+35.48%) |
0% (+0%) |
0% (+0%) |
31.43% (+31.43%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron/src/config/common.js | 65% (+65%) |
80% (+80%) |
54.55% (+54.55%) |
69.23% (+69.23%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron/src/config/main.js | 41.67% (+41.67%) |
20% (+20%) |
7.14% (+7.14%) |
40% (+40%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/electron/src/config/renderer.js | 23.53% (+23.53%) |
0% (+0%) |
8.33% (+8.33%) |
22.86% (+22.86%) |
🔴 | /home/runner/work/bugsnag-js/bugsnag-js/packages/node/src/config.js | 79.31% (-0.69%) |
34.78% (+0%) |
68.42% (+0%) |
77.42% (-0.71%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/node/src/notifier.js | 94.23% (+0.11%) |
60% (+0%) |
80% (+0%) |
89.29% (+0.2%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-app/app.js | 100% (+100%) |
88.46% (+88.46%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-app-breadcrumbs/app-breadcrumbs.js | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-client-state-manager/client-state-manager.js | 100% (+100%) |
80% (+80%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-client-state-persistence/client-state-persistence.js | 86.96% (+86.96%) |
100% (+100%) |
85.71% (+85.71%) |
86.96% (+86.96%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-device/device.js | 97.92% (+97.92%) |
93.75% (+93.75%) |
100% (+100%) |
98.04% (+98.04%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-ipc/bugsnag-ipc-main.js | 82.54% (+82.54%) |
73.08% (+73.08%) |
89.47% (+89.47%) |
81.43% (+81.43%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-ipc/bugsnag-ipc-renderer.js | 95.65% (+95.65%) |
100% (+100%) |
93.75% (+93.75%) |
95.83% (+95.83%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-ipc/lib/config-serializer.js | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-ipc/lib/constants.js | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-net-breadcrumbs/net-breadcrumbs.js | 100% (+100%) |
87.5% (+87.5%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-network-status/network-status.js | 100% (+100%) |
66.67% (+66.67%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-power-monitor-breadcrumbs/power-monitor-breadcrumbs.js | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-preload-error/preload-error.js | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-preload-error/test/fixtures/safe-preload.js | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-preload-error/test/fixtures/uncaught-exception-preload.js | 0% (+0%) |
100% (+100%) |
100% (+100%) |
0% (+0%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-process-info/procinfo.js | 93.33% (+93.33%) |
72.22% (+72.22%) |
100% (+100%) |
93.75% (+93.75%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-renderer-client-state-updates/client-state-updates.js | 100% (+100%) |
85.71% (+85.71%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-renderer-event-data/renderer-event-data.js | 89.47% (+89.47%) |
81.25% (+81.25%) |
100% (+100%) |
90.48% (+90.48%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-renderer-strip-project-root/strip-project-root.js | 84.21% (+84.21%) |
58.33% (+58.33%) |
100% (+100%) |
86.36% (+86.36%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-screen-breadcrumbs/screen-breadcrumbs.js | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-electron-session/session.js | 100% (+100%) |
87.5% (+87.5%) |
83.33% (+83.33%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-internal-callback-marker/internal-callback-marker.js | 100% (+100%) |
100% (+100%) |
100% (+100%) |
100% (+100%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-node-surrounding-code/surrounding-code.js | 96.67% (+0.12%) |
81.82% (+0%) |
95.65% (+0%) |
94.37% (+0.17%) |
✅ | /home/runner/work/bugsnag-js/bugsnag-js/packages/plugin-stackframe-path-normaliser/path-normaliser.js | 85.71% (+85.71%) |
50% (+50%) |
100% (+100%) |
87.5% (+87.5%) |
Total:
Lines | Branches | Functions | Statements |
---|---|---|---|
82.36%(+0.89%) | 71.79%(+1.37%) | 83.41%(-0.6%) | 81.39%(+1%) |
bengourley
approved these changes
May 18, 2021
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
v7.10.0 (2021-05-18)
This release adds
@bugsnag/electron
, a notifier for use on apps that are built using Electron.Added
@bugsnag/electron
and related pluginsChanged
/
as the path separatorbugsnag-android#1239
bugsnag-android#1235
bugsnag-android#1238
bugsnag-android#1237
bugsnag-android#1240
bugsnag-android#1245