You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If the issue is related to 1.x -> 2.0 upgrade, read the Migration Guide first.
Describe the bug
Browsing to a URL path that corresponds to an existing path relative to the file system root crashes Vite.
I.e. on a unix based file system going to http://localhost:3000/home tries to read the folder /home as a file, and going to http://localhost:3000/dev tries to read /dev as a file, instead of going to the index.html fallback.
This happens in v2.0.0 but not in v2.0.0-beta.70 or below.
vite:resolve 1ms /dev -> null +0ms
vite:load 2ms [fs] /dev +0ms
10:55:29 AM [vite] Internal server error: Failed to parse source for import analysis because the content contains invalid JS syntax. If you are using JSX, make sure to name the file with the .jsx or .tsx extension.
Plugin: vite:import-analysis
File: /dev
5 | ptyv3ip
ttyv4ip
ttyv5ipptyv5ipttyv6ipptyv6ipttyv7ipptyv7ipttyv8ipptyv8ipttyv9ipptyv9ipttyvaipptyvaipttyvbipptyvbipttyvcipptyvcipttyvdipptyvdipttyveip ptyveip!ttyvfip"ptyvfip#ttyw0ip$ptyw0ip%ttyw1ip&ptyw1ip'ttyw2ip(ptyw2ip)ttyw3ip*ptyw3ip+ttyw4ip,ptyw4ip-ttyw5ip.ptyw5ip/ttyw6ip0ptyw6ip1ttyw7ip2ptyw7ip3ttyw8ip4ptyw8ip5ttyw9ip6ptyw9ip7ttywaip8ptywaip9ttywbip:ptywbip;ttywcip<ptywcip=ttywdip>ptywdip?ttyweip@ptyweipAttywfipBptywfipCptmxipDbpf0ipEbpf1ipFbpf2ipGbpf3ipfseventsonIrandomsJurandomKdtraceL
dtracehelperlockstatperN
sdtsystraceperP machtraceerQ
fbtRprofileS
6 | afsc_type5rTdisk0ypUrdisk0pVdisk0s1rdisk0s15rXdisk0s2rdisk0s25rZdisk1s2[rdisk12\disk1s1rdisk1s15r^disk1s2rdisk1s25r`disk1s3rdisk1s35rbdisk1s5rdisk1s55rddisk1s4rdisk1s45rgxcpm1s4iio8log4io8logmt5rm
autofs_nowaitsautofs_notriggeru autofs_homedirmounterwautofs_controloy
HAX{ uart.BLTHtr}$cu.Bluetooth-Incoming-Port�$ty.Bluetooth-Incoming-Port?nsmb0ue�bpf4ue�ttys002�ttys003�ttys004�ttys005�ttys006�ttys007�ttys008�ttys009�ttys010�ttys011ttys012ttys013 ttys014
ttys016ttys017ttys000ttys001udisk21wrdisk2ydisk2s2rdisk2s2oot}disk2s1rdisk2s1oot!"kbfuse0#"kbfuse1%"kbfuse2'"kbfuse3)"kbfuse4+"kbfuse5-"kbfuse6/"kbfuse71"kbfuse83"kbfuse95kbfuse10oot7kbfuse11oot9kbfuse12oot;kbfuse13oot=kbfuse14oot?kbfuse15ootAkbfuse16ootCkbfuse17ootEkbfuse18ootGkbfuse19ootIkbfuse20ootKkbfuse21ootMkbfuse22ootOkbfuse23ootQkbfuse24ootSkbfuse25ootUkbfuse26ootWkbfuse27ootYkbfuse28oot[kbfuse29oot]kbfuse30oot_kbfuse31ootakbfuse32ootckbfuse33ootekbfuse34ootgkbfuse35ootikbfuse36ootkkbfuse37ootmkbfuse38ootokbfuse39ootqkbfuse40ootskbfuse41ootukbfuse42ootwkbfuse43ootykbfuse44oot{kbfuse45oot}kbfuse46oot�kbfuse47oot�kbfuse48oot�kbfuse49oot�kbfuse50oot�kbfuse51oot�kbfuse52oot�kbfuse53oot�kbfuse54oot�kbfuse55oot�kbfuse56oot�kbfuse57oot�kbfuse58oot�kbfuse59oot�kbfuse60oot�kbfuse61oot�kbfuse62oot�kbfuse63oot
| ^
at formatError (/Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:45689:46)
at TransformContext.error (/Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:45685:19)
at TransformContext.transform (/Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:47141:22)
at async Object.transform (/Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:45887:30)
at async transformRequest (/Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:61450:29)
at async /Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:61552:32
The text was updated successfully, but these errors were encountered:
Describe the bug
Browsing to a URL path that corresponds to an existing path relative to the file system root crashes Vite.
I.e. on a unix based file system going to
http://localhost:3000/home
tries to read the folder/home
as a file, and going tohttp://localhost:3000/dev
tries to read/dev
as a file, instead of going to theindex.html
fallback.This happens in
v2.0.0
but not inv2.0.0-beta.70
or below.Reproduction
https://github.com/joakimbeng/vite-crash
System Info
vite
version: v2.0.0Logs (Optional if provided reproduction)
`vite --debug` output
vite:config bundled config file loaded in 69ms +0ms
vite:config using resolved config: {
vite:config root: '/Users/joakim/Dev/@joakimbeng/vite-crash/src',
vite:config server: {},
vite:config configFile: '/Users/joakim/Dev/@joakimbeng/vite-crash/vite.config.js',
vite:config inlineConfig: {
vite:config root: undefined,
vite:config base: undefined,
vite:config mode: undefined,
vite:config configFile: undefined,
vite:config logLevel: undefined,
vite:config clearScreen: undefined,
vite:config server: {}
vite:config },
vite:config base: '/',
vite:config resolve: { dedupe: undefined, alias: [ [Object] ] },
vite:config publicDir: '/Users/joakim/Dev/@joakimbeng/vite-crash/src/public',
vite:config command: 'serve',
vite:config mode: 'development',
vite:config isProduction: false,
vite:config optimizeCacheDir: '/Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/.vite',
vite:config plugins: [
vite:config 'vite:pre-alias',
vite:config 'alias',
vite:config 'vite:dynamic-import-polyfill',
vite:config 'vite:resolve',
vite:config 'vite:html',
vite:config 'vite:css',
vite:config 'vite:esbuild',
vite:config 'vite:json',
vite:config 'vite:wasm',
vite:config 'vite:worker',
vite:config 'vite:asset',
vite:config 'vite:define',
vite:config 'vite:css-post',
vite:config 'vite:client-inject',
vite:config 'vite:import-analysis'
vite:config ],
vite:config build: {
vite:config target: [ 'es2019', 'edge16', 'firefox60', 'chrome61', 'safari11' ],
vite:config polyfillDynamicImport: true,
vite:config outDir: 'dist',
vite:config assetsDir: 'assets',
vite:config assetsInlineLimit: 4096,
vite:config cssCodeSplit: true,
vite:config sourcemap: false,
vite:config rollupOptions: {},
vite:config commonjsOptions: { include: [Array], extensions: [Array] },
vite:config minify: 'terser',
vite:config terserOptions: {},
vite:config cleanCssOptions: {},
vite:config write: true,
vite:config emptyOutDir: null,
vite:config manifest: false,
vite:config lib: false,
vite:config ssr: false,
vite:config ssrManifest: false,
vite:config brotliSize: true,
vite:config chunkSizeWarningLimit: 500
vite:config },
vite:config env: { BASE_URL: '/', MODE: 'development', DEV: true, PROD: false },
vite:config assetsInclude: [Function: assetsInclude],
vite:config logger: {
vite:config hasWarned: false,
vite:config info: [Function: info],
vite:config warn: [Function: warn],
vite:config error: [Function: error],
vite:config clearScreen: [Function: clearScreen]
vite:config },
vite:config createResolver: [Function: createResolver]
vite:config } +5ms
vite:deps Hash is consistent. Skipping. Use --force to override. +0ms
⚡ Vite dev server running at:
ready in 253ms.
vite:resolve 1ms /dev -> null +0ms
vite:load 2ms [fs] /dev +0ms
10:55:29 AM [vite] Internal server error: Failed to parse source for import analysis because the content contains invalid JS syntax. If you are using JSX, make sure to name the file with the .jsx or .tsx extension.
Plugin: vite:import-analysis
File: /dev
5 | ptyv3ip
ttyv4ip
ttyv5ipptyv5ipttyv6ipptyv6ipttyv7ipptyv7ipttyv8ipptyv8ipttyv9ipptyv9ipttyvaipptyvaipttyvbipptyvbipttyvcipptyvcipttyvdipptyvdipttyveip ptyveip!ttyvfip"ptyvfip#ttyw0ip$ptyw0ip%ttyw1ip&ptyw1ip'ttyw2ip(ptyw2ip)ttyw3ip*ptyw3ip+ttyw4ip,ptyw4ip-ttyw5ip.ptyw5ip/ttyw6ip0ptyw6ip1ttyw7ip2ptyw7ip3ttyw8ip4ptyw8ip5ttyw9ip6ptyw9ip7ttywaip8ptywaip9ttywbip:ptywbip;ttywcip<ptywcip=ttywdip>ptywdip?ttyweip@ptyweipAttywfipBptywfipCptmxipDbpf0ipEbpf1ipFbpf2ipGbpf3ipfseventsonIrandomsJurandomKdtraceL
dtracehelperlockstatperN
sdtsystraceperP machtraceerQ
fbtRprofileS
6 | afsc_type5rTdisk0ypUrdisk0pVdisk0s1rdisk0s15rXdisk0s2rdisk0s25rZdisk1s2[rdisk12\disk1s1rdisk1s15r^disk1s2rdisk1s25r`disk1s3rdisk1s35rbdisk1s5rdisk1s55rddisk1s4rdisk1s45rgxcpm1s4iio8log4io8logmt5rm
autofs_nowaitsautofs_notriggeru autofs_homedirmounterwautofs_controloy
HAX{ uart.BLTHtr}$cu.Bluetooth-Incoming-Port�$ty.Bluetooth-Incoming-Port?nsmb0ue�bpf4ue�ttys002�ttys003�ttys004�ttys005�ttys006�ttys007�ttys008�ttys009�ttys010�ttys011ttys012ttys013 ttys014
ttys016ttys017ttys000ttys001udisk21wrdisk2ydisk2s2rdisk2s2oot}disk2s1rdisk2s1oot!"kbfuse0#"kbfuse1%"kbfuse2'"kbfuse3)"kbfuse4+"kbfuse5-"kbfuse6/"kbfuse71"kbfuse83"kbfuse95kbfuse10oot7kbfuse11oot9kbfuse12oot;kbfuse13oot=kbfuse14oot?kbfuse15ootAkbfuse16ootCkbfuse17ootEkbfuse18ootGkbfuse19ootIkbfuse20ootKkbfuse21ootMkbfuse22ootOkbfuse23ootQkbfuse24ootSkbfuse25ootUkbfuse26ootWkbfuse27ootYkbfuse28oot[kbfuse29oot]kbfuse30oot_kbfuse31ootakbfuse32ootckbfuse33ootekbfuse34ootgkbfuse35ootikbfuse36ootkkbfuse37ootmkbfuse38ootokbfuse39ootqkbfuse40ootskbfuse41ootukbfuse42ootwkbfuse43ootykbfuse44oot{kbfuse45oot}kbfuse46oot�kbfuse47oot�kbfuse48oot�kbfuse49oot�kbfuse50oot�kbfuse51oot�kbfuse52oot�kbfuse53oot�kbfuse54oot�kbfuse55oot�kbfuse56oot�kbfuse57oot�kbfuse58oot�kbfuse59oot�kbfuse60oot�kbfuse61oot�kbfuse62oot�kbfuse63oot
| ^
at formatError (/Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:45689:46)
at TransformContext.error (/Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:45685:19)
at TransformContext.transform (/Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:47141:22)
at async Object.transform (/Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:45887:30)
at async transformRequest (/Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:61450:29)
at async /Users/joakim/Dev/@joakimbeng/vite-crash/node_modules/vite/dist/node/chunks/dep-9bcbff8e.js:61552:32
The text was updated successfully, but these errors were encountered: