From fd26de9e2db649dd97577f29245a965d2d9aeb27 Mon Sep 17 00:00:00 2001 From: hanfei04 Date: Wed, 28 Dec 2022 17:41:27 +0800 Subject: [PATCH 1/2] fix: fixed ENOENT: no such file or directory --- packages/vite/src/node/utils.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/vite/src/node/utils.ts b/packages/vite/src/node/utils.ts index d56b2fd5b8e302..8f6ca72a3fae20 100644 --- a/packages/vite/src/node/utils.ts +++ b/packages/vite/src/node/utils.ts @@ -606,7 +606,9 @@ export function copyDir(srcDir: string, destDir: string): void { export const removeDir = isWindows ? promisify(gracefulRemoveDir) : function removeDirSync(dir: string) { - fs.rmSync(dir, { recursive: true, force: true }) + if (fs.existsSync(dir)) { + fs.rmSync(dir, { recursive: true, force: true }) + } } export const renameDir = isWindows ? promisify(gracefulRename) : fs.renameSync From e33b93eafd709a71d3eaa97e923e47896ed20de2 Mon Sep 17 00:00:00 2001 From: Bjorn Lu Date: Thu, 29 Dec 2022 00:40:46 +0800 Subject: [PATCH 2/2] chore: add comment --- packages/vite/src/node/utils.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/vite/src/node/utils.ts b/packages/vite/src/node/utils.ts index 8f6ca72a3fae20..23e94cab367d37 100644 --- a/packages/vite/src/node/utils.ts +++ b/packages/vite/src/node/utils.ts @@ -606,6 +606,9 @@ export function copyDir(srcDir: string, destDir: string): void { export const removeDir = isWindows ? promisify(gracefulRemoveDir) : function removeDirSync(dir: string) { + // when removing `.vite/deps`, if it doesn't exist, nodejs may also remove + // other directories within `.vite/`, including `.vite/deps_temp` (bug). + // workaround by checking for directory existence before removing for now. if (fs.existsSync(dir)) { fs.rmSync(dir, { recursive: true, force: true }) }