vite-plugin-wasm icon indicating copy to clipboard operation
vite-plugin-wasm copied to clipboard

Plugin always bundles Wasm as base64 when vitest is installed

Open willcrichton opened this issue 6 months ago • 3 comments

I have a Vite app, and I have Vitest installed. When I run vite build, my Wasm file is bundled as base64, even though I want it to be bundled as a URL. This line of code seems to be the problem:

https://github.com/Menci/vite-plugin-wasm/blob/f9718b9df29822010c81c0630f2cadce9fafc6fe/src/index.ts#L16

I guess the config plugins includes vitest even when I'm not using it?

willcrichton avatar Dec 17 '23 04:12 willcrichton

Oh... So how can I detect if it's actually running in Vitest environment?

Menci avatar Dec 17 '23 05:12 Menci

I don't know, sorry. Otherwise I would propose a fix :')

willcrichton avatar Dec 17 '23 05:12 willcrichton

I am having the same issue as @willcrichton and decided to do some more digging and believe that this is not the issue. You can run vite build --debug and it will print out the config with the list of plugins it is using and is the same array of values used in the line @willcrichton shows in the original post.

Not sure what the issue is, but my .wasm file made using wasm-pack --target web is also being inlined as a base64 string and I can't figure out what in Vite is doing it. It happens even without this plugin.