Commit a5079b7
committed
fix: pin rspack at 1.6.8 in shell-ui to fix native binding mismatch (MK8S-256)
The Docker shell-ui build started failing on every PR with:
[rspack-cli] Error: Unmatched version @rspack/core@1.6.7 and
@rspack/binding@1.6.8.
The expected version of @rspack/core to the current binding is 1.6.8.
Cause: package.json carried `^1.6.7` on @rspack/cli, @rspack/core and
the linux-x64 native bindings (gnu/musl). When the lockfile was last
regenerated, npm resolved the top-level optionalDependencies entries
to the freshly-published 1.6.8, while @rspack/cli/core stayed at
1.6.7 because their existing entries already satisfied `^1.6.7`. At
runtime npm's hoisting picks the top-level binding (1.6.8), but the
JS in @rspack/core@1.6.7 expects the bundled 1.6.7 binding -> hard
mismatch error, build aborts.
Fix: pin all four packages to exact 1.6.8 (no caret) so the lockfile
stays internally consistent and a future incidental `npm install`
cannot reintroduce the drift on this version. The redundant nested
node_modules/@rspack/binding/node_modules/@rspack/binding-linux-x64-*
entries collapse, which accounts for most of the lockfile diff.
Verified: `npm install --legacy-peer-deps` followed by
`npm run rsbuild` completes with only the pre-existing
"entrypoint size limit" warnings.
Signed-off-by: Guillaume Carre <guillaume.carre@scality.com>1 parent 28be623 commit a5079b7
2 files changed
Lines changed: 65 additions & 365 deletions
0 commit comments