From 8bf77fa3348fadaea6d00f443c04cd99cf33c583 Mon Sep 17 00:00:00 2001 From: Janpot <2109932+Janpot@users.noreply.github.com> Date: Wed, 2 Jul 2025 18:11:05 +0200 Subject: [PATCH 1/3] Replace Argos script with code-infra CLI and update deps Replaces the custom Argos upload script with the 'code-infra argos-push' CLI command in package.json. Removes the now-unneeded @argos-ci/core dependency and deletes scripts/pushArgos.mjs. Updates @mui/internal-code-infra to a new version from a custom URL. --- package.json | 5 ++- pnpm-lock.yaml | 45 +++++++++++++-------------- scripts/pushArgos.mjs | 72 ------------------------------------------- 3 files changed, 24 insertions(+), 98 deletions(-) delete mode 100644 scripts/pushArgos.mjs diff --git a/package.json b/package.json index 161428cfcf0270..d60b6908caa1f6 100644 --- a/package.json +++ b/package.json @@ -81,7 +81,7 @@ "test:regressions-pigment-css:run": "nx run nx_test_regressions_pigment_css_run", "test:regressions-pigment-css:server": "pnpm --filter @app/pigment-css-vite-app run preview --port 5001", "test:unit": "nx run nx_test_unit", - "test:argos": "node ./scripts/pushArgos.mjs test/regressions/screenshots/chrome", + "test:argos": "code-infra argos-push --folder test/regressions/screenshots/chrome", "typescript": "lerna run --no-bail typescript", "typescript:ci": "lerna run --concurrency 3 --no-bail typescript", "use-react-version": "node ./scripts/useReactVersion.mjs", @@ -111,7 +111,6 @@ }, "devDependencies": { "@arethetypeswrong/cli": "^0.18.2", - "@argos-ci/core": "^3.2.0", "@babel/cli": "^7.27.2", "@babel/core": "^7.27.4", "@babel/node": "^7.27.1", @@ -126,7 +125,7 @@ "@mui/internal-bundle-size-checker": "^1.0.9-canary.3", "@mui/internal-babel-plugin-resolve-imports": "^2.0.7-canary.3", "@mui/internal-babel-plugin-minify-errors": "^2.0.8-canary.3", - "@mui/internal-code-infra": "0.0.2-canary.8", + "@mui/internal-code-infra": "https://pkg.pr.new/@mui/internal-code-infra@3874aad", "@mui/internal-docs-utils": "workspace:^", "@mui/internal-scripts": "workspace:^", "@mui/internal-test-utils": "workspace:^", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e1354d7f427b05..d9d630c5b0be52 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -52,9 +52,6 @@ importers: '@arethetypeswrong/cli': specifier: ^0.18.2 version: 0.18.2 - '@argos-ci/core': - specifier: ^3.2.0 - version: 3.2.0 '@babel/cli': specifier: ^7.27.2 version: 7.27.2(@babel/core@7.27.4) @@ -98,8 +95,8 @@ importers: specifier: ^1.0.9-canary.3 version: 1.0.9-canary.3(@types/node@20.19.1)(jiti@2.4.2)(lightningcss@1.30.1)(rollup@4.40.0)(terser@5.39.0)(tsx@4.20.3)(webpack-cli@6.0.1(webpack-bundle-analyzer@4.10.2)(webpack@5.99.9))(yaml@2.7.1) '@mui/internal-code-infra': - specifier: 0.0.2-canary.8 - version: 0.0.2-canary.8(@typescript-eslint/parser@8.35.1(eslint@9.30.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-webpack@0.13.10)(eslint@9.30.0(jiti@2.4.2))(prettier@3.5.3)(typescript@5.8.3) + specifier: https://pkg.pr.new/@mui/internal-code-infra@3874aad + version: https://pkg.pr.new/@mui/internal-code-infra@3874aad(@typescript-eslint/parser@8.35.1(eslint@9.30.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-webpack@0.13.10)(eslint@9.30.0(jiti@2.4.2))(prettier@3.5.3)(typescript@5.8.3) '@mui/internal-docs-utils': specifier: workspace:^ version: link:packages-internal/docs-utils @@ -2279,16 +2276,16 @@ packages: resolution: {integrity: sha512-GiwTmBFOU1/+UVNqqCGzFJYfBXEytUkiI+iRZ6Qx7KmUVtLm00sYySkfe203C9QtPG11yOz1ZaMek8dT/xnlgg==} engines: {node: '>=20'} - '@argos-ci/api-client@0.8.1': - resolution: {integrity: sha512-3IHv7ANSPNO6OwWgwULlHbP9/tFV9kQDu6+nL9jysfPkGj0GgtrOsyBb+iU931c7wSMo1OD+XNujCnRzDD968w==} + '@argos-ci/api-client@0.7.1': + resolution: {integrity: sha512-cJBNriNEs4aSBBpvsJH0f1D71rr9zxu/f0xRiqdEIIEN4ioFCCxs/66hNKrTxCw+lTaBnBL6LaM5vrBUkzgkzQ==} engines: {node: '>=18.0.0'} - '@argos-ci/core@3.2.0': - resolution: {integrity: sha512-wraH5RGFpoU7zcKV2BVi4LvY+5bWR/Ds6OVhUtq3jtd7I3qJRFVFq2IX1TfPPvBBA7wX0OqcrqgIWAQwy+vsoA==} + '@argos-ci/core@2.12.0': + resolution: {integrity: sha512-SmJYi93Oh0DYnJ1kZVFtzM0UDr0MfrcUhOuUsBJNpYc4hV2AlCNeoi8hzWYPJvARMKh03ZcbNx4+VY5jXiGLOA==} engines: {node: '>=18.0.0'} - '@argos-ci/util@2.3.1': - resolution: {integrity: sha512-kE61HU2480fbAnimmA4x9HK45ZJvkoqLdW5GxT5uvwhkclQykVd2S6WfGFUr3JokTXfZ5LZEEfoWgtGA316KSQ==} + '@argos-ci/util@2.2.1': + resolution: {integrity: sha512-z2B3EYVhDCDYlQwg55C/P8Xvbupb+XjmRHggIYl1R3yiNEBqy/kT9X/uOVMHxFyhLsM2PXsOOruugJoT11dB7Q==} engines: {node: '>=18.0.0'} '@asamuzakjp/css-color@2.8.3': @@ -4169,8 +4166,9 @@ packages: resolution: {integrity: sha512-xUO1GQDl6xbFdQJMYOgKMdxD8duz/HRVO9FfOravWvHGqvfErFo9+mcS0Q99czlmViSol05CVqOOBdjZwFy+OQ==} hasBin: true - '@mui/internal-code-infra@0.0.2-canary.8': - resolution: {integrity: sha512-V/KKIWXBFOPQJqwUyPQuxDAnZxEbWnNbhS1U+4XmfXla2E1EbaVJNDOz/sj2dZRHiqmwCfADe51pWL83d4PL4A==} + '@mui/internal-code-infra@https://pkg.pr.new/@mui/internal-code-infra@3874aad': + resolution: {tarball: https://pkg.pr.new/@mui/internal-code-infra@3874aad} + version: 0.0.1 hasBin: true peerDependencies: eslint: ^9.0.0 @@ -11551,8 +11549,8 @@ packages: resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} engines: {node: '>=12'} - openapi-fetch@0.13.5: - resolution: {integrity: sha512-AQK8T9GSKFREFlN1DBXTYsLjs7YV2tZcJ7zUWxbjMoQmj8dDSFRrzhLCbHPZWA1TMV3vACqfCxLEZcwf2wxV6Q==} + openapi-fetch@0.13.1: + resolution: {integrity: sha512-8P77k9Cmp0VNyry8ml293v1mqAyr4AkN7fE9VuUJ2mR0bK1NWihDM+Vj5/Try4aIYwYpT2OyCrYS3ObIRtO4LQ==} openapi-typescript-helpers@0.0.15: resolution: {integrity: sha512-opyTPaunsklCBpTK8JGef6mfPhLSnyy5a0IN9vKtx3+4aExf+KxEqYwIy3hqkedXIB97u357uLMJsOnm3GVjsw==} @@ -14726,17 +14724,17 @@ snapshots: typescript: 5.6.1-rc validate-npm-package-name: 5.0.1 - '@argos-ci/api-client@0.8.1': + '@argos-ci/api-client@0.7.1': dependencies: debug: 4.4.1(supports-color@8.1.1) - openapi-fetch: 0.13.5 + openapi-fetch: 0.13.1 transitivePeerDependencies: - supports-color - '@argos-ci/core@3.2.0': + '@argos-ci/core@2.12.0': dependencies: - '@argos-ci/api-client': 0.8.1 - '@argos-ci/util': 2.3.1 + '@argos-ci/api-client': 0.7.1 + '@argos-ci/util': 2.2.1 axios: 1.8.4(debug@4.4.1) convict: 6.2.4 debug: 4.4.1(supports-color@8.1.1) @@ -14746,7 +14744,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@argos-ci/util@2.3.1': {} + '@argos-ci/util@2.2.1': {} '@asamuzakjp/css-color@2.8.3': dependencies: @@ -17201,8 +17199,9 @@ snapshots: - webpack-cli - yaml - '@mui/internal-code-infra@0.0.2-canary.8(@typescript-eslint/parser@8.35.1(eslint@9.30.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-webpack@0.13.10)(eslint@9.30.0(jiti@2.4.2))(prettier@3.5.3)(typescript@5.8.3)': + '@mui/internal-code-infra@https://pkg.pr.new/@mui/internal-code-infra@3874aad(@typescript-eslint/parser@8.35.1(eslint@9.30.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-webpack@0.13.10)(eslint@9.30.0(jiti@2.4.2))(prettier@3.5.3)(typescript@5.8.3)': dependencies: + '@argos-ci/core': 2.12.0 '@eslint/compat': 1.3.1(eslint@9.30.0(jiti@2.4.2)) '@next/eslint-plugin-next': 15.3.4 '@octokit/rest': 22.0.0 @@ -26443,7 +26442,7 @@ snapshots: is-docker: 2.2.1 is-wsl: 2.2.0 - openapi-fetch@0.13.5: + openapi-fetch@0.13.1: dependencies: openapi-typescript-helpers: 0.0.15 diff --git a/scripts/pushArgos.mjs b/scripts/pushArgos.mjs deleted file mode 100644 index 9f273bc2eb756f..00000000000000 --- a/scripts/pushArgos.mjs +++ /dev/null @@ -1,72 +0,0 @@ -/* eslint-disable no-console */ -import glob from 'fast-glob'; -import fse from 'fs-extra'; -import lodashChunk from 'lodash/chunk.js'; -import { upload } from '@argos-ci/core'; -import yargs from 'yargs'; -import path from 'path'; - -const BATCH_SIZE = 200; - -const argv = yargs(process.argv.slice(2)) - .option('verbose', { - alias: 'v', - type: 'boolean', - description: 'Run with verbose logging', - }) - .demandCommand(1, 'You need to specify the screenshots folder as a positional argument').argv; - -async function run() { - const tempDir = await fse.mkdtemp(path.resolve('argos-screenshots-')); - - try { - const screenshotsFolder = argv._[0]; - const screenshots = await glob(`${screenshotsFolder}/**/*`); - - console.log(`Found ${screenshots.length} screenshots.`); - if (argv.verbose) { - console.log('Screenshots found:'); - screenshots.forEach((screenshot) => { - console.log(` - ${screenshot}`); - }); - } - - const chunks = lodashChunk(screenshots, BATCH_SIZE); - - await Promise.all( - chunks.map((chunk, chunkIndex) => - Promise.all( - chunk.map((screenshot) => { - const relativePath = path.relative(screenshotsFolder, screenshot); - return fse.move(screenshot, path.join(tempDir, `${chunkIndex}`, relativePath)); - }), - ), - ), - ); - - for (let i = 0; i < chunks.length; i += 1) { - // eslint-disable-next-line no-await-in-loop - const result = await upload({ - root: `${tempDir}/${i}`, - commit: process.env.CIRCLE_SHA1, - branch: process.env.CIRCLE_BRANCH, - token: process.env.ARGOS_TOKEN, - parallel: { - total: chunks.length, - nonce: process.env.CIRCLE_BUILD_NUM, - }, - }); - - console.log( - `Batch of ${chunks[i].length} screenshots uploaded. Build URL: ${result.build.url}`, - ); - } - } finally { - await fse.remove(tempDir); - } -} - -run().catch((error) => { - console.error(error); - process.exit(1); -}); From dcb26ee4b9f5f5c6de26ef227611fe0b93e5c121 Mon Sep 17 00:00:00 2001 From: Janpot <2109932+Janpot@users.noreply.github.com> Date: Thu, 3 Jul 2025 12:01:52 +0200 Subject: [PATCH 2/3] remove argos cli --- package.json | 2 +- pnpm-lock.yaml | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index d60b6908caa1f6..b543c53275e04d 100644 --- a/package.json +++ b/package.json @@ -125,7 +125,7 @@ "@mui/internal-bundle-size-checker": "^1.0.9-canary.3", "@mui/internal-babel-plugin-resolve-imports": "^2.0.7-canary.3", "@mui/internal-babel-plugin-minify-errors": "^2.0.8-canary.3", - "@mui/internal-code-infra": "https://pkg.pr.new/@mui/internal-code-infra@3874aad", + "@mui/internal-code-infra": "^0.0.2-canary.12", "@mui/internal-docs-utils": "workspace:^", "@mui/internal-scripts": "workspace:^", "@mui/internal-test-utils": "workspace:^", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d9d630c5b0be52..38484698da34a9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -95,8 +95,8 @@ importers: specifier: ^1.0.9-canary.3 version: 1.0.9-canary.3(@types/node@20.19.1)(jiti@2.4.2)(lightningcss@1.30.1)(rollup@4.40.0)(terser@5.39.0)(tsx@4.20.3)(webpack-cli@6.0.1(webpack-bundle-analyzer@4.10.2)(webpack@5.99.9))(yaml@2.7.1) '@mui/internal-code-infra': - specifier: https://pkg.pr.new/@mui/internal-code-infra@3874aad - version: https://pkg.pr.new/@mui/internal-code-infra@3874aad(@typescript-eslint/parser@8.35.1(eslint@9.30.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-webpack@0.13.10)(eslint@9.30.0(jiti@2.4.2))(prettier@3.5.3)(typescript@5.8.3) + specifier: ^0.0.2-canary.12 + version: 0.0.2-canary.12(@typescript-eslint/parser@8.35.1(eslint@9.30.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-webpack@0.13.10)(eslint@9.30.0(jiti@2.4.2))(prettier@3.5.3)(typescript@5.8.3) '@mui/internal-docs-utils': specifier: workspace:^ version: link:packages-internal/docs-utils @@ -4166,9 +4166,8 @@ packages: resolution: {integrity: sha512-xUO1GQDl6xbFdQJMYOgKMdxD8duz/HRVO9FfOravWvHGqvfErFo9+mcS0Q99czlmViSol05CVqOOBdjZwFy+OQ==} hasBin: true - '@mui/internal-code-infra@https://pkg.pr.new/@mui/internal-code-infra@3874aad': - resolution: {tarball: https://pkg.pr.new/@mui/internal-code-infra@3874aad} - version: 0.0.1 + '@mui/internal-code-infra@0.0.2-canary.12': + resolution: {integrity: sha512-gdt279pGxOEXkzSTioHuyqLj42iAiwf01GMcvqADTg0CoMwGq0qsJcKrxHEnG2ufw0euco5vswDVyDUCQS0XCQ==} hasBin: true peerDependencies: eslint: ^9.0.0 @@ -17199,7 +17198,7 @@ snapshots: - webpack-cli - yaml - '@mui/internal-code-infra@https://pkg.pr.new/@mui/internal-code-infra@3874aad(@typescript-eslint/parser@8.35.1(eslint@9.30.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-webpack@0.13.10)(eslint@9.30.0(jiti@2.4.2))(prettier@3.5.3)(typescript@5.8.3)': + '@mui/internal-code-infra@0.0.2-canary.12(@typescript-eslint/parser@8.35.1(eslint@9.30.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-webpack@0.13.10)(eslint@9.30.0(jiti@2.4.2))(prettier@3.5.3)(typescript@5.8.3)': dependencies: '@argos-ci/core': 2.12.0 '@eslint/compat': 1.3.1(eslint@9.30.0(jiti@2.4.2)) From 446b87c35e6ab71e37900c4956e837be9402418d Mon Sep 17 00:00:00 2001 From: Janpot <2109932+Janpot@users.noreply.github.com> Date: Mon, 14 Jul 2025 14:59:18 +0200 Subject: [PATCH 3/3] Update pnpm-lock.yaml --- pnpm-lock.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5f4fc1aead5fb1..277583a823efb8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -52,9 +52,6 @@ importers: '@arethetypeswrong/cli': specifier: ^0.18.2 version: 0.18.2 - '@argos-ci/core': - specifier: ^3.2.0 - version: 3.2.0 '@babel/cli': specifier: ^7.28.0 version: 7.28.0(@babel/core@7.28.0)