getsentry / getsentry/sentry-javascript

Elysia on Node reports `runtime: {name: 'bun', version: 'unknown'}`

Aperta Adatta ai principianti
#24,047 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Bug Bun javascript
Lingua principale
TypeScript
Stelle
8.7k
Fork
1.8k
Merge medio
1g 17h
PR unite (30g)
523

Descrizione

`elysia/src/sdk.ts:46` sets `runtime: getRuntime()`, which correctly returns `{name:'node'}` off Bun. Then `bun/src/sdk.ts:145` spreads the user options and overwrites `runtime` with its own hard-coded Bun value. Every Elysia-on-Node event is attributed to the wrong runtime. There is an `elysia-node` e2e app, so this configuration is supported.

**Work item** Make `bun/src/sdk.ts:148` respect a caller-supplied `runtime` (only default it when absent), matching `packages/node/src/sdk/client.ts:47`. Assert both runtimes in the Bun tests, and again in the Elysia tests.

**Prior art**: [#19269]() is the same bug one layer up: "`NodeClient` always overrides runtime context to 'node', ignoring Bun SDK's runtime option". It was fixed by making `NodeClient` respect a caller-supplied value, which is now `packages/node/src/sdk/client.ts:47`:

```ts
runtime: options.runtime || { name: 'node', version: global.process.version },
```

`packages/bun/src/sdk.ts:145` still does the unconditional override that #19269 removed from `NodeClient`, so any SDK wrapping `@sentry/bun` hits it. Apply the same one-line remedy there.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Start with packages/bun/src/sdk.ts:145-148 and compare its runtime handling with packages/node/src/sdk/client.ts:47. Update the Bun tests and the elysia-node e2e tests to assert both runtime values, including a caller-supplied runtime. Done means Elysia on Node reports Node while Bun still reports Bun.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
typescript
Ambito
backend
Tipo di issue
Bug
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Attiva
Chiarezza
Specificata chiaramente
Idoneità per principianti
88/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.