Open ascott18 opened 2 years ago
Or, a bit more ambitiously, add a top level sourcemap setting that, if set, would supercede build.sourcemap, esbuild.sourcemap, build.rollupOptions.output.sourcemap* and css.devSourcemap
A single top-level sourcemap option to control all emitted source maps would be nice. Similar to Webpack's SourceMapDevToolPlugin which fulfills the same purpose there.
I'm especially hoping for a option to exclude assets by path regexp from emitting a source map, so that for example third-party chunks can be excluded.
I second this use case.
I was surprised to find the proposed setting didn't already exist in some form.
Basically you can't stop vite from changing your source JS files, in dev mode. And in production mode you have to constantly rebuild because vite build
won't.
So the better option is to use tsc -w
and python -m http.server
if you want your files intact...
I also need to disable it. Did anyone find a way to do this in the dev server ?
Description
Since vite produces modern javascript, sourcemaps in development are often unnecessary as there is no significant transpilation that would make debugging difficult without them.
On the other hand, sourcemaps are notoriously difficult to get correct, and if they're ever wrong then it can ruin the whole debugging experience.
While they can be turned off for individual components of vite (e.g.
esbuild.sourcemap
andcss.devSourcemap
), the dev server will still unconditionally inject sourcemaps from any plugin that produces them (like vite-plugin-vue2).Suggested solution
Add a setting
server.sourcemap
that can be set tofalse
to prevent the automatic injection of sourcemaps that happens here https://github.com/vitejs/vite/blob/ba62be40b4f46c98872fb10990b559fee88f4a29/packages/vite/src/node/server/send.ts#L59-L63.Or, a bit more ambitiously, add a top level
sourcemap
setting that, if set, would supercedebuild.sourcemap
,esbuild.sourcemap
,build.rollupOptions.output.sourcemap*
andcss.devSourcemap
. I realize that individual plugins could still inject their own inline sourcemaps into their emitted code, but having a single central setting for this would also encourage plugin authors to respect this setting.Alternative
Disabling sourcemaps in the browser dev tools can achieve this end, but this has a few problems:
Additional context
This would likely allow users to overcome (not a fix, but at least allow for a workaround) for the following issues:
Validations