Conversation
WalkthroughUpdates Rspack development dependencies from version 2.0.0-beta.6 to 2.0.0-rc.0, with corresponding documentation changes reflecting the transition from beta to pre-release status. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
| @@ -51,8 +51,8 @@ | |||
| "devDependencies": { | |||
| "@eslint/eslintrc": "^3.2.0", | |||
There was a problem hiding this comment.
Bumping to 2.0.0-rc.0 introduces an engine requirement of ^20.19.0 || >=22.12.0. The project's .node-version file pins 22.2.0, which satisfies neither range — this is why local install needed --ignore-engines as noted in the PR description.
CI should be unaffected (test-bundlers.yml uses node-version: "20", which resolves to the latest 20.x — well past 20.19.0 as of today). But local dev experience is degraded. Worth updating .node-version to 22.12.0 (or later) as a follow-up in this PR or separately.
Review: Bump @rspack dev deps to 2.0.0-rc.0Overall this is a clean, low-risk dependency bump. Changes are appropriately scoped to What looks good:
One concern — Node engine version mismatch (see inline comment):
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2892e84237
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| "@rspack/cli": "2.0.0-beta.6", | ||
| "@rspack/core": "2.0.0-beta.6", | ||
| "@rspack/cli": "2.0.0-rc.0", | ||
| "@rspack/core": "2.0.0-rc.0", |
There was a problem hiding this comment.
Keep rspack dev deps compatible with pinned Node runtime
Updating @rspack/core/@rspack/cli to 2.0.0-rc.0 introduces a Node engine requirement (^20.19.0 || >=22.12.0) that excludes this repo’s checked-in .node-version (22.2.0), so a standard yarn install now fails unless contributors use --ignore-engines. This makes local setup and any workflow that follows the repo Node pin unreliable; the dependency bump should be paired with a Node-version update (or held back to a compatible rspack release).
Useful? React with 👍 / 👎.
Greptile SummaryThis PR bumps the Rspack v2 dev dependencies ( Key changes:
Confidence Score: 3/5
Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A["@rspack/[email protected]\n(devDependency)"] --> B["@rspack/[email protected]"]
B --> C["@rspack/[email protected]"]
C --> D["@rspack/[email protected]"]
C --> E["@rspack/[email protected]"]
C --> F["@rspack/[email protected]"]
C --> G["@rspack/[email protected]"]
G --> H["@napi-rs/[email protected]\n(dropped @emnapi/core & @emnapi/runtime)"]
B -.->|"requires Node ^20.19.0 || >=22.12.0"| I["⚠️ Node version check\nProject engines: >= 20\nDev env: 22.2.0 (used --ignore-engines)"]
Reviews (1): Last reviewed commit: "Update rspack to v2.0.0-rc.0" | Re-trigger Greptile |
| "@rspack/cli": "2.0.0-rc.0", | ||
| "@rspack/core": "2.0.0-rc.0", |
There was a problem hiding this comment.
Node.js engine version mismatch with test environment
@rspack/[email protected] requires Node ^20.19.0 || >=22.12.0, but the PR description notes that local installation required --ignore-engines because the workspace was on Node 22.2.0, which falls in the gap between 22.12.0+ and <22.12.0. It's worth confirming that CI runners use a compatible Node version (i.e., >=20.19.0 on the 20.x line or >=22.12.0 on the 22.x line) so yarn install succeeds without bypassing engine checks.
The project's own engines field says >= 20, which is broader than what the pinned rc.0 binary actually supports — users on 20.0–20.18.x or 22.0–22.11.x who run yarn install in this repo will see engine warnings or errors. If CI relies on an incompatible Node, the yarn install step may fail.
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@package.json`:
- Around line 54-55: The project's Node constraints must align with Rspack
v2.0.0-rc.0: update package.json's engines.node value to " ^20.19.0 || >=22.12.0
" (to match Rspack's required range) and update the .node-version file value
from 22.2.0 to at least 22.12.0 (or a newer 22.x), ensuring compatibility with
the existing `@rspack/cli` and `@rspack/core` v2.0.0-rc.0 dependencies.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 87e95bba-4caf-4883-b9ee-ccf70e836511
⛔ Files ignored due to path filters (1)
yarn.lockis excluded by!**/yarn.lock,!**/*.lock
📒 Files selected for processing (2)
docs/rspack.mdpackage.json
| "@rspack/cli": "2.0.0-rc.0", | ||
| "@rspack/core": "2.0.0-rc.0", |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== package.json node engine and rspack devDependency versions =="
python - <<'PY'
import json, urllib.request
with open("package.json", "r", encoding="utf-8") as f:
pkg = json.load(f)
print("package.json engines.node:", pkg.get("engines", {}).get("node"))
for dep in ("@rspack/core", "@rspack/cli"):
ver = pkg["devDependencies"][dep]
encoded = dep.replace("/", "%2f")
url = f"https://registry.npmjs.org/{encoded}/{ver}"
with urllib.request.urlopen(url) as r:
meta = json.load(r)
print(f"{dep}@{ver} engines.node:", meta.get("engines", {}).get("node"))
PY
echo
echo "== Node version pins in repo (if any) =="
fd -HI '(.nvmrc|.node-version|.tool-versions)$' .
echo
echo "== CI node-version settings (if any) =="
rg -n --iglob '*.yml' --iglob '*.yaml' 'setup-node|node-version|NODE_VERSION'Repository: shakacode/shakapacker
Length of output: 2762
🏁 Script executed:
cat -n package.json | head -60 | tail -20Repository: shakacode/shakapacker
Length of output: 785
🏁 Script executed:
cat -n package.json | tail -20Repository: shakacode/shakapacker
Length of output: 554
🏁 Script executed:
fd -HI '(\.nvmrc|\.node-version|\.tool-versions)$' .Repository: shakacode/shakapacker
Length of output: 80
🏁 Script executed:
rg -n --iglob '*.yml' --iglob '*.yaml' 'setup-node|node-version|NODE_VERSION' --max-count 50Repository: shakacode/shakapacker
Length of output: 47
🏁 Script executed:
cat .node-versionRepository: shakacode/shakapacker
Length of output: 71
🏁 Script executed:
find . -path './.git' -prune -o -type f \( -name '*.yml' -o -name '*.yaml' \) -print | head -20Repository: shakacode/shakapacker
Length of output: 742
🏁 Script executed:
cat -n package.json | tail -5Repository: shakacode/shakapacker
Length of output: 154
🏁 Script executed:
wc -l package.jsonRepository: shakacode/shakapacker
Length of output: 81
🏁 Script executed:
cat -n .github/workflows/node.ymlRepository: shakacode/shakapacker
Length of output: 6538
🏁 Script executed:
cat -n .github/workflows/test-bundlers.ymlRepository: shakacode/shakapacker
Length of output: 5248
🏁 Script executed:
tail -c 20 package.json | od -cRepository: shakacode/shakapacker
Length of output: 107
🏁 Script executed:
web_search
Rspack 2.0.0-rc.0 Node.js engine requirementsRepository: shakacode/shakapacker
Length of output: 160
🌐 Web query:
Rspack 2.0.0-rc.0 Node.js engine requirements
💡 Result:
Rspack 2.0.0-rc.0 requires Node.js 20.19.0+ or 22.12+.
Citations:
- 1: https://v2.rspack.rs/guide/migration/rspack_1.x
- 2: https://shakapacker.com/docs/rspack
Update Node.js version constraints to match Rspack v2.0.0-rc.0 requirements
Rspack 2.0.0-rc.0 requires Node.js ^20.19.0 || >=22.12.0, but this project's constraints are misaligned:
package.jsondeclaresengines.node: ">= 20", which allows Node 20.0–20.18 (incompatible with Rspack).node-versionis pinned to22.2.0, which is below the required22.12.0
This will cause installation failures for contributors and CI runs using affected Node versions.
Update .node-version to at least 22.12.0 and restrict engines.node to match Rspack's requirements:
Suggested fix
"engines": {
- "node": ">= 20",
+ "node": "^20.19.0 || >=22.12.0",
"yarn": ">=1 <5"
},And update .node-version from 22.2.0 to 22.12.0 (or any newer 22.x version matching the requirement).
Alternatively, if broader runtime support is needed for consumers, keep engines.node permissive but enforce the stricter floor in contributor/CI tooling via .node-version and workflow configurations.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@package.json` around lines 54 - 55, The project's Node constraints must align
with Rspack v2.0.0-rc.0: update package.json's engines.node value to " ^20.19.0
|| >=22.12.0 " (to match Rspack's required range) and update the .node-version
file value from 22.2.0 to at least 22.12.0 (or a newer 22.x), ensuring
compatibility with the existing `@rspack/cli` and `@rspack/core` v2.0.0-rc.0
dependencies.
* origin/main: (22 commits) docs: add Dependabot configuration guide (#1094) Sync address-review prompt with upstream PR #16 (#1098) Supersede #910: entry shape test with lint unblock (#919) fix: align rspack v2 peer deps and installer defaults (#1091) docs: update README and guides for Shakapacker v10 (#1092) Release 10.0.0 Update CHANGELOG.md for v10.0.0 (#1089) Release 10.0.0-rc.1 Update CHANGELOG.md for v10.0.0-rc.1 (#1087) Supersede #961 by using pack-config-diff (#973) Add final summary output to rake release (#1041) Add bin/setup to install development deps (#1039) Release 10.0.0-rc.0 Use npx release-it to avoid mise shim failures (#1040) Fix Nokogiri build failure on Ruby 3.4.6 (#1038) Update CHANGELOG.md for v10.0.0-rc.0 (#1037) Update rspack dev deps to 2.0.0-rc.0 (#1036) Fix stale and broken documentation across Shakapacker guides (#1023) Allow webpack-cli v7 in peer dependencies (#1021) refactor: simplify resolving js peer versions when installing (#1034) ... # Conflicts: # package.json
Summary
Bump
@rspack/cliand@rspack/coredev dependencies from2.0.0-beta.6to2.0.0-rc.0and refreshyarn.lockaccordingly. Update the Rspack docs CI coverage note to reflect2.0.0-rc.0and that v2 is still pre-release.Pull Request checklist
Other Information
Validated with
yarn test test/package/bundlerUtils.rspack.test.jsandyarn type-checkin this workspace. Local dependency resolution required--ignore-enginesbecause@rspack/[email protected]requires Node^20.19.0 || >=22.12.0, while this workspace is using Node22.2.0.Note
Low Risk
Low risk: this only bumps pinned dev tooling versions and updates
yarn.lock/docs, with no runtime code changes. Main risk is CI/build tooling differences from the newer pre-release Rspack binaries across platforms.Overview
Updates the pinned Rspack v2 dev dependencies (
@rspack/core,@rspack/cli) from2.0.0-beta.6to2.0.0-rc.0and refreshesyarn.lockto the new@rspack/binding*artifacts (including the wasm runtime bump).Adjusts
docs/rspack.mdto reflect CI validation now targets2.0.0-rc.0and clarifies that v2 remains pre-release.Written by Cursor Bugbot for commit 2892e84. This will update automatically on new commits. Configure here.
Summary by CodeRabbit
Chores
Documentation