crxjs / chrome-extension-tools

Bundling Chrome Extensions can be pretty complex. It doesn't have to be.
https://crxjs.dev/vite-plugin
2.71k stars 181 forks source link

Path contains invalid characters #907

Open andriy-panchiy opened 1 month ago

andriy-panchiy commented 1 month ago

Build tool

Vite

Where do you see the problem?

Describe the bug

I get a path error where for some reason the wrong path is returned to me:

Path contains invalid characters: E:/programming/github/andriy-panchiy/crx-bug-report-repo/E:\programming\github\andriy-panchiy\crx-bug-report-repo\dist/content

Reproduction

https://github.com/andriy-panchiy/crx-bug-report-repo

Logs

PS E:\programming\github\chromane\wildhero-chrome-extension> npm run dev

> wildhero@1.1.8 dev
> run-s clean && vite --config vite.config.dev.ts

> wildhero@1.1.8 clean
> run-p clean:*

> wildhero@1.1.8 clean:dist
> rimraf dist

> wildhero@1.1.8 clean:dist_firefox
> rimraf dist_firefox

[vite-plugin-static-copy] Collected 2 items.

  VITE v4.5.3  ready in 649 ms

  ➜  Local:   http://localhost:5173/
  ➜  Network: use --host to expose
  ➜  press h to show help
E:\programming\github\chromane\wildhero-chrome-extension\node_modules\@crxjs\vite-plugin\node_modules\fs-extra\lib\mkdirs\utils.js:16
      const error = new Error(`Path contains invalid characters: ${pth}`)
                    ^

Error: Path contains invalid characters: E:/programming/github/chromane/wildhero-chrome-extension/E:\programming\github\chromane\wildhero-chrome-extension\dist/content
    at checkPath (E:\programming\github\chromane\wildhero-chrome-extension\node_modules\@crxjs\vite-plugin\node_modules\fs-extra\lib\mkdirs\utils.js:16:21)
    at module.exports.makeDir (E:\programming\github\chromane\wildhero-chrome-extension\node_modules\@crxjs\vite-plugin\node_modules\fs-extra\lib\mkdirs\make-dir.js:12:3)
    at Object.<anonymous> (E:\programming\github\chromane\wildhero-chrome-extension\node_modules\universalify\index.js:21:10)
    at E:\programming\github\chromane\wildhero-chrome-extension\node_modules\@crxjs\vite-plugin\node_modules\fs-extra\lib\output-file\index.js:20:11
    at E:\programming\github\chromane\wildhero-chrome-extension\node_modules\universalify\index.js:21:38 {
  code: 'EINVAL'
}

Node.js v21.5.0

System Info

System:
  OS: Windows 10 10.0.19045
  CPU: (20) x64 Intel(R) Core(TM) i9-10850K CPU @ 3.60GHz
  Memory: 12.42 GB / 31.92 GB
Binaries:
  Node: 21.5.0 - C:\Program Files\nodejs\node.EXE
  Yarn: 1.22.22 - C:\Program Files\nodejs\yarn.CMD
  npm: 10.8.1 - C:\Program Files\nodejs\npm.CMD
  pnpm: 8.11.0 - ~\AppData\Local\pnpm\pnpm.EXE
Browsers:
  Edge: Chromium (126.0.2592.102)
  Internet Explorer: 11.0.19041.4355

Severity

blocking all usage of RPCE

Toumash commented 1 month ago

No idea if thats related but one thing i see is that the dist folder is defined differently from others outDir: normalizePath(resolve(__dirname, 'dist')), as folder instead of ./folder for instance '@': normalizePath(resolve(__dirname, './')),