chore: reconcile package-lock.json with workspace package.jsons (unblocks npm 11)#19
Merged
Merged
Conversation
`vsc-ext/package.json` declares `@types/node: ^25.3.2`, but the lockfile
had `vsc-ext/node_modules/@types/node` pinned at `22.19.7` — which does
not satisfy `^25.3.2`. npm 10 silently tolerated the drift, but npm 11
(used on Node 24) fails `npm ci` with:
npm error `npm ci` can only install packages when your package.json
and package-lock.json or npm-shrinkwrap.json are in sync.
npm error Missing: @types/node@25.6.0 from lock file
This blocked the final npm publish step in the 0.0.4 release. After
regenerating the lockfile with npm 11:
- @types/node resolves to 25.6.0 (latest `^25.3.2`) hoisted at root
- undici-types@7.19.2 hoisted accordingly
- vsc-ext/node_modules/{@types/node, undici-types} dropped (dedupe)
- page/node_modules/{@types/node, undici-types} dropped (dedupe)
Net change: -9 lines in package-lock.json.
Roy-Kid
added a commit
to Roy-Kid/molvis
that referenced
this pull request
Apr 26, 2026
Bumps all workspaces (core, page, vsc-ext, root, python) from 0.0.4 to 0.0.5 and reconciles package-lock.json. Also narrows the page right sidebar's default width from 21% to 13% (with minSize 14% → 10% so the new default isn't clamped). v0.0.4 only partially shipped: PyPI and the VS Marketplace published, but the npm core release failed three times due to a package-lock.json drift that was fixed afterwards by MolCrafts#19. Re-tagging v0.0.4 cannot recover that because PyPI/Marketplace reject same-version republishes — 0.0.5 is the first version number where all three platforms can land aligned.
Roy-Kid
added a commit
that referenced
this pull request
Apr 26, 2026
…anup (#20) * chore(deps): bump @molcrafts/molrs to 0.0.14 + io/overlay/runtime cleanup Bump @molcrafts/molrs ^0.0.12 → ^0.0.14 across the workspace and rebuild package-lock.json. The only breaking change in molrs 0.0.13 is the LAMMPSDumpReader rename to LAMMPSTrajReader; reader.ts and test_wasm.ts adopt the new name. Beyond the bump, this batches in-flight refactors that landed alongside the upgrade so master has a single coherent state. core - io: replace normalize_coords with a column-based atom_coords helper and a lazy frame reader, with new tests - overlays: revamp mark_atom overlay flow + types/composite mark - commands: refactor commands/index, frame, mark_atom, place_molecule around the new entity_source / scene_index plumbing - rpc: move buildFrame/buildBox tests from page/ to core/tests, where the helpers actually live since b5dca14 - misc: trajectory, scene_index, modifiers (slice/wrap PBC), pipeline/data_source_modifier touch-ups vsc-ext - split pathUtils into pure helpers (type-only vscode import) and a new activeUri.ts that owns the runtime vscode.window dependency, so unit tests can load pathUtils outside the extension host - tighten tsconfig.test.json include glob to only the files unit tests need (fixes rootDir / @molvis/core resolution) - rename rslib config files .ts → .mts for proper ESM resolution page - drop the orphaned test_wasm_serialization (helpers moved to core); pass --passWithNoTests so the empty test suite exits clean python - new molvis.runtime module + tests - overlay/scene/catalog updates wired through to the new runtime - drop the install_widget_stubs leftover from test_control/test_video tooling - biome: ignore .venv, .rslib, out, out-test (CI-clean checkout matches local DX); fix package.json formatting Verification - npx biome check: 0 errors, 14 warnings (all configured warn) - npm run typecheck: core + page + vsc-ext all green - npm run test:core: 382/382 - npm run test:vsc-ext: 6/6 - npm run test:python: 98 passed, 2 skipped (PIL/ffmpeg optional) - npm run build:all: core dist + page bundle + vsc-ext extension & webview all green Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * chore: release 0.0.5 Bumps all workspaces (core, page, vsc-ext, root, python) from 0.0.4 to 0.0.5 and reconciles package-lock.json. Also narrows the page right sidebar's default width from 21% to 13% (with minSize 14% → 10% so the new default isn't clamped). v0.0.4 only partially shipped: PyPI and the VS Marketplace published, but the npm core release failed three times due to a package-lock.json drift that was fixed afterwards by #19. Re-tagging v0.0.4 cannot recover that because PyPI/Marketplace reject same-version republishes — 0.0.5 is the first version number where all three platforms can land aligned. --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
After #18 switched the release-core workflow to Node 24 (which ships npm 11), `npm ci` in run 24664999167 died with:
```
npm error code EUSAGE
npm error `npm ci` can only install packages when your package.json
npm error and package-lock.json or npm-shrinkwrap.json are in sync.
npm error Missing: @types/node@25.6.0 from lock file
npm error Missing: undici-types@7.19.2 from lock file
```
Root cause: pre-existing lockfile drift. `vsc-ext/package.json` declares `@types/node: ^25.3.2`, but the lockfile pinned `vsc-ext/node_modules/@types/node` at `22.19.7` — doesn't satisfy the range. npm 10 (Node 22) silently let it slide; npm 11 (Node 24) abort-on-lockfile-mismatch by design.
This has nothing to do with the Node 24 upgrade itself — the drift was already in the tree. Node 24 just surfaces it.
The fix
Regenerate `package-lock.json` with npm 11:
```
corepack prepare npm@11.11.0 --activate
npm install
```
Result:
Net change: -9 lines in `package-lock.json`. No `package.json` touched.
Test plan