Search code examples
tailwind-cssprettierpnpm

VSCode Prettier extension not working when using prettier.config.cjs with prettier-plugin-tailwindcss and pnpm


I want to sort tailwindcss classes so

  • Used prettier-plugin-tailwindcss and added prettier.config.cjs to root of the project as using pnpm package manager
  • VSCode Prettier extension v9.15.0
  • package.json prettier "prettier": "2.8.8",
  • package.json having "type": "module",
  • This is Typescript project

Getting following 2 errors:

Error 1: Error in editor

prettier.config.cjs error

Error 2: While saving any file

["ERROR" - 20:13:52] Error formatting document.
["ERROR" - 20:13:52] parse(a,m,f={}){let{context:s,generateRules:l}=dI(f),c=Wm(ws,e,f);c.astFormat in vv&&(f.printer=vv[c.astFormat]...<omitted>...d} could not be cloned.
DataCloneError: parse(a,m,f={}){let{context:s,generateRules:l}=dI(f),c=Wm(ws,e,f);c.astFormat in vv&&(f.printer=vv[c.astFormat]...<omitted>...d} could not be cloned.
    at new DOMException (node:internal/per_context/domexception:72:5)
    at Worker.postMessage (node:internal/worker:343:5)
    at t.PrettierWorkerInstance.callMethod (/home/rajbharti/.vscode-oss/extensions/esbenp.prettier-vscode-9.15.0/dist/extension.js:1:17460)
    at t.PrettierWorkerInstance.format (/home/rajbharti/.vscode-oss/extensions/esbenp.prettier-vscode-9.15.0/dist/extension.js:1:17078)
    at t.default.format (/home/rajbharti/.vscode-oss/extensions/esbenp.prettier-vscode-9.15.0/dist/extension.js:1:14808)
    at async t.PrettierEditProvider.provideEdits (/home/rajbharti/.vscode-oss/extensions/esbenp.prettier-vscode-9.15.0/dist/extension.js:1:11430)
    at async N.provideDocumentFormattingEdits (/usr/share/codium/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:101:52602)
["INFO" - 20:13:52] Formatting completed in 11ms.

I tried following:

  • Renamed file extension from prettier.config.js to prettier.config.cjs as was getting ES module error.
  • Added /* eslint-disable no-undef */ to disable editor error in prettier.config.cjs, but still getting formatting error for files when saving

Solution

  • Now it also works with v9.16.0.