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

Vite is seemingly creating empty/junk source maps when optimizing dependencies #17474

Open
7 tasks done
rschristian opened this issue Jun 14, 2024 · 2 comments
Open
7 tasks done

Comments

@rschristian
Copy link
Contributor

Describe the bug

When running a very basic Preact app (see reproduction), in FireFox (perhaps elsewhere too, unsure), users see warnings of No sources are declared in this source map and indeed, the optimized dependencies have empty generated source maps.

Warning & Source Map
Source map error: No sources are declared in this source map.
Resource URL: http://localhost:3000/node_modules/.vite/deps/preact.js?v=2552327c
Source Map URL: preact.js.map

Repeat this warning then for every dependency

node_modules/.vite/deps/preact.js.map

{
  "version": 3,
  "sources": [],
  "sourcesContent": [],
  "mappings": "",
  "names": []
}

I see nothing at this time that indicates an issue with Preact's source maps (and in fact, I see this same issue for modules that have no build step and, ergo, no source maps) though even if there was (and I'll keep looking), generating empty source maps like this creates a lot of noise with no value; I'd prefer if no source map was created at all at that point. Seeing 15 warnings of empty source maps is not very helpful.

Potentially related to #7767

Reproduction

https://stackblitz.com/edit/vitejs-vite-xbgtoq?file=src%2Fmain.jsx

Steps to reproduce

  1. Run npm install && npm run dev
  2. Run open node_modules/.vite/deps/preact.js.map
  3. See empty source map

System Info

System:
    OS: Linux 6.9 EndeavourOS
    CPU: (4) x64 AMD Ryzen 7 5800X 8-Core Processor
    Memory: 3.44 GB / 11.65 GB
    Container: Yes
    Shell: 5.9 - /usr/bin/zsh
  Binaries:
    Node: 22.2.0 - /usr/bin/node
    Yarn: 1.22.22 - /usr/bin/yarn
    npm: 10.8.1 - /usr/bin/npm
    pnpm: 9.3.0 - /usr/bin/pnpm
  Browsers:
    Chromium: 125.0.6422.141
  npmPackages:
    vite: ^5.2.2 => 5.3.0

Used Package Manager

npm

Logs

No response

Validations

Copy link

stackblitz bot commented Jun 14, 2024

Fix this issue in StackBlitz Codeflow Start a new pull request in StackBlitz Codeflow.

@bishonen
Copy link

Facing the same issue. Seems to appear randomly - closing and re-opening firefox leads to the warning being gone for some time. Anyone had some luck investigating what's the issue here?

From my project (which I can't share), it seems that vite might have a bad time if a dependencies code is imported - it then creates an empty sourceMap.

E.g.

CalendarSolid.js

import {
  CalendarSolid_default
} from "./chunk-TIHTYKJ6.js";
import "./chunk-47S77ZDT.js";
import "./chunk-UZRQJUKJ.js";
import "./chunk-NKBGLYTV.js";
import "./chunk-PLDDJCW6.js";
export {
  CalendarSolid_default as default
};

CalendarSolid.js.map

{
  "version": 3,
  "sources": [],
  "sourcesContent": [],
  "mappings": "",
  "names": []
}

My understanding is that CalendarSolid's source code is bundled with other components as part of some optimization, as that component is used a Component from the package, which I'm importing it from.
E.g. if material-ui has an icon and another component which uses that icon, vite might bundle both in the same file. Then, it still creates the sourceMap for the icon, but that is empty.

I was able to confirm this, by removing the import of that icon from within the package in which it lives, and at that point, vite had no troubles creating the sourceMap (as the source code for the icon, was present in the CalendarSolid.js file).

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

No branches or pull requests

2 participants