From 59766fa48f922c6a5e2faddce50d747e410aa618 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ari=20Perkki=C3=B6?= Date: Fri, 6 Jan 2023 17:29:28 +0200 Subject: [PATCH] fix: avoid random ENOTEMPTY errors (#2620) --- packages/coverage-c8/src/provider.ts | 4 ++-- packages/coverage-istanbul/src/provider.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/coverage-c8/src/provider.ts b/packages/coverage-c8/src/provider.ts index 71ab00461f82..fe2dc132d25f 100644 --- a/packages/coverage-c8/src/provider.ts +++ b/packages/coverage-c8/src/provider.ts @@ -34,7 +34,7 @@ export class C8CoverageProvider implements CoverageProvider { async clean(clean = true) { if (clean && existsSync(this.options.reportsDirectory)) - await fs.rm(this.options.reportsDirectory, { recursive: true, force: true }) + await fs.rm(this.options.reportsDirectory, { recursive: true, force: true, maxRetries: 10 }) if (!existsSync(this.options.tempDirectory)) await fs.mkdir(this.options.tempDirectory, { recursive: true }) @@ -131,7 +131,7 @@ export class C8CoverageProvider implements CoverageProvider { // There will still be a temp directory with some reports when vitest exists, // but at least it will only contain reports of vitest's internal functions. if (existsSync(this.options.tempDirectory)) - await fs.rm(this.options.tempDirectory, { recursive: true, force: true }) + await fs.rm(this.options.tempDirectory, { recursive: true, force: true, maxRetries: 10 }) } } function resolveC8Options(options: CoverageC8Options, root: string) { diff --git a/packages/coverage-istanbul/src/provider.ts b/packages/coverage-istanbul/src/provider.ts index 25596de38031..77e4e5602be8 100644 --- a/packages/coverage-istanbul/src/provider.ts +++ b/packages/coverage-istanbul/src/provider.ts @@ -93,7 +93,7 @@ export class IstanbulCoverageProvider implements CoverageProvider { async clean(clean = true) { if (clean && existsSync(this.options.reportsDirectory)) - await fs.rm(this.options.reportsDirectory, { recursive: true, force: true }) + await fs.rm(this.options.reportsDirectory, { recursive: true, force: true, maxRetries: 10 }) this.coverages = [] }