From dc00ae7073b6d078c456ad4802d6771c4d0b1b00 Mon Sep 17 00:00:00 2001 From: yoho <907415276@qq.com> Date: Tue, 25 Oct 2022 17:31:51 +0800 Subject: [PATCH] feat(vite-node): don't exit on uncaughtException in watch mode (#2186) * feat: dont exit when uncaughtException * chore: update Co-authored-by: Anthony Fu Co-authored-by: Anthony Fu --- packages/vite-node/src/cli.ts | 6 ++++++ test/vite-node/package.json | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/vite-node/src/cli.ts b/packages/vite-node/src/cli.ts index 69d358e64a0e..e75ae1588ccd 100644 --- a/packages/vite-node/src/cli.ts +++ b/packages/vite-node/src/cli.ts @@ -84,6 +84,12 @@ async function run(files: string[], options: CliOptions = {}) { server.emitter?.on('message', (payload) => { handleMessage(runner, server.emitter, files, payload) }) + + if (options.watch) { + process.on('uncaughtException', (err) => { + console.error(c.red('[vite-node] Failed to execute file: \n'), err) + }) + } } function parseServerOptions(serverOptions: ViteNodeServerOptionsCLI): ViteNodeServerOptions { diff --git a/test/vite-node/package.json b/test/vite-node/package.json index ba58348fe130..49efa88ca60d 100644 --- a/test/vite-node/package.json +++ b/test/vite-node/package.json @@ -4,7 +4,7 @@ "scripts": { "test": "vitest", "coverage": "vitest run --coverage", - "dev": "vite-node --watch ./src/*", + "dev": "vite-node --watch ./src/*.ts", "debug:dev": "cross-env DEBUG=vite-node:* node --inspect-brk ../../packages/vite-node/dist/cli.cjs --watch ./src/*", "debug": "node --inspect-brk ../../packages/vite-node/dist/cli.cjs" },