From 5f52d9c0909b0fec5f2d9093721c2bd5414b634b Mon Sep 17 00:00:00 2001 From: Francesco Novy Date: Thu, 14 Dec 2023 15:35:08 +0100 Subject: [PATCH] feat(core): Deprecate `configureScope` Instead, users should directly access the current scope via `getCurrentScope()`. --- MIGRATION.md | 8 ++++++++ packages/astro/src/index.server.ts | 1 + packages/browser/src/exports.ts | 1 + packages/bun/src/index.ts | 1 + packages/core/src/exports.ts | 3 +++ packages/core/src/hub.ts | 2 ++ packages/core/src/index.ts | 1 + packages/deno/src/index.ts | 1 + packages/hub/src/index.ts | 1 + packages/node-experimental/src/index.ts | 1 + packages/node/src/index.ts | 1 + packages/remix/src/index.server.ts | 1 + packages/serverless/src/index.ts | 1 + packages/sveltekit/src/server/index.ts | 1 + packages/types/src/hub.ts | 1 + packages/vercel-edge/src/index.ts | 1 + 16 files changed, 26 insertions(+) diff --git a/MIGRATION.md b/MIGRATION.md index 78f5f16d3002..40771832279a 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -8,6 +8,14 @@ npx @sentry/migr8@latest This will let you select which updates to run, and automatically update your code. Make sure to still review all code changes! +## Deprecate `configureScope` in favor of using `getCurrentScope()` + +Instead of updating the scope in a callback via `configureScope()`, you should access it via `getCurrentScope()` and configure it directly: + +```js +Sentry.getCurrentScope().setTag('xx', 'yy'); +``` + ## Deprecate `addGlobalEventProcessor` in favor of `addEventProcessor` Instead of using `addGlobalEventProcessor`, you should use `addEventProcessor` which does not add the event processor globally, but to the current client. diff --git a/packages/astro/src/index.server.ts b/packages/astro/src/index.server.ts index c62590180266..adcf95527364 100644 --- a/packages/astro/src/index.server.ts +++ b/packages/astro/src/index.server.ts @@ -17,6 +17,7 @@ export { captureMessage, captureCheckIn, withMonitor, + // eslint-disable-next-line deprecation/deprecation configureScope, createTransport, // eslint-disable-next-line deprecation/deprecation diff --git a/packages/browser/src/exports.ts b/packages/browser/src/exports.ts index 82eedf4e846f..cc9712517b2b 100644 --- a/packages/browser/src/exports.ts +++ b/packages/browser/src/exports.ts @@ -30,6 +30,7 @@ export { captureEvent, captureMessage, close, + // eslint-disable-next-line deprecation/deprecation configureScope, createTransport, flush, diff --git a/packages/bun/src/index.ts b/packages/bun/src/index.ts index 5a4260aaec38..499e969f3843 100644 --- a/packages/bun/src/index.ts +++ b/packages/bun/src/index.ts @@ -33,6 +33,7 @@ export { captureEvent, captureMessage, close, + // eslint-disable-next-line deprecation/deprecation configureScope, createTransport, // eslint-disable-next-line deprecation/deprecation diff --git a/packages/core/src/exports.ts b/packages/core/src/exports.ts index c0ec78c7952f..95c1e4b63de3 100644 --- a/packages/core/src/exports.ts +++ b/packages/core/src/exports.ts @@ -78,8 +78,11 @@ export function captureEvent(event: Event, hint?: EventHint): ReturnType void): ReturnType { + // eslint-disable-next-line deprecation/deprecation getCurrentHub().configureScope(callback); } diff --git a/packages/core/src/hub.ts b/packages/core/src/hub.ts index b7cffed42902..1d681b555816 100644 --- a/packages/core/src/hub.ts +++ b/packages/core/src/hub.ts @@ -335,6 +335,8 @@ export class Hub implements HubInterface { /** * @inheritDoc + * + * @deprecated Use `getScope()` directly. */ public configureScope(callback: (scope: Scope) => void): void { const { scope, client } = this.getStackTop(); diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 3c39921f495a..2fb2f17b6089 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -14,6 +14,7 @@ export { captureEvent, captureMessage, close, + // eslint-disable-next-line deprecation/deprecation configureScope, flush, lastEventId, diff --git a/packages/deno/src/index.ts b/packages/deno/src/index.ts index 52a878bdde17..bd2a7061019a 100644 --- a/packages/deno/src/index.ts +++ b/packages/deno/src/index.ts @@ -31,6 +31,7 @@ export { captureEvent, captureMessage, close, + // eslint-disable-next-line deprecation/deprecation configureScope, createTransport, // eslint-disable-next-line deprecation/deprecation diff --git a/packages/hub/src/index.ts b/packages/hub/src/index.ts index 7797b1d0e7d5..057d0e6a9975 100644 --- a/packages/hub/src/index.ts +++ b/packages/hub/src/index.ts @@ -112,6 +112,7 @@ export const captureMessage = captureMessageCore; /** * @deprecated This export has moved to @sentry/core. The @sentry/hub package will be removed in v8. */ +// eslint-disable-next-line deprecation/deprecation export const configureScope = configureScopeCore; /** diff --git a/packages/node-experimental/src/index.ts b/packages/node-experimental/src/index.ts index d7df34bc6b87..5d976dcd4576 100644 --- a/packages/node-experimental/src/index.ts +++ b/packages/node-experimental/src/index.ts @@ -32,6 +32,7 @@ export { captureEvent, captureMessage, close, + // eslint-disable-next-line deprecation/deprecation configureScope, createTransport, // eslint-disable-next-line deprecation/deprecation diff --git a/packages/node/src/index.ts b/packages/node/src/index.ts index fffa11939e8b..950fe7bac197 100644 --- a/packages/node/src/index.ts +++ b/packages/node/src/index.ts @@ -32,6 +32,7 @@ export { captureEvent, captureMessage, close, + // eslint-disable-next-line deprecation/deprecation configureScope, createTransport, // eslint-disable-next-line deprecation/deprecation diff --git a/packages/remix/src/index.server.ts b/packages/remix/src/index.server.ts index 0600eb625b7f..c62b3c9c729c 100644 --- a/packages/remix/src/index.server.ts +++ b/packages/remix/src/index.server.ts @@ -20,6 +20,7 @@ export { captureException, captureEvent, captureMessage, + // eslint-disable-next-line deprecation/deprecation configureScope, createTransport, // eslint-disable-next-line deprecation/deprecation diff --git a/packages/serverless/src/index.ts b/packages/serverless/src/index.ts index 6df0dbedb2c3..c8086fc5d69e 100644 --- a/packages/serverless/src/index.ts +++ b/packages/serverless/src/index.ts @@ -24,6 +24,7 @@ export { captureMessage, captureCheckIn, withMonitor, + // eslint-disable-next-line deprecation/deprecation configureScope, createTransport, getActiveTransaction, diff --git a/packages/sveltekit/src/server/index.ts b/packages/sveltekit/src/server/index.ts index b75fa24ebe5b..560f839c9fe3 100644 --- a/packages/sveltekit/src/server/index.ts +++ b/packages/sveltekit/src/server/index.ts @@ -14,6 +14,7 @@ export { captureMessage, captureCheckIn, withMonitor, + // eslint-disable-next-line deprecation/deprecation configureScope, createTransport, // eslint-disable-next-line deprecation/deprecation diff --git a/packages/types/src/hub.ts b/packages/types/src/hub.ts index a9c87cc157b7..6edcb799b0e8 100644 --- a/packages/types/src/hub.ts +++ b/packages/types/src/hub.ts @@ -171,6 +171,7 @@ export interface Hub { * Callback to set context information onto the scope. * * @param callback Callback function that receives Scope. + * @deprecated Use `getScope()` directly. */ configureScope(callback: (scope: Scope) => void): void; diff --git a/packages/vercel-edge/src/index.ts b/packages/vercel-edge/src/index.ts index ffce59b5dceb..76219f4faafa 100644 --- a/packages/vercel-edge/src/index.ts +++ b/packages/vercel-edge/src/index.ts @@ -32,6 +32,7 @@ export { captureEvent, captureMessage, close, + // eslint-disable-next-line deprecation/deprecation configureScope, createTransport, // eslint-disable-next-line deprecation/deprecation