Skip to content

Commit 0d8c957

Browse files
committed
Added logic that stringifies release if it is an object in node sdk
1 parent f909ea1 commit 0d8c957

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

packages/node/src/sdk.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,8 @@ export function init(options: NodeOptions = {}): void {
9797
if (detectedRelease !== undefined) {
9898
options.release = detectedRelease;
9999
}
100+
} else if (typeof options.release !== 'string') {
101+
options.release = JSON.stringify(options.release);
100102
}
101103

102104
if (options.environment === undefined && process.env.SENTRY_ENVIRONMENT) {

packages/node/test/index.test.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -279,6 +279,13 @@ describe('SentryNode initialization', () => {
279279
global.SENTRY_RELEASE = undefined;
280280
});
281281

282+
test('release is stringified, if options.release is passed as an object', () => {
283+
const releaseObj = { name: 'release hello world' };
284+
// @ts-ignore
285+
init({ dsn, release: releaseObj });
286+
expect(global.__SENTRY__.hub._stack[0].client.getOptions().release).toEqual(JSON.stringify(releaseObj));
287+
});
288+
282289
describe('SDK metadata', () => {
283290
it('should set SDK data when Sentry.init() is called', () => {
284291
init({ dsn });

0 commit comments

Comments
 (0)