hono: Double `init()` behaves differently per runtime
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 76/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- bun, deno, nodejs, typescript
- Bereich
- backend, observability
Rechercherichtung
Beginne mit hono/src/node/sdk.ts:15 und vergleiche es mit hono/src/bun/sdk.ts:17 und hono/src/deno/sdk.ts:17; ermittle anschließend den vierten Runtime-Eintrag. Überprüfe das Initialisierungs- und Warnverhalten über alle vier Einträge hinweg. Die Aufgabe ist abgeschlossen, wenn jede Runtime bei einem zweiten init warnt und dabei den bestehenden Client beibehält und zurückgibt, anstatt ihn zu ersetzen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
node : same client after 2nd init? true | release now: 1.0.0
bun : same client after 2nd init? false | release now: 2.0.0
(plus a console warning)
hono/src/node/sdk.ts:15 returns the existing client and skips re-initialization. hono/src/bun/sdk.ts:17 and hono/src/deno/sdk.ts:17 warn and then re-initialize anyway, replacing the client. Anything buffered on the first client is dropped, and its integrations stay installed against a dead client.
The Hono docs tell users to init through the sentry() middleware, so a user who also calls Sentry.init() hits exactly this path.
Work item. Make all four entries behave the same way. Returning the existing client (the Node behavior) is the safer default. Keep the loud warning from bun/deno on all of them.
**Prior art **#21176 asked for the Bun middleware to follow the Node pattern. getsentry/sentry-javascript#21195 closed it by adding the warning only. The behavior divergence this item describes is what is left over: bun and deno warn and then re-initialize anyway.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 8.7k
- Forks
- 1.9k
- Ø Merge
- 1 T. 17 Std.
- Gemergte PRs (30 T.)
- 543
Entwicklungsumgebung
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus getsentry/sentry-javascript
-
Browser Bug Next.js Traces
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
getsentry/sentry-javascript#24672 · 2 Kommentare · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
javascript
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
getsentry/sentry-javascript#24200 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
javascript Task
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
getsentry/sentry-javascript#24134 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Cloudflare Workers javascript Tests
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
getsentry/sentry-javascript#24051 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Bug Bun javascript
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 92/100
getsentry/sentry-javascript#24045 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in getsentry/sentry-javascript
Ähnliche Issues
-
docs
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 68/100
remix-run/react-router#15558 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
solana-foundation/pay-kit#341 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 88/100
supabase/agent-skills#607 ·
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag