Skip to content

import.meta.glob expansion cannot be observed from user land plugin since 7.1.2Β #373

@hi-ogawa

Description

@hi-ogawa

Describe the bug

  • main.js
console.log(import.meta.glob('./repro.js'));
  • vite.config
    {
      name: 'debug',
      enforce: 'post',
      transform: {
        order: 'post',
        handler(code, id) {
          if (id.includes('/main.js')) {
            console.log('[transform:post]', { id, code });
          }
        },
      },
    },
  • log on 7.1.1
$ vite build
...
[transform:post] {
  id: '/home/projects/vitejs-rolldown-vite-mtmswjfm/src/main.js',
  code: 'import { __vitePreload } from "\x00vite/preload-helper.js";console.log(/* #__PURE__ */ Object.assign({"./repro.js": () => __vitePreload(() => import("./repro.js"),__VITE_IS_MODERN__?__VITE_PRELOAD__:void 0)}));\n' +
    '\n' +
    "document.querySelector('#app').innerHTML = `hello`;\n"
}
  • log on 7.1.2
$ vite build
...
[transform:post] {
  id: '/home/projects/vitejs-rolldown-vite-mtmswjfm/src/main.js',
  code: "console.log(import.meta.glob('./repro.js'));\n" +
    '\n' +
    "document.querySelector('#app').innerHTML = `\n" +
    '  <div>\n' +
    '    <h1>Hello Vite!</h1>\n' +
    '  </div>\n' +
    '`;\n'
}

My use case is to use "post" transform to strip away all the code but import so that it can traverse the entire module graph faster during rsc scan build.

https://github.com/vitejs/vite-plugin-react/blob/71bb49c7fe5c8362426d59ee8a99ea660b631b66/packages/plugin-rsc/src/plugin.ts#L904-L921

Reproduction

https://stackblitz.com/edit/vitejs-rolldown-vite-mtmswjfm?file=vite.config.ts

Steps to reproduce

  • run vite build on stackblitz

System Info

System:
    OS: Linux 5.0 undefined
    CPU: (8) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 0 Bytes / 0 Bytes
    Shell: 1.0 - /bin/jsh
  Binaries:
    Node: 20.19.1 - /usr/local/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 10.8.2 - /usr/local/bin/npm
    pnpm: 8.15.6 - /usr/local/bin/pnpm
  npmPackages:
    rolldown-vite:  7.1.2

Used Package Manager

npm

Logs

No response

Validations

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions