diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5622e4b..6ac2417 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -44,4 +44,4 @@ jobs: key: v2-${{ hashFiles('repositories.json') }} - uses: actions/setup-node@v6 - run: yarn - - run: yarn execute "RUN https://pkg.pr.new/prettier/prettier@main VS latest" + - run: yarn execute "RUN https://pkg.pr.new/prettier/prettier@main VS https://pkg.pr.new/prettier/prettier@main" diff --git a/src/execute-command.ts b/src/execute-command.ts index 38fab4f..afec375 100644 --- a/src/execute-command.ts +++ b/src/execute-command.ts @@ -13,14 +13,16 @@ export type ExecuteCommandResult = Awaited>; export async function executeCommand(commandString: string) { const { alternative, original, repositories } = parseCommand(commandString); + const isSame = alternative.raw === original.raw; + const directory = await createTemporaryDirectory(); // Install Prettier - const [alternativePrettier, originalPrettier] = await Promise.all( - [original, alternative].map((version) => - installPrettier(version, { cwd: directory }), - ), + const promises = [installPrettier(alternative, { cwd: directory })]; + promises.push( + isSame ? promises[0] : installPrettier(original, { cwd: directory }), ); + const [alternativePrettier, originalPrettier] = await Promise.all(promises); await logger.brief( `Running Prettier on ${repositories.length} repositories ...`, diff --git a/src/run-prettier.ts b/src/run-prettier.ts index 0996c00..01ffa2f 100644 --- a/src/run-prettier.ts +++ b/src/run-prettier.ts @@ -95,6 +95,11 @@ export async function runPrettier( reset, }); + if (alternative === original) { + timing.end(); + return ""; + } + await runPrettierWithVersion({ cwd: directory, prettier: alternative,