TanStackT
TanStack2y ago
21 replies
skinny-azure

Error using codemod when upgrading to V5

Hi,
I decided to migrate from v4 to v5, and I was trying to use the following "TS" codemod:
npx jscodeshift@latest ./path/to/src/ \
  --extensions=ts,tsx \
  --parser=tsx \
  --transform=./node_modules/@tanstack/react-query/build/codemods/src/v5/remove-overloads/remove-overloads.js


(yes, I put the correct path to src when I ran it)

I'm getting the following errors:
Error [ERR_REQUIRE_ESM]: require() of ES Module .../node_modules/@tanstack/react-query/build/codemods/src/v5/remove-overloads/remove-overloads.js from ...npm/_npx/a3dac9416cb5dcf1/node_modules/jscodeshift/src/Worker.js not supported.
remove-overloads.js is treated as an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which declares all .js files in that package scope as ES modules. Instead rename remove-overloads.js to end in .cjs, change the requiring code to use dynamic import() which is available in all CommonJS modules, or change "type": "module" to "type": "commonjs" in /Users/nadavschwartz/Documents/GitHub/mindLabs-website/node_modules/@tanstack/react-query/package.json to treat all .js files as CommonJS (using .mjs for all ES modules instead).


This error repeats dozens of times, and eventually the script stops with no updates/changes and the following output:
Node.js v18.18.2
All done. 
Results: 
0 errors
0 unmodified
0 skipped
0 ok
Time elapsed: 0.320seconds 


I'm using Nextjs + TS if it makes any difference
Was this page helpful?