From 318970955d4f11d7feebd0701b3a32b79e08a597 Mon Sep 17 00:00:00 2001 From: "sentry-junior[bot]" <264270552+sentry-junior[bot]@users.noreply.github.com> Date: Mon, 12 Oct 2026 14:56:21 +0000 Subject: [PATCH] fix(v10/hono): Expose runtime-specific SDK options Backport of: #25290 --- packages/hono/src/bun/middleware.ts | 5 +++-- packages/hono/src/cloudflare/middleware.ts | 6 +++--- packages/hono/src/deno/middleware.ts | 5 +++-- packages/hono/src/node/middleware.ts | 5 +++-- packages/hono/test/bun/middleware.test.ts | 6 ++++-- packages/hono/test/cloudflare/middleware.test.ts | 8 ++++++-- packages/hono/test/deno/middleware.test.ts | 6 ++++-- packages/hono/test/node/sdk.test.ts | 4 ++++ 8 files changed, 30 insertions(+), 15 deletions(-) diff --git a/packages/hono/src/bun/middleware.ts b/packages/hono/src/bun/middleware.ts index 6a1fbaf5a53e..f5044bc92fd5 100644 --- a/packages/hono/src/bun/middleware.ts +++ b/packages/hono/src/bun/middleware.ts @@ -1,4 +1,5 @@ -import { type BaseTransportOptions, debug, type Options } from '@sentry/core'; +import type { BunOptions } from '@sentry/bun'; +import { debug } from '@sentry/core'; import { init } from './sdk'; import { getConnInfo } from 'hono/bun'; import type { Env, Hono, MiddlewareHandler } from 'hono'; @@ -6,7 +7,7 @@ import { requestHandler, responseHandler } from '../shared/middlewareHandlers'; import { applyPatches } from '../shared/applyPatches'; import type { SentryHonoMiddlewareOptions } from '../shared/types'; -export interface HonoBunOptions extends Options, SentryHonoMiddlewareOptions {} +export interface HonoBunOptions extends BunOptions, SentryHonoMiddlewareOptions {} /** * Sentry middleware for Hono running in a Bun runtime environment. diff --git a/packages/hono/src/cloudflare/middleware.ts b/packages/hono/src/cloudflare/middleware.ts index 69f1c029ac02..4ff5167f4bc1 100644 --- a/packages/hono/src/cloudflare/middleware.ts +++ b/packages/hono/src/cloudflare/middleware.ts @@ -1,5 +1,5 @@ -import { withSentry } from '@sentry/cloudflare'; -import { applySdkMetadata, type BaseTransportOptions, debug, type Options } from '@sentry/core'; +import { withSentry, type CloudflareOptions } from '@sentry/cloudflare'; +import { applySdkMetadata, debug } from '@sentry/core'; import { getConnInfo } from 'hono/cloudflare-workers'; import type { Env, Hono, MiddlewareHandler } from 'hono'; import { buildFilteredIntegrations } from '../shared/buildFilteredIntegrations'; @@ -8,7 +8,7 @@ import { requestHandler, responseHandler } from '../shared/middlewareHandlers'; import { applyPatches } from '../shared/applyPatches'; import type { SentryHonoMiddlewareOptions } from '../shared/types'; -export interface HonoCloudflareOptions extends Options, SentryHonoMiddlewareOptions {} +export interface HonoCloudflareOptions extends CloudflareOptions, SentryHonoMiddlewareOptions {} /** * Sentry middleware for Hono on Cloudflare Workers. diff --git a/packages/hono/src/deno/middleware.ts b/packages/hono/src/deno/middleware.ts index 081589925ee1..1466859dd94f 100644 --- a/packages/hono/src/deno/middleware.ts +++ b/packages/hono/src/deno/middleware.ts @@ -1,4 +1,5 @@ -import { type BaseTransportOptions, debug, type Options } from '@sentry/core'; +import { debug } from '@sentry/core'; +import type { DenoOptions } from '@sentry/deno'; import { init } from './sdk'; import type { Env, Hono, MiddlewareHandler } from 'hono'; import { getConnInfo } from 'hono/deno'; @@ -6,7 +7,7 @@ import { requestHandler, responseHandler } from '../shared/middlewareHandlers'; import { applyPatches } from '../shared/applyPatches'; import type { SentryHonoMiddlewareOptions } from '../shared/types'; -export interface HonoDenoOptions extends Options, SentryHonoMiddlewareOptions {} +export interface HonoDenoOptions extends DenoOptions, SentryHonoMiddlewareOptions {} /** * Sentry middleware for Hono running in a Deno runtime environment. diff --git a/packages/hono/src/node/middleware.ts b/packages/hono/src/node/middleware.ts index b46dfbbac489..0aaeb9604f61 100644 --- a/packages/hono/src/node/middleware.ts +++ b/packages/hono/src/node/middleware.ts @@ -1,11 +1,12 @@ -import { type BaseTransportOptions, consoleSandbox, debug, getClient, type Options } from '@sentry/core'; +import { consoleSandbox, debug, getClient } from '@sentry/core'; +import type { NodeOptions } from '@sentry/node'; import { getConnInfo } from '@hono/node-server/conninfo'; import type { Env, Hono, MiddlewareHandler } from 'hono'; import { requestHandler, responseHandler } from '../shared/middlewareHandlers'; import { applyPatches } from '../shared/applyPatches'; import type { SentryHonoMiddlewareOptions } from '../shared/types'; -export interface HonoNodeOptions extends Options {} +export interface HonoNodeOptions extends NodeOptions {} /** * Sentry middleware for Hono applications running in a Node.js environment. diff --git a/packages/hono/test/bun/middleware.test.ts b/packages/hono/test/bun/middleware.test.ts index 50f70a77883e..38bb8defa4e9 100644 --- a/packages/hono/test/bun/middleware.test.ts +++ b/packages/hono/test/bun/middleware.test.ts @@ -2,7 +2,7 @@ import * as SentryCore from '@sentry/core'; import { SDK_VERSION } from '@sentry/core'; import { Hono } from 'hono'; import { beforeEach, describe, expect, it, type Mock, vi } from 'vitest'; -import { sentry } from '../../src/bun/middleware'; +import { sentry, type HonoBunOptions } from '../../src/bun/middleware'; import { init } from '../../src/bun/sdk'; import { LOW_QUALITY_TRANSACTION_PATTERNS } from '../../src/shared/lowQualityTransactionPatterns'; @@ -102,7 +102,8 @@ describe('Hono Bun Middleware', () => { sampleRate: 0.5, tracesSampleRate: 1.0, debug: true, - }; + skipOpenTelemetrySetup: false, + } satisfies HonoBunOptions; sentry(app, options); @@ -113,6 +114,7 @@ describe('Hono Bun Middleware', () => { sampleRate: 0.5, tracesSampleRate: 1.0, debug: true, + skipOpenTelemetrySetup: false, }), ); }); diff --git a/packages/hono/test/cloudflare/middleware.test.ts b/packages/hono/test/cloudflare/middleware.test.ts index ea09300f3d96..64ca4056577b 100644 --- a/packages/hono/test/cloudflare/middleware.test.ts +++ b/packages/hono/test/cloudflare/middleware.test.ts @@ -3,7 +3,7 @@ import * as SentryCore from '@sentry/core'; import { SDK_VERSION } from '@sentry/core'; import { Hono } from 'hono'; import { beforeEach, describe, expect, it, type Mock, vi } from 'vitest'; -import { sentry } from '../../src/cloudflare/middleware'; +import { sentry, type HonoCloudflareOptions } from '../../src/cloudflare/middleware'; import { LOW_QUALITY_TRANSACTION_PATTERNS } from '../../src/shared/lowQualityTransactionPatterns'; vi.mock('@sentry/cloudflare', { spy: true }); @@ -82,7 +82,9 @@ describe('Hono Cloudflare Middleware', () => { sampleRate: 0.5, tracesSampleRate: 1.0, debug: true, - }; + skipOpenTelemetrySetup: false, + rpcTracePropagationBindings: ['ORDERS'], + } satisfies HonoCloudflareOptions; sentry(app, options); @@ -95,6 +97,8 @@ describe('Hono Cloudflare Middleware', () => { sampleRate: 0.5, tracesSampleRate: 1.0, debug: true, + skipOpenTelemetrySetup: false, + rpcTracePropagationBindings: ['ORDERS'], }); }); diff --git a/packages/hono/test/deno/middleware.test.ts b/packages/hono/test/deno/middleware.test.ts index a6caa2d44455..1254ab6fa9ea 100644 --- a/packages/hono/test/deno/middleware.test.ts +++ b/packages/hono/test/deno/middleware.test.ts @@ -2,7 +2,7 @@ import * as SentryCore from '@sentry/core'; import { SDK_VERSION } from '@sentry/core'; import { Hono } from 'hono'; import { beforeEach, describe, expect, it, type Mock, vi } from 'vitest'; -import { sentry } from '../../src/deno/middleware'; +import { sentry, type HonoDenoOptions } from '../../src/deno/middleware'; import { init } from '../../src/deno/sdk'; import { LOW_QUALITY_TRANSACTION_PATTERNS } from '../../src/shared/lowQualityTransactionPatterns'; @@ -102,7 +102,8 @@ describe('Hono Deno Middleware', () => { sampleRate: 0.5, tracesSampleRate: 1.0, debug: true, - }; + skipOpenTelemetrySetup: true, + } satisfies HonoDenoOptions; sentry(app, options); @@ -113,6 +114,7 @@ describe('Hono Deno Middleware', () => { sampleRate: 0.5, tracesSampleRate: 1.0, debug: true, + skipOpenTelemetrySetup: true, }), ); }); diff --git a/packages/hono/test/node/sdk.test.ts b/packages/hono/test/node/sdk.test.ts index 58c83bba0d69..40174f3b2279 100644 --- a/packages/hono/test/node/sdk.test.ts +++ b/packages/hono/test/node/sdk.test.ts @@ -84,6 +84,8 @@ describe('Hono Node SDK – init()', () => { sampleRate: 0.5, tracesSampleRate: 1.0, debug: true, + skipOpenTelemetrySetup: false, + transportOptions: { proxy: 'http://proxy.example.com:8080' }, }); expect(initNodeMock).toHaveBeenCalledWith( @@ -92,6 +94,8 @@ describe('Hono Node SDK – init()', () => { sampleRate: 0.5, tracesSampleRate: 1.0, debug: true, + skipOpenTelemetrySetup: false, + transportOptions: { proxy: 'http://proxy.example.com:8080' }, }), ); });