From f137ca92414c4bfe332b28b2ce6827c351758b24 Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Wed, 29 Jul 2026 14:34:47 +0200 Subject: [PATCH 1/3] ref(core): Tree-shake `spanStreamingIntegration` when tracing is disabled Co-Authored-By: Claude Opus 5 (1M context) --- packages/browser/src/sdk.ts | 3 +++ packages/core/src/server-runtime-client.ts | 3 +++ 2 files changed, 6 insertions(+) diff --git a/packages/browser/src/sdk.ts b/packages/browser/src/sdk.ts index 84f4940c8b41..4419b800591f 100644 --- a/packages/browser/src/sdk.ts +++ b/packages/browser/src/sdk.ts @@ -28,6 +28,8 @@ import { makeFetchTransport } from './transports/fetch'; import { normalizeStringifyValue } from './normalizeStringifyValue'; import { checkAndWarnIfIsEmbeddedBrowserExtension } from './utils/detectBrowserExtension'; +declare const __SENTRY_TRACING__: boolean; + /** Get the default integrations for the browser SDK. */ export function getDefaultIntegrations(_options: Options): Integration[] { /** @@ -120,6 +122,7 @@ export function init(options: BrowserOptions = {}): Client | undefined { }); if ( + (typeof __SENTRY_TRACING__ === 'undefined' || __SENTRY_TRACING__) && options.traceLifecycle !== 'static' && !integrations.some(integration => integration.name === SPAN_STREAMING_INTEGRATION_NAME) ) { diff --git a/packages/core/src/server-runtime-client.ts b/packages/core/src/server-runtime-client.ts index e0426e558ed3..159c4aeb3b93 100644 --- a/packages/core/src/server-runtime-client.ts +++ b/packages/core/src/server-runtime-client.ts @@ -28,6 +28,8 @@ export interface ServerRuntimeClientOptions extends ClientOptions i.name === SPAN_STREAMING_INTEGRATION_NAME) ) { From 5f02cef7765cc95d9cfa19787c8263a6253ebe9e Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Tue, 4 Aug 2026 18:49:29 +0200 Subject: [PATCH 2/3] add size-limit entry for tracing disabled flag --- .size-limit.js | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/.size-limit.js b/.size-limit.js index b775eaadb04f..971b6b575449 100644 --- a/.size-limit.js +++ b/.size-limit.js @@ -35,6 +35,31 @@ module.exports = [ return config; }, }, + { + name: '@sentry/browser - with treeshaking flags incl. tracing', + path: 'packages/browser/build/npm/esm/prod/index.js', + import: createImport('init'), + gzip: true, + limit: '34 KB', + disablePlugins: ['@size-limit/esbuild'], + modifyWebpackConfig: function (config) { + const webpack = require('webpack'); + + config.plugins.push( + new webpack.DefinePlugin({ + __SENTRY_DEBUG__: false, + __RRWEB_EXCLUDE_SHADOW_DOM__: true, + __RRWEB_EXCLUDE_IFRAME__: true, + __SENTRY_EXCLUDE_REPLAY_WORKER__: true, + __SENTRY_TRACING__: false, + }), + ); + + config.optimization.minimize = true; + + return config; + }, + }, { name: '@sentry/browser (incl. Tracing)', path: 'packages/browser/build/npm/esm/prod/index.js', From 0fe627d7ba8f835e65484fae64968cca83b58d65 Mon Sep 17 00:00:00 2001 From: Lukas Stracke Date: Tue, 4 Aug 2026 19:03:21 +0200 Subject: [PATCH 3/3] fix misleading size check name and adjust limit --- .size-limit.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.size-limit.js b/.size-limit.js index 971b6b575449..9dafaed4545e 100644 --- a/.size-limit.js +++ b/.size-limit.js @@ -36,11 +36,11 @@ module.exports = [ }, }, { - name: '@sentry/browser - with treeshaking flags incl. tracing', + name: '@sentry/browser - with treeshaking flags tracing without tracing', path: 'packages/browser/build/npm/esm/prod/index.js', import: createImport('init'), gzip: true, - limit: '34 KB', + limit: '32 KB', disablePlugins: ['@size-limit/esbuild'], modifyWebpackConfig: function (config) { const webpack = require('webpack');