linaria icon indicating copy to clipboard operation
linaria copied to clipboard

[vite] Internal server error: ENOENT: no such file or directory, open 'D:\@react-refresh'

Open DannyloAlves opened this issue 4 months ago • 3 comments

Environment

  • Linaria version: 6.3.0
  • Bundler (+ version): Vite 7.1.9
  • Node.js version: 24.10.0
  • OS: Windows 10 Pro

Description

Whenever I install linaria + vite and save the project when it is running, the following error occurs on terminal:

[vite] Internal server error: ENOENT: no such file or directory, open 'D:@react-refresh'

Image

And the following error occurs in the browser:

[plugin:wyw-in-js] ENOENT: no such file or directory, open 'D:@react-refresh'

Image

Reproducible Demo

Install Vite: npm create vite@latest .

Install Linaria: npm install @linaria/core @linaria/react @wyw-in-js/babel-preset

Install WyW-in-JS plugin for Vite: npm i -D @wyw-in-js/vite

Configure WyW-in-JS plugin for Vite:

import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import wyw from '@wyw-in-js/vite';

// https://vite.dev/config/
export default defineConfig({
  plugins: [
    react(),
    wyw(),
  ],
})

I edit a simple template:

import { styled } from "@linaria/react"

const Container = styled.div`
  background-color: orange;
`;

function App() {
  return (
    <Container>
      Hello World
    </Container>
  )
}

export default App

I execute: npm run dev

Everything works normally, but if I modify the code and save the project when it is running, the following error occurs in the terminal:

manually calling optimizeDeps is deprecated. This is done automatically and does not need to be called manually.
12:58:49 AM [vite] (client) hmr update /src/App.jsx
12:58:49 AM [vite] Internal server error: ENOENT: no such file or directory, open 'D:\@react-refresh'
  Plugin: wyw-in-js
  File: D:/Users/seth/Desktop/clonetest/src/App.jsx
      at Object.readFileSync (node:fs:440:20)
      at TransformCacheCollection.invalidateIfChanged (D:\Users\seth\Desktop\clonetest\node_modules\@wyw-in-js\transform\lib\cache.js:89:53)
      at Entrypoint.innerCreate (D:\Users\seth\Desktop\clonetest\node_modules\@wyw-in-js\transform\lib\transform\Entrypoint.js:104:54)
      at D:\Users\seth\Desktop\clonetest\node_modules\@wyw-in-js\transform\lib\transform\Entrypoint.js:85:47
      at EventEmitter.perf (D:\Users\seth\Desktop\clonetest\node_modules\@wyw-in-js\transform\lib\utils\EventEmitter.js:45:20)
      at Entrypoint.create (D:\Users\seth\Desktop\clonetest\node_modules\@wyw-in-js\transform\lib\transform\Entrypoint.js:84:25)
      at Entrypoint.createRoot (D:\Users\seth\Desktop\clonetest\node_modules\@wyw-in-js\transform\lib\transform\Entrypoint.js:62:32)
      at transform (D:\Users\seth\Desktop\clonetest\node_modules\@wyw-in-js\transform\lib\transform.js:98:45)
      at TransformPluginContext.transform (file:///D:/Users/seth/Desktop/clonetest/node_modules/@wyw-in-js/vite/esm/index.mjs:118:28)
      at EnvironmentPluginContainer.transform (file:///D:/Users/seth/Desktop/clonetest/node_modules/vite/dist/node/chunks/dep-Chhhsdoe.js:31018:51)
      at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
      at async loadAndTransform (file:///D:/Users/seth/Desktop/clonetest/node_modules/vite/dist/node/chunks/dep-Chhhsdoe.js:26143:26)
      at async viteTransformMiddleware (file:///D:/Users/seth/Desktop/clonetest/node_modules/vite/dist/node/chunks/dep-Chhhsdoe.js:27221:20)

DannyloAlves avatar Oct 11 '25 04:10 DannyloAlves

Happens to me as well

lokeshwarobuli avatar Oct 20 '25 23:10 lokeshwarobuli

In my case, I get this error with Storybook React TS Vite + Linaria. It seems to be related to the dependency "@vitejs/plugin-react". The error only appears if the version of @vitejs/plugin-react is higher than 5.0.2.

erwannlc-tildev avatar Oct 29 '25 12:10 erwannlc-tildev

I think @erwannlc-tildev is right, I tired pinning my @vitejs/plugin-react to 5.0.2 and it worked. So not sure who needs to take a look at this now.....

lokeshwarobuli avatar Nov 05 '25 22:11 lokeshwarobuli