Skip to content

Commit ba701d1

Browse files
committed
[v7] Move SdkMetadata to options._internal and use SdkInfo type directly instead
1 parent f7c2532 commit ba701d1

File tree

12 files changed

+39
-46
lines changed

12 files changed

+39
-46
lines changed

packages/angular/src/sdk.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ import { ClientLike } from '@sentry/types';
55
* Inits the Angular SDK
66
*/
77
export function init(options: BrowserOptions): ClientLike {
8-
options._metadata = options._metadata || {};
9-
options._metadata.sdk = {
8+
options._internal = options._internal || {};
9+
options._internal.sdk = {
1010
name: 'sentry.javascript.angular',
1111
packages: [
1212
{

packages/browser/src/client.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ export class BrowserClient extends BaseClient<BrowserOptions> {
4242
* @param options Configuration options for this SDK.
4343
*/
4444
public constructor(options: BrowserOptions = {}) {
45-
options._metadata = options._metadata || {};
46-
options._metadata.sdk = options._metadata.sdk || {
45+
options._internal = options._internal || {};
46+
options._internal.sdk = options._internal.sdk || {
4747
name: 'sentry.javascript.browser',
4848
packages: [
4949
{

packages/core/src/baseclient.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -352,8 +352,8 @@ export abstract class BaseClient<O extends Options> implements ClientLike<O> {
352352
}
353353

354354
protected _applySdkMetadata(event: SentryEvent): void {
355-
if (this.options._metadata?.sdk) {
356-
const { name, version, integrations, packages } = this.options._metadata?.sdk;
355+
if (this.options._internal?.sdk) {
356+
const { name, version, integrations, packages } = this.options._internal?.sdk;
357357

358358
event.sdk = event.sdk ?? {
359359
name,

packages/ember/addon/index.ts

+14-4
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ export function InitSentryForEmber(_runtimeConfig: BrowserOptions | undefined) {
2020

2121
const initConfig = Object.assign({}, config.sentry, _runtimeConfig || {});
2222

23-
initConfig._metadata = initConfig._metadata || {};
24-
initConfig._metadata.sdk = {
23+
initConfig._internal = initConfig._internal || {};
24+
initConfig._internal.sdk = {
2525
name: 'sentry.javascript.ember',
2626
packages: [
2727
{
@@ -66,15 +66,25 @@ export const instrumentRoutePerformance = (BaseRoute: any) => {
6666
return {
6767
[BaseRoute.name]: class extends BaseRoute {
6868
beforeModel(...args: any[]) {
69-
return instrumentFunction('ember.route.beforeModel', (<any>this).fullRouteName, super.beforeModel.bind(this), args);
69+
return instrumentFunction(
70+
'ember.route.beforeModel',
71+
(<any>this).fullRouteName,
72+
super.beforeModel.bind(this),
73+
args,
74+
);
7075
}
7176

7277
async model(...args: any[]) {
7378
return instrumentFunction('ember.route.model', (<any>this).fullRouteName, super.model.bind(this), args);
7479
}
7580

7681
async afterModel(...args: any[]) {
77-
return instrumentFunction('ember.route.afterModel', (<any>this).fullRouteName, super.afterModel.bind(this), args);
82+
return instrumentFunction(
83+
'ember.route.afterModel',
84+
(<any>this).fullRouteName,
85+
super.afterModel.bind(this),
86+
args,
87+
);
7888
}
7989

8090
async setupController(...args: any[]) {

packages/node/src/client.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ export class NodeClient extends BaseClient<NodeOptions> {
4444
* @param options Configuration options for this SDK.
4545
*/
4646
public constructor(options: NodeOptions) {
47-
options._metadata = options._metadata || {};
48-
options._metadata.sdk = options._metadata.sdk || {
47+
options._internal = options._internal || {};
48+
options._internal.sdk = options._internal.sdk || {
4949
name: 'sentry.javascript.node',
5050
packages: [
5151
{

packages/react/src/sdk.ts

+11-13
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,17 @@ import { ClientLike } from '@sentry/types';
55
* Inits the React SDK
66
*/
77
export function init(options: BrowserOptions): ClientLike {
8-
options._metadata = options._metadata || {};
9-
if (options._metadata.sdk === undefined) {
10-
options._metadata.sdk = {
11-
name: 'sentry.javascript.react',
12-
packages: [
13-
{
14-
name: 'npm:@sentry/react',
15-
version: SDK_VERSION,
16-
},
17-
],
18-
version: SDK_VERSION,
19-
};
20-
}
8+
options._internal = options._internal || {};
9+
options._internal.sdk = options._internal.sdk || {
10+
name: 'sentry.javascript.react',
11+
packages: [
12+
{
13+
name: 'npm:@sentry/react',
14+
version: SDK_VERSION,
15+
},
16+
],
17+
version: SDK_VERSION,
18+
};
2119

2220
return browserInit(options);
2321
}

packages/serverless/src/awslambda.ts

+1-3
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,7 @@ export const getDefaultIntegrations = (): Integration[] => [
5252
export function init(options: Sentry.NodeOptions = {}): ClientLike {
5353
options._internal = options._internal || {};
5454
options._internal.defaultIntegrations = getDefaultIntegrations();
55-
56-
options._metadata = options._metadata || {};
57-
options._metadata.sdk = {
55+
options._internal.sdk = {
5856
name: 'sentry.javascript.serverless',
5957
integrations: ['AWSLambda'],
6058
packages: [

packages/serverless/src/gcpfunction/index.ts

+1-3
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,7 @@ export const getDefaultIntegrations = (): Integration[] => [
2121
export function init(options: Sentry.NodeOptions = {}): ClientLike {
2222
options._internal = options._internal || {};
2323
options._internal.defaultIntegrations = getDefaultIntegrations();
24-
25-
options._metadata = options._metadata || {};
26-
options._metadata.sdk = {
24+
options._internal.sdk = {
2725
name: 'sentry.javascript.serverless',
2826
integrations: ['GCPFunction'],
2927
packages: [

packages/types/src/index.ts

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ export { Response } from './response';
2020
export { Runtime } from './runtime';
2121
export { ScopeLike, ScopeContext } from './scope';
2222
export { SdkInfo } from './sdkinfo';
23-
export { SdkMetadata } from './sdkmetadata';
2423
export { Session, SessionContext, SessionStatus } from './session';
2524
export { Severity } from './severity';
2625
export { Span, SpanContext } from './span';

packages/types/src/options.ts

+2-7
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { Breadcrumb, BreadcrumbHint } from './breadcrumb';
22
import { SentryEvent, EventHint } from './event';
33
import { Integration } from './integration';
44
import { LogLevel } from './loglevel';
5-
import { SdkMetadata } from './sdkmetadata';
5+
import { SdkInfo } from './sdkinfo';
66
import { SamplingContext } from './transaction';
77
import { Transport, TransportOptions } from './transport';
88

@@ -121,12 +121,6 @@ export interface Options {
121121
*/
122122
tracesSampleRate?: number;
123123

124-
/**
125-
* Set of metadata about the SDK that can be internally used to enhance envelopes and events,
126-
* and provide additional data about every request.
127-
* */
128-
_metadata?: SdkMetadata;
129-
130124
/**
131125
* Options which are in beta, or otherwise not guaranteed to be stable.
132126
*/
@@ -135,6 +129,7 @@ export interface Options {
135129
};
136130

137131
_internal?: {
132+
sdk?: SdkInfo;
138133
defaultIntegrations?: Integration[];
139134
discoveredIntegrations?: Integration[];
140135
};

packages/types/src/sdkmetadata.ts

-5
This file was deleted.

packages/vue/src/sdk.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -141,8 +141,8 @@ export function init(
141141
},
142142
} as VueOptions;
143143

144-
finalOptions._metadata = finalOptions._metadata || {};
145-
finalOptions._metadata.sdk = {
144+
finalOptions._internal = finalOptions._internal || {};
145+
finalOptions._internal.sdk = {
146146
name: 'sentry.javascript.vue',
147147
packages: [
148148
{

0 commit comments

Comments
 (0)