Pnpm install fails with ERR_INVALID_THIS and ERR_PNPM_META_FETCH_FAIL

I am trying to deploy a monorepo on Vercel using pnpm and Turborepo. The build process consistently fails at the pnpm install step.
The build environment is correctly detecting Turbo and is running pnpm install. However, pnpm is encountering repeated errors when attempting to fetch package metadata from the npm registry (registry.npmjs.org).
The log shows two main types of errors:
WARN GET … error (ERR_INVALID_THIS). Will retry in X seconds/minute.
ERR_PNPM_META_FETCH_FAIL GET …: Value of “this” must be of type URLSearchParams (e.g., for @biomejs/biome).

“packageManager”: “pnpm@10.17.1” is set in my root package.json

The full error log detailing the repeated warnings and final failure of the pnpm install command


16:52:40.111  WARN  GET https://registry.npmjs.org/@biomejs%2Fbiome error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:52:40.112  WARN  GET https://registry.npmjs.org/typescript error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:52:40.112  WARN  GET https://registry.npmjs.org/tsup error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:52:40.113  WARN  GET https://registry.npmjs.org/zod error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:52:40.113  WARN  GET https://registry.npmjs.org/@types%2Freact error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:52:40.115  WARN  GET https://registry.npmjs.org/turbo error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:52:40.116  WARN  GET https://registry.npmjs.org/react error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:52:40.116  WARN  GET https://registry.npmjs.org/react-native error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:52:50.113  WARN  GET https://registry.npmjs.org/@biomejs%2Fbiome error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
16:52:50.113  WARN  GET https://registry.npmjs.org/typescript error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
16:52:50.114  WARN  GET https://registry.npmjs.org/tsup error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
16:52:50.114  WARN  GET https://registry.npmjs.org/zod error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
16:52:50.115  WARN  GET https://registry.npmjs.org/@types%2Freact error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
16:52:50.115  WARN  GET https://registry.npmjs.org/turbo error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
16:52:50.116  WARN  GET https://registry.npmjs.org/react error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
16:52:50.116  WARN  GET https://registry.npmjs.org/react-native error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
16:53:50.161  WARN  GET https://registry.npmjs.org/@types%2Fbun error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.162  ERR_PNPM_META_FETCH_FAIL  GET https://registry.npmjs.org/@biomejs%2Fbiome: Value of "this" must be of type URLSearchParams
16:53:50.163  WARN  GET https://registry.npmjs.org/typescript error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.164  WARN  GET https://registry.npmjs.org/@hono%2Fzod-validator error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.164  WARN  GET https://registry.npmjs.org/hono error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.165  WARN  GET https://registry.npmjs.org/zod error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.166  WARN  GET https://registry.npmjs.org/@types%2Freact error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.167  WARN  GET https://registry.npmjs.org/@expo%2Fmetro-runtime error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.168  WARN  GET https://registry.npmjs.org/@expo%2Fvector-icons error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.168  WARN  GET https://registry.npmjs.org/@react-navigation%2Fbottom-tabs error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.169  WARN  GET https://registry.npmjs.org/@react-navigation%2Felements error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.170  WARN  GET https://registry.npmjs.org/@react-navigation%2Fnative error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.173  WARN  GET https://registry.npmjs.org/expo error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.173  WARN  GET https://registry.npmjs.org/expo-constants error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.173  WARN  GET https://registry.npmjs.org/expo-font error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
16:53:50.185 Error: Command "pnpm install" exited with 1

My apologies, while testing my project with different package managers, I accidentally added the pnpm-lock.yaml file to .gitignore along with the other lock files. I’m leaving this note here for people just like me :sweat_smile:

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.