getsentry / getsentry/sentry-javascript

Deno's export surface is narrower than Cloudflare's

Open Beginner friendly
#23,896 1 comment 0 reactions 0 assignees View on GitHub
Deno javascript
Dominant language
TypeScript
Stars
8.7k
Forks
1.8k
Avg merge
1d 17h
Merged PRs (30d)
515

Description

Cloudflare runs on workerd with no Node APIs, and still exports more than Deno. Missing from `packages/deno/src/index.ts` but present in `packages/cloudflare/src/index.ts`:

| Missing from Deno | Comes from |
| -- | -- |
| `instrumentOpenAiClient`, `instrumentAnthropicAiClient`, `instrumentGoogleGenAIClient`, `instrumentLangChainEmbeddings`, `instrumentStateGraph`, `createLangChainCallbackHandler`, `instrumentCreateReactAgent` | `@sentry/server-utils` (already a dependency) |
| `prismaIntegration` | `@sentry/server-utils` |
| `trpcMiddleware`, `addIntegration`, `withActiveSpan`, `getSpanDescendants`, `setConversationId`, `parameterize`, `consoleIntegration`, `createConsolaReporter`, `growthbookIntegration`, `updateSpanName` | `@sentry/core` |
| `spotlightIntegration`, `httpServerIntegration` | needs a decision, may not apply |
| `initWithoutDefaultIntegrations`, `getDefaultIntegrationsWithoutPerformance` | Node and Bun both have these |

The manual AI-client helpers matter most. They are the documented fallback for when channel injection is unavailable, which per D2 is Deno's default state.

**Work item.** Add the `@sentry/core` and `@sentry/server-utils` re-exports. They are pure re-exports with no new code. Add `initWithoutDefaultIntegrations` to `deno/src/sdk.ts`.

**Prior art ***(related history only)*. No issue. Related history: [#22306]() (closed) covered pulling the integrations themselves into Deno, and the `feat(deno): add * integration` series (#22448 through #22472, all merged) added them one by one. The manual `instrument*Client` helpers were never part of that sweep.

Contributor guide

Open the contributing guide

Research direction

Compare packages/deno/src/index.ts with packages/cloudflare/src/index.ts and inspect deno/src/sdk.ts first. Done means the requested @sentry/core and @sentry/server-utils re-exports are present and initWithoutDefaultIntegrations is exposed from the Deno SDK; spotlightIntegration and httpServerIntegration remain undecided.

Written by the indexing model from the issue text.

Assessment

Tech stack
deno, typescript
Domain
backend
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
84/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.