Upgrading Vite-imagetools 5.0.8 throws an error from 4.x version
raul782 opened this issue · comments
When updating vite-imagetools to 5.0.8, trying to build a qwik project fails.
Here is the error:
npm run build.types
npm run build.client
npm run build.server
npm run lint
> qwind@0.113.0 build.client
> vite build
✘ [ERROR] "vite-imagetools" resolved to an ESM file. ESM file cannot be loaded by `require`. See http://vitejs.dev/guide/troubleshooting.html#this-package-is-esm-only for more details. [plugin externalize-deps]
node_modules/esbuild/lib/main.js:1373:27:
1373 │ let result = await callback({
╵ ^
at file:///Users/raul/var/www/foss/qwind/node_modules/vite/dist/node/chunks/dep-df561101.js:66190:35
at requestCallbacks.on-resolve (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:1373:28)
at handleRequest (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:729:19)
at handleIncomingPacket (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:755:7)
at Socket.readFromStdout (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:679:7)
at Socket.emit (node:events:513:28)
at addChunk (node:internal/streams/readable:324:12)
at readableAddChunk (node:internal/streams/readable:297:9)
at Readable.push (node:internal/streams/readable:234:10)
at Pipe.onStreamRead (node:internal/stream_base_commons:190:23)
This error came from the "onResolve" callback registered here:
node_modules/esbuild/lib/main.js:1292:20:
1292 │ let promise = setup({
╵ ^
at setup (file:///Users/raul/var/www/foss/qwind/node_modules/vite/dist/node/chunks/dep-df561101.js:66158:27)
at handlePlugins (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:1292:21)
at buildOrContextImpl (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:978:5)
at Object.buildOrContext (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:786:5)
at /Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:2177:15
at new Promise (<anonymous>)
at Object.build (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:2176:25)
at build (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:2025:51)
at bundleConfigFile (file:///Users/raul/var/www/foss/qwind/node_modules/vite/dist/node/chunks/dep-df561101.js:66109:26)
The plugin "externalize-deps" was triggered by this import
vite.config.ts:7:25:
7 │ import {imagetools} from "vite-imagetools";
╵ ~~~~~~~~~~~~~~~~~
failed to load config from /Users/raul/var/www/foss/qwind/vite.config.ts
error during build:
Error: Build failed with 1 error:
node_modules/esbuild/lib/main.js:1373:27: ERROR: [plugin: externalize-deps] "vite-imagetools" resolved to an ESM file. ESM file cannot be loaded by `require`. See http://vitejs.dev/guide/troubleshooting.html#this-package-is-esm-only for more details.
at failureErrorWithLog (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:1649:15)
at /Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:1058:25
at runOnEndCallbacks (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:1484:45)
at buildResponseToResult (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:1056:7)
at /Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:1085:16
at responseCallbacks.<computed> (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:703:9)
at handleIncomingPacket (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:762:9)
at Socket.readFromStdout (/Users/raul/var/www/foss/qwind/node_modules/esbuild/lib/main.js:679:7)
at Socket.emit (node:events:513:28)
at addChunk (node:internal/streams/readable:324:12)
You can reproduce by cloning this fork of the original repo
https://github.com/raul782/qwind/tree/imagetools-bug
npm run build
Following the recommendation to rename the config file to vite.config.mts
, only makes the exception be thrown later in the compilation process.
I understand that this newer version dropped support for CJS, but I don't see why the plugin externalize-app enters into play after the upgrade. It seems similar to this issue that was closed
Nvm 😞 I was missing adding package.json type: module
and fix my postcss.config.mjs to ESM format