diff --git a/CHANGELOG.md b/CHANGELOG.md index 47c473998ca..69abd9e274e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -55,6 +55,8 @@ For semantic convention package changes, see the [semconv CHANGELOG](packages/se ### :rocket: (Enhancement) +* feat(sdk-trace-web): do not throw when passing extra options [#5357](https://github.com/open-telemetry/opentelemetry-js/pull/5357) @pichlermarc + * `WebTracerProvider` constructor now does not throw anymore when `contextManager` or `propagator` are passed as extra options to the constructor * feat(sdk-trace-base): add stack trace warning to debug instrumentation [#5363](https://github.com/open-telemetry/opentelemetry-js/pull/5363) @neilfordyce ### :bug: (Bug Fix) diff --git a/package-lock.json b/package-lock.json index 9c788d777e3..28ae3fd264d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -29811,7 +29811,6 @@ "@babel/preset-env": "7.26.7", "@opentelemetry/api": ">=1.0.0 <1.10.0", "@opentelemetry/context-zone": "1.30.0", - "@opentelemetry/propagator-b3": "1.30.0", "@opentelemetry/resources": "1.30.0", "@types/jquery": "3.5.32", "@types/mocha": "10.0.10", @@ -36805,7 +36804,6 @@ "@opentelemetry/api": ">=1.0.0 <1.10.0", "@opentelemetry/context-zone": "1.30.0", "@opentelemetry/core": "1.30.0", - "@opentelemetry/propagator-b3": "1.30.0", "@opentelemetry/resources": "1.30.0", "@opentelemetry/sdk-trace-base": "1.30.0", "@opentelemetry/semantic-conventions": "1.28.0", diff --git a/packages/opentelemetry-sdk-trace-web/package.json b/packages/opentelemetry-sdk-trace-web/package.json index cff67c7bf2f..2f4373b2204 100644 --- a/packages/opentelemetry-sdk-trace-web/package.json +++ b/packages/opentelemetry-sdk-trace-web/package.json @@ -58,7 +58,6 @@ "@babel/preset-env": "7.26.7", "@opentelemetry/api": ">=1.0.0 <1.10.0", "@opentelemetry/context-zone": "1.30.0", - "@opentelemetry/propagator-b3": "1.30.0", "@opentelemetry/resources": "1.30.0", "@types/jquery": "3.5.32", "@types/mocha": "10.0.10", diff --git a/packages/opentelemetry-sdk-trace-web/src/WebTracerProvider.ts b/packages/opentelemetry-sdk-trace-web/src/WebTracerProvider.ts index 0317f48f863..17df6d3addb 100644 --- a/packages/opentelemetry-sdk-trace-web/src/WebTracerProvider.ts +++ b/packages/opentelemetry-sdk-trace-web/src/WebTracerProvider.ts @@ -36,16 +36,6 @@ export class WebTracerProvider extends BasicTracerProvider { */ constructor(config: WebTracerConfig = {}) { super(config); - - if ((config as SDKRegistrationConfig).contextManager) { - throw ( - 'contextManager should be defined in register method not in' + - ' constructor' - ); - } - if ((config as SDKRegistrationConfig).propagator) { - throw 'propagator should be defined in register method not in constructor'; - } } /** diff --git a/packages/opentelemetry-sdk-trace-web/test/WebTracerProvider.test.ts b/packages/opentelemetry-sdk-trace-web/test/WebTracerProvider.test.ts index 9ea2a1300da..4347d791d0e 100644 --- a/packages/opentelemetry-sdk-trace-web/test/WebTracerProvider.test.ts +++ b/packages/opentelemetry-sdk-trace-web/test/WebTracerProvider.test.ts @@ -16,7 +16,6 @@ import { context, ContextManager, trace } from '@opentelemetry/api'; import { ZoneContextManager } from '@opentelemetry/context-zone'; -import { B3Propagator } from '@opentelemetry/propagator-b3'; import { Resource } from '@opentelemetry/resources'; import { SEMRESATTRS_TELEMETRY_SDK_LANGUAGE } from '@opentelemetry/semantic-conventions'; import { Span, Tracer } from '@opentelemetry/sdk-trace-base'; @@ -53,38 +52,6 @@ describe('WebTracerProvider', () => { }); }); - it('should throw error when context manager is passed in constructor', () => { - let error = ''; - try { - new WebTracerProvider({ - contextManager: new ZoneContextManager(), - } as any); - } catch (e) { - error = e; - } - assert.strictEqual( - error, - 'contextManager should be defined in' + - ' register method not in constructor' - ); - }); - - it('should throw error when propagator is passed in constructor', () => { - let error = ''; - try { - new WebTracerProvider({ - propagator: new B3Propagator(), - } as any); - } catch (e) { - error = e; - } - assert.strictEqual( - error, - 'propagator should be defined in register' + - ' method not in constructor' - ); - }); - describe('when contextManager is "ZoneContextManager"', () => { it('should correctly return the contexts for 2 parallel actions', done => { const webTracerWithZone = new WebTracerProvider().getTracer('default'); diff --git a/packages/opentelemetry-sdk-trace-web/tsconfig.esm.json b/packages/opentelemetry-sdk-trace-web/tsconfig.esm.json index 06c59548508..7ef8818ea59 100644 --- a/packages/opentelemetry-sdk-trace-web/tsconfig.esm.json +++ b/packages/opentelemetry-sdk-trace-web/tsconfig.esm.json @@ -21,9 +21,6 @@ { "path": "../opentelemetry-core" }, - { - "path": "../opentelemetry-propagator-b3" - }, { "path": "../opentelemetry-resources" }, diff --git a/packages/opentelemetry-sdk-trace-web/tsconfig.esnext.json b/packages/opentelemetry-sdk-trace-web/tsconfig.esnext.json index 7f20b27d313..49728c5d401 100644 --- a/packages/opentelemetry-sdk-trace-web/tsconfig.esnext.json +++ b/packages/opentelemetry-sdk-trace-web/tsconfig.esnext.json @@ -21,9 +21,6 @@ { "path": "../opentelemetry-core" }, - { - "path": "../opentelemetry-propagator-b3" - }, { "path": "../opentelemetry-resources" }, diff --git a/packages/opentelemetry-sdk-trace-web/tsconfig.json b/packages/opentelemetry-sdk-trace-web/tsconfig.json index f8405885b0b..1a9e807af93 100644 --- a/packages/opentelemetry-sdk-trace-web/tsconfig.json +++ b/packages/opentelemetry-sdk-trace-web/tsconfig.json @@ -22,9 +22,6 @@ { "path": "../opentelemetry-core" }, - { - "path": "../opentelemetry-propagator-b3" - }, { "path": "../opentelemetry-resources" },