Skip to content

fix(build): restore published engines.node to >=20.11.0 - #2934

Merged
JCSanPedro merged 1 commit into
mainfrom
sdk-revert-node24-engines
Jul 29, 2026
Merged

fix(build): restore published engines.node to >=20.11.0#2934
JCSanPedro merged 1 commit into
mainfrom
sdk-revert-node24-engines

Conversation

@JCSanPedro

Copy link
Copy Markdown
Contributor

Summary

#2928 (dev toolchain upgrade) raised engines.node from >=20.11.0 to >=24 across the monorepo, including every published package. For consumers that is a breaking change that shipped in a minor (2.24.0):

  • It drops Node 20/22 consumers.
  • Under engine-strict it makes npm ci hard-fail - e.g. Play CI (Node 22) errors with EBADENGINE ... @imtbl/audience@2.24.1 Required: {"node":">=24"}.

The bundles target es2022 (verified in each tsdown.config.js), which runs on Node 18+, so the runtime floor never needed Node 24. This restores the consumer-facing floor to the pre-#2928 value >=20.11.0.

Widening engines is backward-compatible, so this is safe to release as a patch (2.24.2) - it undoes a breaking change rather than introducing one.

Scope

Reverts engines.node to >=20.11.0 on the 10 packages #2928 bumped:
audience/sdk, audience/sample-app, passport/sdk, config, internal/{toolkit,cryptofiat,dex/sdk,bridge/sdk,generated-clients,metrics}.

Intentionally unchanged: the repo's dev/build Node - root package.json engines and .nvmrc (24.18.0) stay at Node 24, since the upgraded build toolchain (tsdown/pnpm) expects it. Build-time Node and consumer runtime Node are independent.

Test plan

  • CI green (build/test/lint on Node 24 dev env)
  • Publish 2.24.2; confirm npm view @imtbl/audience@2.24.2 engines = {"node":">=20.11.0"}
  • Bump Play to 2.24.2; npm ci on Node 22 succeeds

#2928 raised engines.node from >=20.11.0 to >=24 across the monorepo as a
side effect of the dev toolchain upgrade. For published packages that is a
breaking change that shipped in a minor (2.24.0): it drops Node 20/22
consumers and makes `npm ci` fail under engine-strict (e.g. Play CI on Node
22). The bundles target es2022, which runs on Node 18+, so the runtime floor
does not need Node 24. Restore the consumer-facing floor to >=20.11.0. The
repo's dev/build Node (root engines + .nvmrc) intentionally stays at 24.
@JCSanPedro
JCSanPedro marked this pull request as ready for review July 29, 2026 04:52
@JCSanPedro
JCSanPedro requested review from a team as code owners July 29, 2026 04:52
@github-actions

Copy link
Copy Markdown

✅ Audience Bundle Size — @imtbl/audience

Metric Size Delta vs main (d3ff259)
Gzipped 11641 bytes (11.36 KB) 0 bytes
Raw (minified) 32663 bytes 0 bytes

Budget: 24.00 KB gzipped (warn at 20.00 KB)

@nx-cloud

nx-cloud Bot commented Jul 29, 2026

Copy link
Copy Markdown

View your CI Pipeline Execution ↗ for commit 97d2b06

Command Status Duration Result
nx affected -t build,test ✅ Succeeded 1m 48s View ↗
nx run-many -p @imtbl/sdk,@imtbl/checkout-widge... ✅ Succeeded 46s View ↗

💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗


☁️ Nx Cloud last updated this comment at 2026-07-29 04:54:55 UTC

@JCSanPedro
JCSanPedro merged commit 201c3f7 into main Jul 29, 2026
8 checks passed
@JCSanPedro
JCSanPedro deleted the sdk-revert-node24-engines branch July 29, 2026 05:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants