Skip to content

Release 2.10.0: note the peerDependencies change for aws-cdk-lib/constructs #6

Description

@dickhardt

chore/deps-prune changes the install contract of the published package and should ship as 2.10.0 (or a canary first via npm run canary), with a note in the changelog/README.

Root package.json on the branch:

  • aws-cdk-lib moved from dependencies to peerDependencies (^2.224.0, the floor for Runtime.NODEJS_24_X). constructs added to peerDependencies (^10.0.0). Both stay in devDependencies (^2.268.0, ^10.8.1) for the build. dist/client.js requires both at runtime, so constructs being devDep-only was wrong, and aws-cdk-lib in dependencies risked a nested second copy in consumers (the "construct is not from this aws-cdk-lib" failure).
  • @hellocoop/definitions moved to dependencies (dist/client.d.ts imports Scope/ProviderHint from it).
  • @aws-sdk/client-lambda moved to devDependencies (dist/client.js does not use it; it exists so protocol/ typechecks).

Consumer impact: consumers on aws-cdk-lib < 2.224 now get ERESOLVE at install instead of a nested duplicate. Verified by installing the packed tarball into a fresh project on npm 11: peers auto-install, exactly one aws-cdk-lib in node_modules, synth works.

Also in this release: Lambda runtime NODEJS_22_XNODEJS_24_X in src/client.ts (guard message now says aws-cdk-lib 2.224.0 or later; the guard itself is dead under the peer floor). cdk-sample still synthesizes nodejs22.x because it depends on the published 2.9.0; it flips when 2.10 is out. Root engines.node was kept at >=22 (Node 22 can still run the construct at synth time); move to >=24 if the floor should match the runtime.

Found during the Node 24 / dependency upgrade, 2026-09-06 (see chore/deps-prune branch)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions