From 876626242e70617ce9e2575d8042180c1012ae86 Mon Sep 17 00:00:00 2001 From: Dwi Setiawan Date: Mon, 22 Jun 2026 02:08:33 +0800 Subject: [PATCH 1/2] fix(ci): add --legacy-peer-deps to npm ci (tree-sitter peer dep conflict) --- .github/workflows/ci.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b7d1b39..418d543 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,9 +23,13 @@ jobs: with: node-version: ${{ matrix.node-version }} - # Deterministic install from the lockfile (ts-morph is the only dep). + # Deterministic install from the lockfile. + # --legacy-peer-deps: tree-sitter-php@0.22.6 declares a peer dep on + # tree-sitter@^0.21.1 but the project uses tree-sitter@^0.22.4; the + # version mismatch is benign (both work at runtime) but npm ci rejects + # it without this flag. - name: Install dependencies - run: npm ci + run: npm ci --legacy-peer-deps # Clone the laravel/framework fixture for integration tests (node-20 leg only — # other legs skip via existsSync guard in test/integration-laravel.test.mjs). From 79ebd9331c514d5baf79cf90f94e566155c14347 Mon Sep 17 00:00:00 2001 From: Dwi Setiawan Date: Mon, 22 Jun 2026 02:18:49 +0800 Subject: [PATCH 2/2] ci: drop Node 18 (EOL Apr 2025), keep Node 20+22 matrix --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 418d543..30b33c7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,7 +13,7 @@ jobs: strategy: fail-fast: false matrix: - node-version: [18, 20, 22] + node-version: [20, 22] steps: - name: Checkout uses: actions/checkout@v5