Add source map upload for Remix 3
I maintainer di solito rispondono entro 1 giorno
@chargome ci sta già lavorando.
Dal 24/9/2026.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
Remix 3 has no build step and produces no output directory, so there is nothing on disk for a source map upload to read. Rebuild that artifact set by driving the app's own asset server.
- Add a command that imports the app's asset server module, forces the browser module graph, and writes each compiled module and its source map to a directory.
- Stamp each file with
//# debugId=and each map with adebugIdfield, sosentry-clican pair them. - Upload the directory.
This has to be its own bin, separate from the existing sentry-upload-sourcemaps. That one is the Remix 2 command, takes --buildPath and --urlPrefix, and assumes a build directory that Remix 3 never produces. It cannot be overloaded without breaking Remix 2 users. Name the new one consistently with the v3 subpaths, so it is obvious which Remix each belongs to.
Uploading goes through the Sentry CLI, via the sentry package that @sentry/remix already depends on for the Remix 2 command. It needs SENTRY_ORG, SENTRY_PROJECT and SENTRY_AUTH_TOKEN. Note the CLI requires authentication even for sourcemap inject, so no part of this can run unauthenticated in tests. That is why verifying against a real org is tracked separately.
getPreloads() is what forces compilation. The asset server compiles lazily, so without it only the few modules something happened to request get emitted, and the upload is quietly almost empty.
The command must run under our --import entry. Importing the app's asset server in a plain Node process builds an unpatched asset server, and the output carries no debug IDs at all. Warn loudly when no debug IDs are found, because that failure is otherwise silent.
Done when the emitted directory has one map per module, every pair shares a debug ID, and the emitted ID matches what the running server serves.
- Lingua principale
- TypeScript
- Stelle
- 8.7k
- Fork
- 1.9k
- Merge medio
- 1g 15h
- PR unite (30g)
- 495
Preparare l'ambiente
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di getsentry/sentry-javascript
-
Next.js: basePath is concatenated onto absolute router.push hrefs, corrupting navigation transaction namesForse già presa @Lms24 l’ha presa 4 giorni fa. ApertaBrowser Bug Next.js Traces
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
getsentry/sentry-javascript#24672 · 2 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
javascript
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
getsentry/sentry-javascript#24200 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
javascript Task
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
getsentry/sentry-javascript#24134 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Cloudflare Workers javascript Tests
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
getsentry/sentry-javascript#24051 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Bug Bun javascript
Difficoltà 2/5 1-3 ore Idoneità per principianti 92/100
getsentry/sentry-javascript#24045 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di getsentry/sentry-javascript
Issue simili
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
supabase/agent-skills#611 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 68/100
polka-codes/test#345 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 92/100
GoogleChromeLabs/project-sesame#217 ·
I maintainer di solito rispondono entro 12 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
solana-foundation/solana-com#2202 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100