From 053a18d50bd588398cc60d82e25e5fad9e9052ac Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Tue, 30 Jun 2026 10:36:55 +0200 Subject: [PATCH 1/5] ref(core): Add `@sentry/conventions` to `@sentry/core` and align versions --- packages/aws-serverless/package.json | 2 +- packages/core/package.json | 3 +++ packages/core/src/tracing/spans/captureSpan.ts | 5 ++--- packages/nestjs/package.json | 2 +- packages/nextjs/package.json | 2 +- packages/node-core/package.json | 2 +- packages/node/package.json | 2 +- packages/opentelemetry/package.json | 2 +- packages/react-router/package.json | 2 +- packages/remix/package.json | 2 +- packages/server-utils/package.json | 2 +- packages/tanstackstart-react/package.json | 2 +- yarn.lock | 8 ++++---- 13 files changed, 19 insertions(+), 17 deletions(-) diff --git a/packages/aws-serverless/package.json b/packages/aws-serverless/package.json index d1d61b1cd255..41c68f7f5c8b 100644 --- a/packages/aws-serverless/package.json +++ b/packages/aws-serverless/package.json @@ -68,7 +68,7 @@ "dependencies": { "@opentelemetry/api": "^1.9.1", "@opentelemetry/instrumentation": "^0.214.0", - "@sentry/conventions": "^0.12.0", + "@sentry/conventions": "^0.15.1", "@sentry/core": "10.63.0", "@sentry/node": "10.63.0", "@sentry/node-core": "10.63.0", diff --git a/packages/core/package.json b/packages/core/package.json index d75b026848fa..8dc910a541bc 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -106,5 +106,8 @@ "sideEffects": false, "devDependencies": { "zod": "^3.24.1" + }, + "dependencies": { + "@sentry/conventions": "^0.15.1" } } diff --git a/packages/core/src/tracing/spans/captureSpan.ts b/packages/core/src/tracing/spans/captureSpan.ts index c7e1e6bac33b..a2fc6595e348 100644 --- a/packages/core/src/tracing/spans/captureSpan.ts +++ b/packages/core/src/tracing/spans/captureSpan.ts @@ -27,6 +27,7 @@ import { getCapturedScopesOnSpan } from '../utils'; import { isStreamedBeforeSendSpanCallback } from './beforeSendSpan'; import { scopeContextsToSpanAttributes } from './scopeContextAttributes'; import { DEFAULT_ENVIRONMENT } from '../../constants'; +import { SENTRY_SPAN_SOURCE } from '@sentry/conventions/attributes'; export type SerializedStreamedSpanWithSegmentSpan = SerializedStreamedSpan & { _segmentSpan: Span; @@ -85,9 +86,7 @@ export function captureSpan(span: Span, client: Client): SerializedStreamedSpanW const spanNameSource = processedSpan.attributes?.[SEMANTIC_ATTRIBUTE_SENTRY_SOURCE]; if (spanNameSource) { safeSetSpanJSONAttributes(processedSpan, { - // Purposefully not using a constant defined here like in other attributes: - // This will be the name for SEMANTIC_ATTRIBUTE_SENTRY_SOURCE in v11 - 'sentry.span.source': spanNameSource, + [SENTRY_SPAN_SOURCE]: spanNameSource, }); } diff --git a/packages/nestjs/package.json b/packages/nestjs/package.json index c4ba487e72b1..689739ea1a5c 100644 --- a/packages/nestjs/package.json +++ b/packages/nestjs/package.json @@ -46,7 +46,7 @@ "dependencies": { "@opentelemetry/api": "^1.9.1", "@opentelemetry/instrumentation": "^0.214.0", - "@sentry/conventions": "^0.12.0", + "@sentry/conventions": "^0.15.1", "@sentry/core": "10.63.0", "@sentry/node": "10.63.0" }, diff --git a/packages/nextjs/package.json b/packages/nextjs/package.json index eb1968c067e1..fb121d30e514 100644 --- a/packages/nextjs/package.json +++ b/packages/nextjs/package.json @@ -80,7 +80,7 @@ "@rollup/plugin-commonjs": "28.0.1", "@sentry/browser-utils": "10.63.0", "@sentry/bundler-plugin-core": "^5.3.0", - "@sentry/conventions": "^0.12.0", + "@sentry/conventions": "^0.15.1", "@sentry/core": "10.63.0", "@sentry/node": "10.63.0", "@sentry/opentelemetry": "10.63.0", diff --git a/packages/node-core/package.json b/packages/node-core/package.json index 7afe0e3f59ec..aae81f03dbb9 100644 --- a/packages/node-core/package.json +++ b/packages/node-core/package.json @@ -101,7 +101,7 @@ } }, "dependencies": { - "@sentry/conventions": "^0.12.0", + "@sentry/conventions": "^0.15.1", "@sentry/core": "10.63.0", "@sentry/opentelemetry": "10.63.0", "import-in-the-middle": "^3.0.0" diff --git a/packages/node/package.json b/packages/node/package.json index 643d1042cf09..648f67702ddb 100644 --- a/packages/node/package.json +++ b/packages/node/package.json @@ -68,7 +68,7 @@ "@opentelemetry/api": "^1.9.1", "@opentelemetry/instrumentation": "^0.214.0", "@opentelemetry/sdk-trace-base": "^2.6.1", - "@sentry/conventions": "^0.12.0", + "@sentry/conventions": "^0.15.1", "@sentry/core": "10.63.0", "@sentry/node-core": "10.63.0", "@sentry/opentelemetry": "10.63.0", diff --git a/packages/opentelemetry/package.json b/packages/opentelemetry/package.json index c7b59f0b1234..48501135afa8 100644 --- a/packages/opentelemetry/package.json +++ b/packages/opentelemetry/package.json @@ -55,7 +55,7 @@ "access": "public" }, "dependencies": { - "@sentry/conventions": "^0.12.0", + "@sentry/conventions": "^0.15.1", "@sentry/core": "10.63.0" }, "peerDependencies": { diff --git a/packages/react-router/package.json b/packages/react-router/package.json index 78f4d4165f52..ed11637270d4 100644 --- a/packages/react-router/package.json +++ b/packages/react-router/package.json @@ -49,7 +49,7 @@ "@opentelemetry/instrumentation": "^0.214.0", "@sentry/browser": "10.63.0", "@sentry/cli": "^2.58.6", - "@sentry/conventions": "^0.12.0", + "@sentry/conventions": "^0.15.1", "@sentry/core": "10.63.0", "@sentry/node": "10.63.0", "@sentry/react": "10.63.0", diff --git a/packages/remix/package.json b/packages/remix/package.json index 60d4160e05c1..52514e62b41e 100644 --- a/packages/remix/package.json +++ b/packages/remix/package.json @@ -68,7 +68,7 @@ "@opentelemetry/instrumentation": "^0.214.0", "@remix-run/router": "^1.23.3", "@sentry/cli": "^2.58.6", - "@sentry/conventions": "^0.12.0", + "@sentry/conventions": "^0.15.1", "@sentry/core": "10.63.0", "@sentry/node": "10.63.0", "@sentry/react": "10.63.0", diff --git a/packages/server-utils/package.json b/packages/server-utils/package.json index fbb66999e7ef..350c7ce367ff 100644 --- a/packages/server-utils/package.json +++ b/packages/server-utils/package.json @@ -85,7 +85,7 @@ "@apm-js-collab/code-transformer-bundler-plugins": "^0.5.0", "@apm-js-collab/code-transformer": "^0.15.0", "@apm-js-collab/tracing-hooks": "^0.10.1", - "@sentry/conventions": "^0.12.0", + "@sentry/conventions": "^0.15.1", "@sentry/core": "10.63.0", "magic-string": "~0.30.0" }, diff --git a/packages/tanstackstart-react/package.json b/packages/tanstackstart-react/package.json index 0a46ebdde460..1111da00fabd 100644 --- a/packages/tanstackstart-react/package.json +++ b/packages/tanstackstart-react/package.json @@ -65,7 +65,7 @@ "dependencies": { "@opentelemetry/api": "^1.9.1", "@sentry/browser-utils": "10.63.0", - "@sentry/conventions": "^0.12.0", + "@sentry/conventions": "^0.15.1", "@sentry/core": "10.63.0", "@sentry/node": "10.63.0", "@sentry/react": "10.63.0", diff --git a/yarn.lock b/yarn.lock index c8ca952adda8..65b0cc12f4cb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7482,10 +7482,10 @@ "@sentry/cli-win32-i686" "2.58.6" "@sentry/cli-win32-x64" "2.58.6" -"@sentry/conventions@^0.12.0": - version "0.12.0" - resolved "https://registry.yarnpkg.com/@sentry/conventions/-/conventions-0.12.0.tgz#e963cf928ac4d1585b1dcc196e767df3ac45ca5c" - integrity sha512-z1JQrl/1SLY+8wpzvork6vl+fpsg/oCCxM7HWWhUnI/R+OGNyoIzieQuggX3uUMY7NBtp8UWCQx6FeFazzOF9g== +"@sentry/conventions@^0.15.1": + version "0.15.1" + resolved "https://registry.yarnpkg.com/@sentry/conventions/-/conventions-0.15.1.tgz#5b8888862d1e444678938f5afdd7842bca42f7cc" + integrity sha512-ZLP8bRdMON3prWE2tJyImuYscCxdcJeIPIhrOs/rgyFm3C1nCh1B6gdvPj3AZ5zW08oSFFCsq7T+tYEW3h8MNA== "@sentry/node-cpu-profiler@^2.4.2": version "2.4.2" From 507e71597bfe6108bd879ffeb6a6b37c1b726882 Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Tue, 30 Jun 2026 10:41:43 +0200 Subject: [PATCH 2/5] replace some more hard-coded strings in core --- packages/core/src/semanticAttributes.ts | 2 +- packages/core/src/tracing/dynamicSamplingContext.ts | 3 ++- packages/core/test/lib/tracing/spans/captureSpan.test.ts | 9 +++++---- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/packages/core/src/semanticAttributes.ts b/packages/core/src/semanticAttributes.ts index b0067f3c2a41..8df3b5e8b013 100644 --- a/packages/core/src/semanticAttributes.ts +++ b/packages/core/src/semanticAttributes.ts @@ -1,7 +1,7 @@ /** * Use this attribute to represent the source of a span name. * Must be one of: custom, url, route, view, component, task - * TODO(v11): rename this to sentry.span.source' + * TODO(v11): remove this export */ export const SEMANTIC_ATTRIBUTE_SENTRY_SOURCE = 'sentry.source'; diff --git a/packages/core/src/tracing/dynamicSamplingContext.ts b/packages/core/src/tracing/dynamicSamplingContext.ts index eba6d60ab463..8b9aebee8b8b 100644 --- a/packages/core/src/tracing/dynamicSamplingContext.ts +++ b/packages/core/src/tracing/dynamicSamplingContext.ts @@ -1,3 +1,4 @@ +import { SENTRY_SPAN_SOURCE } from '@sentry/conventions/attributes'; import type { Client } from '../client'; import { DEFAULT_ENVIRONMENT } from '../constants'; import { getClient } from '../currentScopes'; @@ -138,7 +139,7 @@ export function getDynamicSamplingContextFromSpan(span: Span): Readonly { it.each([true, false, undefined])( @@ -86,7 +87,7 @@ describe('captureSpan', () => { value: span.spanContext().spanId, type: 'string', }, - 'sentry.span.source': { + [SENTRY_SPAN_SOURCE]: { value: 'custom', type: 'string', }, @@ -187,7 +188,7 @@ describe('captureSpan', () => { value: span.spanContext().spanId, type: 'string', }, - 'sentry.span.source': { + [SENTRY_SPAN_SOURCE]: { value: 'custom', type: 'string', }, @@ -283,7 +284,7 @@ describe('captureSpan', () => { value: span.spanContext().spanId, type: 'string', }, - 'sentry.span.source': { + [SENTRY_SPAN_SOURCE]: { value: 'custom', type: 'string', }, @@ -348,7 +349,7 @@ describe('captureSpan', () => { [SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE]: { type: 'integer', value: 1 }, [SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_NAME]: { value: 'my-span', type: 'string' }, [SEMANTIC_ATTRIBUTE_SENTRY_SEGMENT_ID]: { value: span.spanContext().spanId, type: 'string' }, - 'sentry.span.source': { value: 'custom', type: 'string' }, + [SENTRY_SPAN_SOURCE]: { value: 'custom', type: 'string' }, [SEMANTIC_ATTRIBUTE_SENTRY_SOURCE]: { value: 'custom', type: 'string' }, [SEMANTIC_ATTRIBUTE_SENTRY_RELEASE]: { value: '1.0.0', type: 'string' }, [SEMANTIC_ATTRIBUTE_SENTRY_ENVIRONMENT]: { value: 'staging', type: 'string' }, From a2ad45e5b1383cbf43dfb54d0ac530a0eeac2008 Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Tue, 30 Jun 2026 11:46:48 +0200 Subject: [PATCH 3/5] adjust comment --- packages/core/src/tracing/dynamicSamplingContext.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/tracing/dynamicSamplingContext.ts b/packages/core/src/tracing/dynamicSamplingContext.ts index 8b9aebee8b8b..a0af0ab23485 100644 --- a/packages/core/src/tracing/dynamicSamplingContext.ts +++ b/packages/core/src/tracing/dynamicSamplingContext.ts @@ -138,7 +138,7 @@ export function getDynamicSamplingContextFromSpan(span: Span): Readonly Date: Tue, 30 Jun 2026 14:28:27 +0200 Subject: [PATCH 4/5] bump to conventions 0.14.0 --- dev-packages/rollup-utils/npmHelpers.mjs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dev-packages/rollup-utils/npmHelpers.mjs b/dev-packages/rollup-utils/npmHelpers.mjs index 0537032d8bdd..f8fc11e14c92 100644 --- a/dev-packages/rollup-utils/npmHelpers.mjs +++ b/dev-packages/rollup-utils/npmHelpers.mjs @@ -78,6 +78,8 @@ export function makeBaseNPMConfig(options = {}) { preset: 'es2015', }, + hoistTransitiveImports: false, + // don't add `"use strict"` to the top of cjs files strict: false, @@ -104,7 +106,7 @@ export function makeBaseNPMConfig(options = {}) { return false; } - return true; + return false; }, }, From af6a2218eb202e93edf503e52a0af6f7533c6fa0 Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Tue, 30 Jun 2026 16:06:28 +0200 Subject: [PATCH 5/5] revert build config change --- dev-packages/rollup-utils/npmHelpers.mjs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/dev-packages/rollup-utils/npmHelpers.mjs b/dev-packages/rollup-utils/npmHelpers.mjs index f8fc11e14c92..0537032d8bdd 100644 --- a/dev-packages/rollup-utils/npmHelpers.mjs +++ b/dev-packages/rollup-utils/npmHelpers.mjs @@ -78,8 +78,6 @@ export function makeBaseNPMConfig(options = {}) { preset: 'es2015', }, - hoistTransitiveImports: false, - // don't add `"use strict"` to the top of cjs files strict: false, @@ -106,7 +104,7 @@ export function makeBaseNPMConfig(options = {}) { return false; } - return false; + return true; }, },