Upgrade Node.js to v22, add Astro & Analog presets, fix Apollo withDisabledDeprecations error. #121
Upgrade Node.js to v22, add Astro & Analog presets, fix Apollo withDisabledDeprecations error. #121SakshiKoli-CS merged 20 commits intostagingfrom
Conversation
Remove oclif/plugin-plugins dependency and upgrade patch version
chore: update packages for security issues
feat: Add ASTRO farmework preset option
feat: Add ANALOG framework preset option
fix: remove duplicate supportedFrameworksForServerCommands property
chore: upgrade Node.js to 22 and update @types/node
Revert "chore: upgrade Node.js to 22 and update @types/node"
chore: upgrade Node.js to 22 and update @types/node
fix: avoid TypeError when Apollo withDisabledDeprecations is not a function
test: add logs polling Apollo deprecation regression tests chore: launch-cli patch version upgrade
There was a problem hiding this comment.
Pull request overview
Upgrades the CLI plugin’s runtime/tooling baseline to Node.js 22, expands framework presets (Astro + Analog), and hardens Apollo log polling against a regression where withDisabledDeprecations may be missing/non-callable.
Changes:
- Upgrade Node.js engine requirement to 22 and refresh related tooling dependencies (e.g.,
@types/node,rollup, security overrides). - Add Astro and Analog framework presets (output directories + selectable framework list + server-command support list).
- Fix Apollo deprecation-wrapper usage to avoid
TypeErrorwhen the helper is unavailable, and add Jest regression tests.
Reviewed changes
Copilot reviewed 4 out of 5 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
src/util/logs-polling-utilities.ts |
Makes Apollo deprecation disabling resilient to missing/non-function exports and adjusts disposal handling. |
src/util/logs-polling-utilities.test.ts |
Adds Jest regression coverage for Apollo deprecation-wrapper edge cases. |
src/config/index.ts |
Adds ANALOG + ASTRO presets and updates server-command supported frameworks. |
package.json |
Bumps package version, raises Node engine to 22+, and updates dependencies/overrides. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| try { | ||
| const asyncDispose = (handler as any)[(Symbol as any).asyncDispose]; | ||
| if (typeof asyncDispose === 'function') { | ||
| asyncDispose.call(handler); |
There was a problem hiding this comment.
disposeDeprecationHandler invokes Symbol.asyncDispose without awaiting or attaching a rejection handler. If the async disposer returns a Promise that rejects, this can become an unhandled rejection. Consider wrapping the call with Promise.resolve(...) and explicitly swallowing/handling errors (or avoid calling asyncDispose in this sync code path).
| asyncDispose.call(handler); | |
| // Ensure any Promise returned by asyncDispose has a rejection handler to avoid | |
| // unhandled promise rejections in this synchronous code path. | |
| Promise.resolve(asyncDispose.call(handler)).catch(() => { | |
| // Swallow errors from async disposal; disposal is best-effort. | |
| }); |
| "engines": { | ||
| "node": ">=14.0.0" | ||
| "node": ">=22.0.0" | ||
| }, |
There was a problem hiding this comment.
The engines.node requirement is being raised to >=22.0.0, which is a breaking change for users on older Node versions. Bumping the package version from 1.9.6 to 1.9.7 suggests a patch release; consider a major version bump (or otherwise align versioning/release notes with this breaking change).
test: add logs polling Apollo deprecation regression tests
fix: avoid TypeError when Apollo withDisabledDeprecations is not a function
chore: upgrade Node.js to 22 and update @types/node
fix: remove duplicate supportedFrameworksForServerCommands property
feat: Add ANALOG framework preset option
feat: Add ASTRO farmework preset option
chore: update packages for security issues