-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
V5 try 2 #4937
base: master
Are you sure you want to change the base?
Conversation
WalkthroughThe pull request introduces a comprehensive update to the project's Node.js compatibility, shifting the minimum supported version from 14 to 18 across multiple configuration files. This change affects the CI workflow, Lerna configuration, package.json files for various packages, and TypeScript configuration. The modifications streamline the project's node version support, removing older version compatibility while ensuring alignment with more recent Node.js releases. Changes
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
New and removed dependencies detected. Learn more about Socket for GitHub ↗︎
🚮 Removed packages: npm/@tsconfig/[email protected] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🔭 Outside diff range comments (1)
packages/rollup-plugin/package.json (1)
Line range hint
47-47
: Update @tsconfig/node16 to @tsconfig/node18.The TypeScript configuration still targets Node 16 while the package now requires Node 18.
Apply this diff:
- "@tsconfig/node16": "16.1.3", + "@tsconfig/node18": "18.2.2",
🧹 Nitpick comments (1)
packages/cli/package.json (1)
Line range hint
63-64
: Consider updating boxen and update-notifier.These packages are using older major versions that predate Node.js 18:
- boxen v5.x.x → v7.x.x
- update-notifier v5.x.x → v6.x.x
Newer versions might provide better compatibility with Node.js 18.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
package-lock.json
is excluded by!**/package-lock.json
📒 Files selected for processing (13)
.github/workflows/ci.yml
(3 hunks)lerna.json
(0 hunks)package.json
(1 hunks)packages/cli-utils/package.json
(1 hunks)packages/cli/package.json
(1 hunks)packages/gatsby-plugin/package.json
(1 hunks)packages/next-plugin/package.json
(1 hunks)packages/plugin-webpack-filter/package.json
(1 hunks)packages/plugin-webpack-validate/package.json
(1 hunks)packages/rollup-plugin/package.json
(1 hunks)packages/utils/package.json
(1 hunks)packages/webpack-plugin/package.json
(1 hunks)tsconfig.json
(1 hunks)
💤 Files with no reviewable changes (1)
- lerna.json
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: build
🔇 Additional comments (17)
tsconfig.json (1)
2-2
: Verify TypeScript configuration compatibility with Node.js 18.The TypeScript configuration has been updated to use
@tsconfig/node18
. This change aligns with the Node.js version upgrade.Let's verify the TypeScript configuration and dependencies:
✅ Verification successful
TypeScript configuration is compatible with Node.js 18 ✅
The configuration change is properly supported by TypeScript 5.7.3 and the required
@tsconfig/node18
dependency is present in the project.🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Check if package.json has the corresponding @tsconfig/node18 dependency rg -l "@tsconfig/node18" package.json # Check TypeScript version compatibility rg -l "typescript" package.json | xargs cat | jq -r 'select(.dependencies.typescript, .devDependencies.typescript) | .dependencies.typescript, .devDependencies.typescript'Length of output: 233
packages/next-plugin/package.json (1)
7-7
: Verify webpack compatibility with Node.js 18.The Node.js engine requirement has been updated to
>= 18.0
. Please ensure that the webpack dependency andbundle-stats-webpack-plugin
are compatible with Node.js 18.Let's verify the webpack compatibility:
✅ Verification successful
Dependencies are compatible with Node.js 18
The bundle-stats-webpack-plugin v4.17.0 requires Node.js >= 14.0, which is compatible with the new Node.js >= 18.0 requirement. Both webpack 4 and 5 (peer dependency) support Node.js 18.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Check webpack plugin's Node.js requirements rg -l "bundle-stats-webpack-plugin" packages/*/package.json | xargs cat | jq -r 'select(.dependencies."bundle-stats-webpack-plugin") | .name, .dependencies."bundle-stats-webpack-plugin"' # Check webpack peer dependency requirements rg -l "webpack" packages/*/package.json | xargs cat | jq -r 'select(.peerDependencies.webpack) | .name, .peerDependencies.webpack'Length of output: 1144
Script:
#!/bin/bash # Fetch bundle-stats-webpack-plugin package info from npm curl -s https://registry.npmjs.org/bundle-stats-webpack-plugin/4.17.0 | jq -r '.engines?.node'Length of output: 104
packages/gatsby-plugin/package.json (1)
7-7
: Verify Gatsby compatibility with Node.js 18.The Node.js engine requirement has been updated to
>= 18.0
. Please ensure that the Gatsby version supported by this plugin is compatible with Node.js 18.Let's verify the Gatsby compatibility:
✅ Verification successful
Node.js 18 requirement is compatible with Gatsby
The plugin interfaces with Gatsby only through webpack configuration and doesn't have specific Gatsby version requirements. Node.js 18 is fully supported by modern Gatsby versions.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Check if there are any Gatsby-specific version requirements rg -l "gatsby" packages/*/package.json | xargs cat | jq -r 'select(.peerDependencies.gatsby) | .name, .peerDependencies.gatsby' # Check if there are any examples or test files with Gatsby version specifications rg -l "gatsby" packages/gatsby-plugin/Length of output: 592
Script:
#!/bin/bash # Check package.json content cat packages/gatsby-plugin/package.json # Check README content for version info cat packages/gatsby-plugin/README.md # Look for any Gatsby version mentions in the code rg -i "gatsby.*version|version.*gatsby" packages/gatsby-plugin/Length of output: 8517
packages/plugin-webpack-validate/package.json (1)
10-10
: Verify testing framework compatibility with Node.js 18.The Node.js engine requirement has been updated to
>= 18.0
. The package uses Jest for testing. Please ensure that the Jest configuration and dependencies ([email protected], [email protected]) are compatible with Node.js 18.Let's verify the testing framework compatibility:
✅ Verification successful
Testing framework is compatible with Node.js 18
Jest 29.7.0 and ts-jest 29.2.5 fully support Node.js 18, and the test configuration is using standard presets that work well with this Node.js version.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Check Jest and related dependencies versions across packages rg -l "jest" packages/*/package.json | xargs cat | jq -r 'select(.devDependencies.jest) | .name, .devDependencies.jest, .devDependencies."ts-jest"' # Check for any Jest configuration files fd -t f "jest.config" -x cat {}Length of output: 2923
packages/webpack-plugin/package.json (2)
Line range hint
53-56
: Verify Babel dependencies compatibility with Node.js 18.The package uses Babel for building. Please ensure that the Babel dependencies (@babel/[email protected], @babel/[email protected], @babel/[email protected]) are compatible with Node.js 18.
Let's verify the Babel dependencies:
✅ Verification successful
Babel dependencies are compatible with Node.js 18 ✅
The current Babel dependencies (@babel/[email protected], @babel/[email protected], @babel/[email protected]) are fully compatible with Node.js 18, as they are well above the minimum version required for Node.js 18 support (7.22.0). The versions are also consistent across packages and from the same minor release, ensuring internal compatibility.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Check Babel dependencies versions across packages rg -l "@babel" packages/*/package.json | xargs cat | jq -r 'select(.devDependencies."@babel/core") | .name, .devDependencies."@babel/core", .devDependencies."@babel/cli", .devDependencies."@babel/preset-env"'Length of output: 662
11-11
: Verify webpack peer dependency compatibility with Node.js 18.The Node.js engine requirement has been updated to
>= 18.0
. The package has a webpack peer dependency of^4.0.0 || ^5.0.0
. Please ensure that these webpack versions are compatible with Node.js 18.Let's verify the webpack compatibility:
packages/rollup-plugin/package.json (1)
9-9
: LGTM! Node.js version requirement updated consistently.The update to Node.js >= 18.0 aligns with the project-wide version standardization.
packages/utils/package.json (1)
10-10
: LGTM! Node.js version requirement updated consistently.The update to Node.js >= 18.0 aligns with the project-wide version standardization.
packages/cli-utils/package.json (1)
12-12
: LGTM! Node.js version requirement updated consistently.The update to Node.js >= 18.0 aligns with the project-wide version standardization.
packages/plugin-webpack-filter/package.json (1)
17-17
: LGTM! Node.js version requirement updated consistently.The update to Node.js >= 18.0 aligns with the project-wide version standardization.
packages/cli/package.json (1)
14-14
: LGTM! Node.js version requirement updated consistently.The update to Node.js >= 18.0 aligns with the project-wide version standardization.
package.json (2)
19-19
: LGTM! Node.js version requirement updated appropriately.The update to require Node.js >= 18.0 aligns with the PR objectives.
24-24
: LGTM! TypeScript configuration updated consistently.The update from @tsconfig/node14 to @tsconfig/node18 maintains alignment with the new Node.js version requirement.
.github/workflows/ci.yml (4)
122-122
: LGTM! Node.js versions updated for CLI package tests.The matrix update to only test against Node.js 18 and 20 aligns with the new minimum version requirement.
162-167
: LGTM! Node.js versions and exclusions updated for webpack plugin tests.The matrix update and exclusions look appropriate:
- Tests against Node.js 18 and 20
- Excludes webpack4 with Node.js 20 to prevent compatibility issues
- Excludes Node.js 20 on Windows to avoid potential platform-specific issues
208-212
: LGTM! Node.js versions and exclusions updated for rollup plugin tests.The matrix update and exclusions look appropriate:
- Tests against Node.js 18 and 20
- Excludes rollup3 with Node.js 20 to prevent compatibility issues
Line range hint
122-212
: Verify test coverage across Node.js versions.While the version updates look good, let's verify we have sufficient test coverage across supported Node.js versions.
✅ Verification successful
Node.js version coverage is properly configured and comprehensive
- All jobs consistently use Node.js 20 and 18 (current LTS versions)
- Appropriate exclusions are in place for incompatible combinations
- No legacy Node.js versions detected in the workflow
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Analyze test coverage across Node.js versions in the CI workflow # Check if we're testing all supported Node.js versions (18+) across jobs echo "Analyzing Node.js version coverage in CI jobs..." rg -A 5 'node: \[.*\]' .github/workflows/ci.yml # Check if any jobs might still reference old Node.js versions echo "Checking for potential missed Node.js version updates..." rg '(node|nodejs).*(14|16)' .github/workflows/Length of output: 796
#11830 Bundle Size — 380.78KiB (0%).b73763b(current) vs 6b578aa master#11829(baseline) Warning Bundle contains 2 duplicate packages – View duplicate packages Bundle metrics
|
Current #11830 |
Baseline #11829 |
|
---|---|---|
Initial JS | 333.89KiB |
333.89KiB |
Initial CSS | 46.89KiB |
46.89KiB |
Cache Invalidation | 0% |
0% |
Chunks | 3 |
3 |
Assets | 4 |
4 |
Modules | 700 |
700 |
Duplicate Modules | 0 |
0 |
Duplicate Code | 0% |
0% |
Packages | 39 |
39 |
Duplicate Packages | 1 |
1 |
Bundle size by type no changes
Current #11830 |
Baseline #11829 |
|
---|---|---|
JS | 333.89KiB |
333.89KiB |
CSS | 46.89KiB |
46.89KiB |
Bundle analysis report Branch v5-try-2 Project dashboard
Generated by RelativeCI Documentation Report issue
Summary by CodeRabbit
Release Notes
Node.js Compatibility
Development
Impact