From 1924b51d3f536a51cc2386c119ab922250dbf783 Mon Sep 17 00:00:00 2001 From: Simon Knott Date: Tue, 29 Apr 2025 12:16:53 +0200 Subject: [PATCH] chore: make installing non-hermetic browsers idempotent (#35791) --- packages/playwright-core/src/server/registry/index.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/playwright-core/src/server/registry/index.ts b/packages/playwright-core/src/server/registry/index.ts index 4dfb63b98e..4cbd7b5c89 100644 --- a/packages/playwright-core/src/server/registry/index.ts +++ b/packages/playwright-core/src/server/registry/index.ts @@ -1053,7 +1053,7 @@ export class Registry { const { embedderName } = getEmbedderName(); if (!getAsBooleanFromENV('CI') && !executable._isHermeticInstallation && !forceReinstall && executable.executablePath(embedderName)) { const command = buildPlaywrightCLICommand(embedderName, 'install --force ' + executable.name); - throw new Error('\n' + wrapInASCIIBox([ + process.stderr.write('\n' + wrapInASCIIBox([ `ATTENTION: "${executable.name}" is already installed on the system!`, ``, `"${executable.name}" installation is not hermetic; installing newer version`, @@ -1067,7 +1067,8 @@ export class Registry { ` ${command}`, ``, `<3 Playwright Team`, - ].join('\n'), 1)); + ].join('\n'), 1) + '\n\n'); + return; } await executable._install(); }