From 06593a7d6fd16b4f380caf3b9dc83676f3964853 Mon Sep 17 00:00:00 2001 From: sapphi-red Date: Sat, 25 Jun 2022 21:54:44 +0900 Subject: [PATCH] fix: always remove temp config --- packages/vite/src/node/config.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/vite/src/node/config.ts b/packages/vite/src/node/config.ts index fbc5754af892cd..1e7b9583a618ea 100644 --- a/packages/vite/src/node/config.ts +++ b/packages/vite/src/node/config.ts @@ -887,9 +887,12 @@ export async function loadConfigFromFile( // bundle the config file w/ ts transforms first, write it to disk, // load it with native Node ESM, then delete the file. fs.writeFileSync(resolvedPath + '.mjs', bundled.code) - userConfig = (await dynamicImport(`${fileUrl}.mjs?t=${Date.now()}`)) - .default - fs.unlinkSync(resolvedPath + '.mjs') + try { + userConfig = (await dynamicImport(`${fileUrl}.mjs?t=${Date.now()}`)) + .default + } finally { + fs.unlinkSync(resolvedPath + '.mjs') + } debug(`TS + native esm config loaded in ${getTime()}`, fileUrl) } else { // using Function to avoid this from being compiled away by TS/Rollup