Skip to content

Commit fd6b092

Browse files
Merge branch 'integration/typescript' into PLAT-13698-metadata-delegate
2 parents f52da9b + 57a421c commit fd6b092

6 files changed

Lines changed: 31 additions & 18 deletions

File tree

packages/core/package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
"./lib/derecursify": "./src/lib/derecursify.js",
1818
"./lib/callback-runner": "./src/lib/callback-runner.js",
1919
"./lib/node-fallback-stack": "./src/lib/node-fallback-stack.js",
20-
"./lib/sync-callback-runner": "./src/lib/sync-callback-runner.js",
2120
"./lib/path-normalizer": "./src/lib/path-normalizer.js",
2221
"./lib/validators/string-with-length": "./src/lib/validators/string-with-length.js",
2322
"./lib/validators/list-of-functions": "./src/lib/validators/list-of-functions.js",

packages/core/src/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,6 @@ export { default as jsonPayload } from './lib/json-payload'
88
export { default as intRange } from './lib/validators/int-range'
99
export { default as isError } from './lib/iserror'
1010
export { default as metadataDelegate } from './lib/metadata-delegate'
11+
export { default as runSyncCallbacks } from './lib/sync-callback-runner'
1112

1213
export * from './common'

packages/core/src/lib/sync-callback-runner.js

Lines changed: 0 additions & 14 deletions
This file was deleted.
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import type Breadcrumb from '../breadcrumb'
2+
import { LoggerConfig, OnBreadcrumbCallback, OnSessionCallback } from '../common'
3+
import type Session from '../session'
4+
type Callbacks = (...args: any[]) => any
5+
6+
const runSyncCallbacks = (
7+
callbacks: OnSessionCallback[] | OnBreadcrumbCallback[] | Callbacks[] | any[],
8+
callbackArg: Session | Breadcrumb | Event,
9+
callbackType: string,
10+
logger: LoggerConfig
11+
): boolean => {
12+
let ignore = false
13+
const cbs = callbacks.slice()
14+
while (!ignore) {
15+
if (!cbs.length) break
16+
try {
17+
ignore = cbs.pop()(callbackArg) === false
18+
} catch (e) {
19+
logger.error(
20+
`Error occurred in ${callbackType} callback, continuing anyway…`
21+
)
22+
logger.error(e)
23+
}
24+
}
25+
return ignore
26+
}
27+
28+
export default runSyncCallbacks

packages/plugin-electron-deliver-minidumps/minidump-loop.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
const { readFile } = require('fs').promises
2-
const runSyncCallbacks = require('@bugsnag/core/lib/sync-callback-runner')
2+
const { runSyncCallbacks } = require('@bugsnag/core')
33
const { serialiseEvent, deserialiseEvent } = require('./event-serialisation')
44

55
module.exports = class MinidumpDeliveryLoop {

packages/plugin-server-session/session.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
const { intRange } = require('@bugsnag/core')
1+
const { intRange, runSyncCallbacks } = require('@bugsnag/core')
22
const SessionTracker = require('./tracker')
33
const Backoff = require('backo')
4-
const runSyncCallbacks = require('@bugsnag/core/lib/sync-callback-runner')
54

65
module.exports = {
76
load: (client) => {

0 commit comments

Comments
 (0)