Skip to content

Commit eeaf782

Browse files
committed
fix(test): fix hanging nuxt-5 e2e test
1. `dev-packages/e2e-tests/test-applications/nuxt-5/package.json` pins `"nuxt": "npm:nuxt-nightly@5.x"`, an aliased dependency. 2. `nuxt-nightly@5.0.0-...` depends on `"@nuxt/nitro-server": "npm:@nuxt/nitro-server-nightly@<exact same version>"`. 3. `@nuxt/nitro-server-nightly` declares `"peerDependencies": { "nuxt": "npm:nuxt-nightly@<exact same version>" }`. This is a self-referencing aliased peer dep that loops back to the top-level dependency being installed. 4. pnpm's peer-dependency resolver deadlocks on this cycle: process goes to 0% CPU, no open sockets, threads parked in kevent/uv_cond_wait. Resolution shows `resolved 498, reused 0, downloaded 417, added 0`, then hangs forever. The solution is to use npm to install the dependencies, since npm does not deadlock on this sort of peerDep alias cycle.
1 parent ed0c4cf commit eeaf782

2 files changed

Lines changed: 3 additions & 2 deletions

File tree

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
strict-peer-deps = false

dev-packages/e2e-tests/test-applications/nuxt-5/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@
1313
"test": "playwright test",
1414
"test:prod": "TEST_ENV=production playwright test",
1515
"test:dev": "bash ./nuxt-start-dev-server.bash && TEST_ENV=development playwright test environment",
16-
"test:build": "pnpm install && pnpm build",
17-
"test:build-canary": "pnpm add nuxt@npm:nuxt-nightly@latest && pnpm add nitro@npm:nitro-nightly@latest && pnpm install --force && pnpm build",
16+
"test:build": "npm install && pnpm build",
17+
"test:build-canary": "pnpm add nuxt@npm:nuxt-nightly@latest && pnpm add nitro@npm:nitro-nightly@latest && npm install --force && pnpm build",
1818
"test:assert": "pnpm test:prod && pnpm test:dev"
1919
},
2020
"//": [

0 commit comments

Comments
 (0)