Summary
The frontend pins "packageManager": "pnpm@8.15.9" in frontend/package.json, and frontend/pnpm-lock.yaml is still lockfileVersion: '6.0'. pnpm 8 reached end-of-life, so distributions and downstream packagers that build the frontend from source are being pushed to drop pnpm 8 from their toolchains.
Why this matters
Newer pnpm (10/11) refuses to use the lockfileVersion: '6.0' lockfile (it's ignored as incompatible), so a frozen-lockfile install fails outright. This means anyone building remark42's frontend with a current pnpm cannot do so without first regenerating the lockfile — which is exactly the situation in nixpkgs, where remark42 is currently one of the last consumers keeping the EOL pnpm_8 package alive.
Suggested change
- Bump
packageManager to pnpm@10 or pnpm@11.
- Regenerate
frontend/pnpm-lock.yaml with the new pnpm (pnpm install --lockfile-only), which upgrades it to lockfileVersion: '9.0'.
- Verify CI / the
pnpm --filter ./apps/remark42 run build workflow still passes.
This keeps the project on a supported pnpm and unblocks source-based packagers. Happy to open a PR if that's helpful.
Summary
The frontend pins
"packageManager": "pnpm@8.15.9"infrontend/package.json, andfrontend/pnpm-lock.yamlis stilllockfileVersion: '6.0'. pnpm 8 reached end-of-life, so distributions and downstream packagers that build the frontend from source are being pushed to drop pnpm 8 from their toolchains.Why this matters
Newer pnpm (10/11) refuses to use the
lockfileVersion: '6.0'lockfile (it's ignored as incompatible), so a frozen-lockfile install fails outright. This means anyone building remark42's frontend with a current pnpm cannot do so without first regenerating the lockfile — which is exactly the situation in nixpkgs, where remark42 is currently one of the last consumers keeping the EOLpnpm_8package alive.Suggested change
packageManagertopnpm@10orpnpm@11.frontend/pnpm-lock.yamlwith the new pnpm (pnpm install --lockfile-only), which upgrades it tolockfileVersion: '9.0'.pnpm --filter ./apps/remark42 run buildworkflow still passes.This keeps the project on a supported pnpm and unblocks source-based packagers. Happy to open a PR if that's helpful.