feat: upgrade Node.js from 8.15.1+ to 18.20.8 LTS#10
Open
devin-ai-integration[bot] wants to merge 1 commit intomasterfrom
Open
feat: upgrade Node.js from 8.15.1+ to 18.20.8 LTS#10devin-ai-integration[bot] wants to merge 1 commit intomasterfrom
devin-ai-integration[bot] wants to merge 1 commit intomasterfrom
Conversation
- Update package.json engines to require Node.js >=18.0.0 - Update .nvmrc to specify Node.js 18.20.8 - Update README.md system requirements to Node.js v18.20+ - Replace offline-plugin with workbox-webpack-plugin for Node.js 18 compatibility - Add NODE_OPTIONS=--openssl-legacy-provider for Webpack 4 + Node.js 18 compatibility - Update service worker registration to use modern Workbox approach - Verify build process and development server work with Node.js 18 Co-Authored-By: Arthur Poon <arthur.poon@windsurf.com>
Author
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
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.
feat: upgrade Node.js from 8.15.1+ to 18.20.8 LTS
Summary
This PR upgrades the bank-client application from Node.js 8.15.1+ to Node.js 18.20.8 LTS, representing a major version jump across 10 Node.js releases. The upgrade includes:
Core Version Updates:
package.jsonengines field to requirenode: ">=18.0.0".nvmrcto specify Node.js18.20.8Node.js v18.20+Critical Compatibility Changes:
navigator.serviceWorker.register()NODE_OPTIONS=--openssl-legacy-providerto build and start scripts for Webpack 4 + Node.js 18 compatibilityThe build process and development server have been verified to work with Node.js 18, but this represents a significant architectural change that requires thorough testing.
Review & Testing Checklist for Human
🔴 CRITICAL - Complete Application Testing Required
rm -rf node_modules yarn.lock && yarn install && yarn buildin a clean environment to ensure consistent buildsyarn startworks correctly with hot reloading, error overlays, and all development featuresRecommended Test Plan:
rm -rf node_modules && yarn installyarn build(should complete without errors)yarn start(should start and be accessible)Diagram
%%{ init : { "theme" : "default" }}%% graph TD subgraph "Core Configuration" A["package.json<br/>engines.node: 8.15.1+ → 18.0.0+<br/>+ NODE_OPTIONS flags"]:::major-edit B[".nvmrc<br/>lts/dubnium → 18.20.8"]:::major-edit C["README.md<br/>v12.18+ → v18.20+"]:::minor-edit end subgraph "Service Worker Architecture" D["webpack.prod.babel.js<br/>OfflinePlugin → GenerateSW"]:::major-edit E["app/app.js<br/>offline-plugin/runtime → navigator.serviceWorker"]:::major-edit F["yarn.lock<br/>+ workbox-webpack-plugin<br/>- offline-plugin"]:::major-edit end subgraph "Build Process" G["Build Scripts<br/>NODE_OPTIONS=--openssl-legacy-provider"]:::context H["Development Server<br/>Hot reload + error handling"]:::context end A --> D A --> G D --> E F --> D G --> H subgraph Legend L1["Major Edit"]:::major-edit L2["Minor Edit"]:::minor-edit L3["Context/No Edit"]:::context end classDef major-edit fill:#90EE90 classDef minor-edit fill:#87CEEB classDef context fill:#FFFFFFNotes
Technical Context:
NODE_OPTIONS=--openssl-legacy-providerflag is required because Webpack 4 uses deprecated OpenSSL functions that were removed in Node.js 17+Session Info: