Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

code splitting build generates "empty" source map which causes a warning on Firefox #3945

Open
hi-ogawa opened this issue Oct 13, 2024 · 1 comment

Comments

@hi-ogawa
Copy link
Contributor

hi-ogawa commented Oct 13, 2024

Reproduction: esbuild try
Related issue on Vite: vitejs/vite#17474

As seen in the reproduction, when code splitting build outputs an entry which only re-exports from a common chunk, it generates an "empty" source map.

  • dist/entry1.js
import {
  entry1
} from "./chunk-PTJ7TEWR.js";
export {
  entry1
};
//# sourceMappingURL=entry1.js.map
  • dist/entry1.js.map
{
  "version": 3,
  "sources": [],
  "sourcesContent": [],
  "mappings": "",
  "names": []
}

I thought this behavior seems fine, but it looks like Firefox gives a warning in devtool console https://firefox-source-docs.mozilla.org/devtools-user/debugger/source_map_errors

Source map error: No sources are declared in this source map.
Resource URL: http://localhost:5173/node_modules/.vite/deps/preact.js?v=45e47ff9
Source Map URL: preact.js.map [Learn More]

Maybe this is something Firefox should tolerate, but I tested rolldown with a similar setup and found that it doesn't generate a source map for entry1.js for this specific case https://stackblitz.com/edit/vitejs-vite-npr539?file=dist%2Frolldown%2Fentry1.js, so I thought this could be handled on esbuild similarly.

@evanw
Copy link
Owner

evanw commented Oct 14, 2024

Huh. That's very silly that a valid source map generates a warning. I suppose I could try to have esbuild work around this warning in Firefox. Thanks for letting me know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants