- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control. - Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities. - Created .gitmodules to include OpenZeppelin contracts as a submodule. - Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment. - Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks. - Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring. - Created scripts for resource import and usage validation across non-US regions. - Added tests for CCIP error handling and integration to ensure robust functionality. - Included various new files and directories for the orchestration portal and deployment scripts.
3.9 KiB
3.9 KiB
Package Update Recommendations
📦 Outdated Packages Summary
Production Dependencies
| Package | Current | Latest | Type | Recommendation |
|---|---|---|---|---|
| express | 4.21.2 | 5.1.0 | Major | ⚠️ Breaking changes - Test thoroughly |
| better-sqlite3 | 9.6.0 | 12.4.1 | Major | ⚠️ Breaking changes - Review migration guide |
| dotenv | 16.6.1 | 17.2.3 | Major | ✅ Safe to update |
Development Dependencies
| Package | Current | Latest | Type | Recommendation |
|---|---|---|---|---|
| eslint | 8.57.1 | 9.39.1 | Major | ⚠️ Breaking changes - Config migration needed |
| @typescript-eslint/eslint-plugin | 6.21.0 | 8.47.0 | Major | ⚠️ Update with eslint 9 |
| @typescript-eslint/parser | 6.21.0 | 8.47.0 | Major | ⚠️ Update with eslint 9 |
| @types/node | 20.19.25 | 24.10.1 | Major | ⚠️ Node 24 types - Verify compatibility |
| @types/express | 4.17.25 | 5.0.5 | Major | ⚠️ For Express 5 - Update with express |
🔄 Update Strategy
Option 1: Safe Updates (Recommended for Production)
Update only minor/patch versions and non-breaking major updates:
# Update dotenv (breaking changes are minimal)
pnpm update dotenv@latest
# Update TypeScript types (if compatible)
pnpm update @types/node@^20
Option 2: Full Update (Requires Testing)
Update all packages to latest versions:
# Update all packages
pnpm update --latest
# Or update specific packages
pnpm update express@latest better-sqlite3@latest eslint@latest
Option 3: Gradual Update (Recommended)
Update in stages, testing after each:
Stage 1: Non-Breaking Updates
pnpm update dotenv@latest
Stage 2: Express 5 Migration
# Update Express and types together
pnpm update express@latest @types/express@latest
# Review breaking changes:
# - https://github.com/expressjs/express/releases
# - Update code if needed
Stage 3: ESLint 9 Migration
# Update ESLint and TypeScript ESLint plugins
pnpm update eslint@latest @typescript-eslint/eslint-plugin@latest @typescript-eslint/parser@latest
# Migrate ESLint config (flat config format)
# See: https://eslint.org/docs/latest/use/configure/configuration-files-new
Stage 4: Database Library
# Update better-sqlite3
pnpm update better-sqlite3@latest
# Review migration guide:
# - https://github.com/WiseLibs/better-sqlite3/releases
⚠️ Breaking Changes to Watch
Express 5.x
- Some middleware changes
- Type definitions updated
- Review: https://github.com/expressjs/express/releases/tag/v5.0.0
ESLint 9.x
- New flat config format required
- Old .eslintrc.json format deprecated
- Migration guide: https://eslint.org/docs/latest/use/migrate-to-9.0.0
better-sqlite3 12.x
- API changes possible
- Review changelog before updating
✅ Recommended Immediate Actions
-
Update dotenv (safest):
pnpm update dotenv@latest -
Test current setup:
pnpm build pnpm run type-check pnpm dev # Test that server starts -
Plan major updates:
- Create a feature branch
- Update one major package at a time
- Test thoroughly after each update
- Update documentation if needed
📝 Update Commands
Check what would be updated
pnpm outdated
Update all to latest (interactive)
pnpm update --latest --interactive
Update specific package
pnpm update <package>@latest
Update and save exact versions
pnpm update --save-exact
🔍 Verification After Updates
# Build
pnpm build
# Type check
pnpm run type-check
# Lint
pnpm lint
# Test server starts
pnpm dev