Skip to content

feat: require Node >=22, drop EOL Node versions @W-23480655@ - #2851

Merged
iowillhoit merged 4 commits into
mainfrom
wr/dropNode18And20Support
Jul 30, 2026
Merged

feat: require Node >=22, drop EOL Node versions @W-23480655@#2851
iowillhoit merged 4 commits into
mainfrom
wr/dropNode18And20Support

Conversation

@WillieRuemmele

@WillieRuemmele WillieRuemmele commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Bump engines.node from >=18.6.0 to >=22.0.0
  • Bump all bundled plugins to their new major versions (Node 22+ required)
  • Bump @salesforce/core to ^9.0.0, @salesforce/sf-plugins-core to 13.0.0, @salesforce/kit to ^4.0.0, @salesforce/ts-types to ^3.0.0
  • Drop win32-x86 from pack:win targets (only x64 and arm64)

@W-23480655@

Known schema change

The artifacts CI check flags a removed field:

❌ definitions.AuthFields.properties.scratchAdminUsername was not found in current schema

This is an intentional removal from @salesforce/core 9.0.0. The field was never set, changed, or used — it was dead code on the public API surface. Removed in forcedotcom/sfdx-core#1262 (merged Feb 2026).

Affects schemas for: org:login:web, org:login:sfdx-url, org:login:jwt, org:login:access-token.

Dependency Version Map

Package Old New
@salesforce/core ^8.31.4 ^9.0.0
@salesforce/kit ^3.1.6 ^4.0.0
@salesforce/sf-plugins-core 12.2.28 13.0.0
@salesforce/ts-types ^2.0.11 ^3.0.0
plugin-agent 1.45.0 2.0.0
plugin-apex 3.9.40 4.0.0
plugin-api 1.3.54 2.0.0
plugin-auth 4.4.9 5.0.1
plugin-data 4.0.115 5.0.0
plugin-deploy-retrieve 3.24.61 4.0.0
plugin-info 3.4.155 4.0.0
plugin-limits 3.3.106 4.0.0
plugin-marketplace 1.3.44 2.0.0
plugin-org 5.11.26 6.0.0
plugin-packaging 2.30.6 3.0.0
plugin-schema 3.3.131 4.0.0
plugin-settings 2.4.101 3.0.0
plugin-sobject 1.4.125 2.0.0
plugin-telemetry 3.8.33 4.0.0
plugin-templates 56.20.0 57.0.0
plugin-trust 3.8.43 4.0.0
plugin-user 3.10.9 4.0.0

Test plan

  • yarn compile passes locally
  • All 75 unit tests pass locally
  • Unit tests pass in CI (Linux + Windows, Node 22 + 24)
  • JIT install smoke tests pass (all plugins, Linux + Windows)
  • artifacts check — expected failure due to intentional schema removal (see above)
  • tarballs check — Windows path length issue from transitive deps

@WillieRuemmele WillieRuemmele changed the title feat: require Node >=22, drop EOL Node versions feat: require Node >=22, drop EOL Node versions @W-23480655@ Jul 30, 2026
The applicationinsights dependency tree pulls in both otel v1 and v2
packages. The v1/v2 split causes deep nesting (3+ levels) that produces
paths exceeding Windows' 259-char limit for users with 34+ char
usernames.

Force all @opentelemetry/core, /resources, and /semantic-conventions to
their v1 versions via yarn resolutions. The v2 consumers
(@azure/opentelemetry-instrumentation-azure-sdk) are never imported at
runtime by applicationinsights, so this is safe.
@iowillhoit

Copy link
Copy Markdown
Contributor

Artifact failures are expected. Merging 🎉

@iowillhoit
iowillhoit merged commit cecea53 into main Jul 30, 2026
33 of 34 checks passed
@iowillhoit
iowillhoit deleted the wr/dropNode18And20Support branch July 30, 2026 22:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants