From 5e0989d0a59f1bb9f7cbc6a5051428001e74438c Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Tue, 17 Dec 2024 12:05:30 +0100 Subject: [PATCH 1/7] Drop support for Node.js <18.18, 21 --- package.json | 2 +- yarn.lock | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 060c299..17e1665 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ }, "packageManager": "yarn@3.2.4", "engines": { - "node": "^16.20 || ^18.16 || >=20" + "node": "^18.18 || ^20.14 || >=22" }, "publishConfig": { "access": "public", diff --git a/yarn.lock b/yarn.lock index fdbfa52..9429132 100644 --- a/yarn.lock +++ b/yarn.lock @@ -170,7 +170,7 @@ __metadata: "@metamask/eslint-config": ^10.0.0 "@metamask/eslint-config-nodejs": ^10.0.0 "@metamask/eslint-config-typescript": ^10.0.0 - "@metamask/utils": ^9.0.0 + "@metamask/utils": ^11.0.1 "@playwright/test": ^1.27.1 "@types/node": ^14.14.5 "@typescript-eslint/eslint-plugin": ^5.41.0 @@ -235,9 +235,9 @@ __metadata: languageName: node linkType: hard -"@metamask/utils@npm:^9.0.0": - version: 9.0.0 - resolution: "@metamask/utils@npm:9.0.0" +"@metamask/utils@npm:^11.0.1": + version: 11.0.1 + resolution: "@metamask/utils@npm:11.0.1" dependencies: "@ethereumjs/tx": ^4.2.0 "@metamask/superstruct": ^3.1.0 @@ -248,7 +248,7 @@ __metadata: pony-cause: ^2.1.10 semver: ^7.5.4 uuid: ^9.0.1 - checksum: 5dcb9d47c4768c33d451cc74c83207726c68b1340be1d091ca44105564f0ba0703026d357de7996de4459ac41cd420a0eb1f06db32f5ebbeeee581393f45fd44 + checksum: a5072f87157f6763328767bf1ddc01deb94e13f32af58d0993e0450e7e211fb29882280a1013cbdc7752b152a662be3d9beef8129a9097dba7d465389c398b3c languageName: node linkType: hard From aa2b9bd80b60a7ca6c9080c0746a8f52a5b06e2a Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Tue, 17 Dec 2024 12:08:22 +0100 Subject: [PATCH 2/7] Update CI to run on Node.js 22 --- .github/workflows/build-lint-test.yml | 20 ++++++++++---------- yarn.lock | 10 +++++----- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/build-lint-test.yml b/.github/workflows/build-lint-test.yml index 146601f..2231c34 100644 --- a/.github/workflows/build-lint-test.yml +++ b/.github/workflows/build-lint-test.yml @@ -8,13 +8,13 @@ on: jobs: prepare: name: Prepare - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest outputs: YARN_CACHE_DIR: ${{ steps.yarn-cache-dir.outputs.YARN_CACHE_DIR }} YARN_VERSION: ${{ steps.yarn-version.outputs.YARN_VERSION }} strategy: matrix: - node-version: [16.x, 18.x, 20.x] + node-version: [18.x, 20.x, 22.x] steps: - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} @@ -36,12 +36,12 @@ jobs: run: yarn --immutable build: name: Build - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest needs: - prepare strategy: matrix: - node-version: [16.x, 18.x, 20.x] + node-version: [18.x, 20.x, 22.x] steps: - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} @@ -64,12 +64,12 @@ jobs: fi lint: name: Lint - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest needs: - prepare strategy: matrix: - node-version: [16.x, 18.x, 20.x] + node-version: [18.x, 20.x, 22.x] steps: - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} @@ -98,12 +98,12 @@ jobs: fi test: name: Test - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest needs: - prepare strategy: matrix: - node-version: [16.x, 18.x, 20.x] + node-version: [18.x, 20.x, 22.x] steps: - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} @@ -126,7 +126,7 @@ jobs: fi check-workflows: name: Check workflows - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Download actionlint @@ -138,7 +138,7 @@ jobs: shell: bash all-jobs-pass: name: All jobs pass - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest needs: - build - lint diff --git a/yarn.lock b/yarn.lock index 9429132..a56147e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -170,7 +170,7 @@ __metadata: "@metamask/eslint-config": ^10.0.0 "@metamask/eslint-config-nodejs": ^10.0.0 "@metamask/eslint-config-typescript": ^10.0.0 - "@metamask/utils": ^11.0.1 + "@metamask/utils": ^9.0.0 "@playwright/test": ^1.27.1 "@types/node": ^14.14.5 "@typescript-eslint/eslint-plugin": ^5.41.0 @@ -235,9 +235,9 @@ __metadata: languageName: node linkType: hard -"@metamask/utils@npm:^11.0.1": - version: 11.0.1 - resolution: "@metamask/utils@npm:11.0.1" +"@metamask/utils@npm:^9.0.0": + version: 9.3.0 + resolution: "@metamask/utils@npm:9.3.0" dependencies: "@ethereumjs/tx": ^4.2.0 "@metamask/superstruct": ^3.1.0 @@ -248,7 +248,7 @@ __metadata: pony-cause: ^2.1.10 semver: ^7.5.4 uuid: ^9.0.1 - checksum: a5072f87157f6763328767bf1ddc01deb94e13f32af58d0993e0450e7e211fb29882280a1013cbdc7752b152a662be3d9beef8129a9097dba7d465389c398b3c + checksum: f720b0f7bdd46054aa88d15a9702e1de6d7200a1ca1d4f6bc48761b039f1bbffb46ac88bc87fe79e66128c196d424f3b9ef071b3cb4b40139223786d56da35e0 languageName: node linkType: hard From 7b5ec093c6a789abfb8b651813fc2ae213db8502 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Tue, 17 Dec 2024 12:14:22 +0100 Subject: [PATCH 3/7] Install Playwright dependencies in CI --- .github/workflows/build-lint-test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/build-lint-test.yml b/.github/workflows/build-lint-test.yml index 2231c34..1658c98 100644 --- a/.github/workflows/build-lint-test.yml +++ b/.github/workflows/build-lint-test.yml @@ -116,6 +116,8 @@ jobs: path: ${{ needs.prepare.outputs.YARN_CACHE_DIR }} key: yarn-cache-${{ runner.os }}-${{ needs.prepare.outputs.YARN_VERSION }}-${{ hashFiles('yarn.lock') }}-${{ matrix.node-version }} - run: yarn --immutable + - name: Install Playwright dependencies + run: sudo npx playwright install-deps - run: yarn test - name: Require clean working directory shell: bash From 0ecb50ff9874fe79198368d4a58eaa31d45c2b86 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Tue, 17 Dec 2024 12:17:28 +0100 Subject: [PATCH 4/7] Bump Playwright --- package.json | 2 +- yarn.lock | 44 ++++++++++++++++++++++++++++++++++++++------ 2 files changed, 39 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 17e1665..2593d89 100644 --- a/package.json +++ b/package.json @@ -57,7 +57,7 @@ "eslint-plugin-jsdoc": "^39.3.25", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^4.2.1", - "playwright": "^1.27.1", + "playwright": "^1.49.1", "prettier": "^2.7.1", "prettier-plugin-packagejson": "^2.3.0", "rimraf": "^3.0.2", diff --git a/yarn.lock b/yarn.lock index a56147e..56eda16 100644 --- a/yarn.lock +++ b/yarn.lock @@ -182,7 +182,7 @@ __metadata: eslint-plugin-jsdoc: ^39.3.25 eslint-plugin-node: ^11.1.0 eslint-plugin-prettier: ^4.2.1 - playwright: ^1.27.1 + playwright: ^1.49.1 prettier: ^2.7.1 prettier-plugin-packagejson: ^2.3.0 rimraf: ^3.0.2 @@ -2229,6 +2229,25 @@ __metadata: languageName: node linkType: hard +"fsevents@npm:2.3.2": + version: 2.3.2 + resolution: "fsevents@npm:2.3.2" + dependencies: + node-gyp: latest + checksum: 97ade64e75091afee5265e6956cb72ba34db7819b4c3e94c431d4be2b19b8bb7a2d4116da417950c3425f17c8fe693d25e20212cac583ac1521ad066b77ae31f + conditions: os=darwin + languageName: node + linkType: hard + +"fsevents@patch:fsevents@2.3.2#~builtin": + version: 2.3.2 + resolution: "fsevents@patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=18f3a7" + dependencies: + node-gyp: latest + conditions: os=darwin + languageName: node + linkType: hard + "function-bind@npm:^1.1.1, function-bind@npm:^1.1.2": version: 1.1.2 resolution: "function-bind@npm:1.1.2" @@ -3826,14 +3845,27 @@ __metadata: languageName: node linkType: hard -"playwright@npm:^1.27.1": - version: 1.27.1 - resolution: "playwright@npm:1.27.1" +"playwright-core@npm:1.49.1": + version: 1.49.1 + resolution: "playwright-core@npm:1.49.1" + bin: + playwright-core: cli.js + checksum: a940f4b10ff1de033b4b8594b5104b02849a892d9adda0d42330a872cd3d8d287ffd2b01fc33f33ccd34f8904bb8ae8220b878b62e899f3d9bcd1b0945ab45c7 + languageName: node + linkType: hard + +"playwright@npm:^1.49.1": + version: 1.49.1 + resolution: "playwright@npm:1.49.1" dependencies: - playwright-core: 1.27.1 + fsevents: 2.3.2 + playwright-core: 1.49.1 + dependenciesMeta: + fsevents: + optional: true bin: playwright: cli.js - checksum: 7bb31998e1783f96443bd1a38f0d7838d1b6fd0cf410ac83ef480c0f0e3e930b809b7e42ccda35b9e272c84aaa8f15e0ee8bdddc19a60b224eecc57d285bf92f + checksum: c136d42d625e32614f90e5228a165dc8be48c5bfb52aca9210c6ff04161a409dbe42fe5ae4f05a2653f6a1b836876a04d3b0f24bcbbc053d1509c1d605b7c8d5 languageName: node linkType: hard From 83c4ddc62935702dffde6be84732cc9ed65cb657 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Tue, 17 Dec 2024 12:22:13 +0100 Subject: [PATCH 5/7] Try Yarn --- .github/workflows/build-lint-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-lint-test.yml b/.github/workflows/build-lint-test.yml index 1658c98..fdd9e08 100644 --- a/.github/workflows/build-lint-test.yml +++ b/.github/workflows/build-lint-test.yml @@ -117,7 +117,7 @@ jobs: key: yarn-cache-${{ runner.os }}-${{ needs.prepare.outputs.YARN_VERSION }}-${{ hashFiles('yarn.lock') }}-${{ matrix.node-version }} - run: yarn --immutable - name: Install Playwright dependencies - run: sudo npx playwright install-deps + run: sudo yarn playwright install-deps - run: yarn test - name: Require clean working directory shell: bash From 0ba3cc1420c261967cd375533f8ae47b50bc5ef7 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Tue, 17 Dec 2024 12:25:15 +0100 Subject: [PATCH 6/7] Bump @playwright/test --- package.json | 2 +- yarn.lock | 24 +++++++----------------- 2 files changed, 8 insertions(+), 18 deletions(-) diff --git a/package.json b/package.json index 2593d89..bebb6a5 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "@metamask/eslint-config": "^10.0.0", "@metamask/eslint-config-nodejs": "^10.0.0", "@metamask/eslint-config-typescript": "^10.0.0", - "@playwright/test": "^1.27.1", + "@playwright/test": "^1.49.1", "@types/node": "^14.14.5", "@typescript-eslint/eslint-plugin": "^5.41.0", "@typescript-eslint/parser": "^5.41.0", diff --git a/yarn.lock b/yarn.lock index 56eda16..fe52cc6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -171,7 +171,7 @@ __metadata: "@metamask/eslint-config-nodejs": ^10.0.0 "@metamask/eslint-config-typescript": ^10.0.0 "@metamask/utils": ^9.0.0 - "@playwright/test": ^1.27.1 + "@playwright/test": ^1.49.1 "@types/node": ^14.14.5 "@typescript-eslint/eslint-plugin": ^5.41.0 "@typescript-eslint/parser": ^5.41.0 @@ -411,15 +411,14 @@ __metadata: languageName: node linkType: hard -"@playwright/test@npm:^1.27.1": - version: 1.27.1 - resolution: "@playwright/test@npm:1.27.1" +"@playwright/test@npm:^1.49.1": + version: 1.49.1 + resolution: "@playwright/test@npm:1.49.1" dependencies: - "@types/node": "*" - playwright-core: 1.27.1 + playwright: 1.49.1 bin: playwright: cli.js - checksum: 92f219a78c21da03c6599d92c313c914e73cc374306366130fb3bd4701555179394ec5a3000d9375ce59f5a03c00f20d1ddaae50c85583ce475e17795a622699 + checksum: cdbd16df3d773dc8e522d79b4b961e25c2e1b1d4f3ec45eb711078ab5d11bca47caafe833e2be2f923328fbd012405a9ee31d9b449d184077598546a36847e69 languageName: node linkType: hard @@ -3836,15 +3835,6 @@ __metadata: languageName: node linkType: hard -"playwright-core@npm:1.27.1": - version: 1.27.1 - resolution: "playwright-core@npm:1.27.1" - bin: - playwright: cli.js - checksum: fd65d3eb29978e0e7a755158625e8922a66ca9d599b7c24ddf920822b261d81c51a5964ef8e0e5ed9b2b12dc64541c5949b6a898d965e107f43261964e8c29a0 - languageName: node - linkType: hard - "playwright-core@npm:1.49.1": version: 1.49.1 resolution: "playwright-core@npm:1.49.1" @@ -3854,7 +3844,7 @@ __metadata: languageName: node linkType: hard -"playwright@npm:^1.49.1": +"playwright@npm:1.49.1, playwright@npm:^1.49.1": version: 1.49.1 resolution: "playwright@npm:1.49.1" dependencies: From 97d843c18f427d1fe56741499cbead42f6578175 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Tue, 17 Dec 2024 12:36:52 +0100 Subject: [PATCH 7/7] Install Playwright browsers in CI --- .github/workflows/build-lint-test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/build-lint-test.yml b/.github/workflows/build-lint-test.yml index fdd9e08..799a18b 100644 --- a/.github/workflows/build-lint-test.yml +++ b/.github/workflows/build-lint-test.yml @@ -118,6 +118,8 @@ jobs: - run: yarn --immutable - name: Install Playwright dependencies run: sudo yarn playwright install-deps + - name: Install Playwright + run: yarn playwright install - run: yarn test - name: Require clean working directory shell: bash