chore: update dependencies and improve compatibility with NestJS 11 a…#14
chore: update dependencies and improve compatibility with NestJS 11 a…#14yuval-hazaz wants to merge 2 commits intomainfrom
Conversation
Completed Working on "Auto PR Description"✅ Workflow completed successfully. |
Completed Working on "Auto PR Description"✅ Workflow completed successfully. |
There was a problem hiding this comment.
Summary: 3 MAJOR findings — peer/dev dependency ranges for @nestjs/event-emitter still cap at v2 so NestJS 11 installs fail, and the README’s compatibility table points to OpenTelemetry 0.55.x even though the package still peers on 0.54.x. Key themes: (1) dependency ranges don’t yet cover the NestJS 11 stack despite the claim of compatibility, (2) documentation diverges from the actual peer requirements, which will confuse adopters. Next steps: expand the peer/dev dependency ranges to include the NestJS 11-supported versions (and regenerate the lockfile) and align the README compatibility matrix with the actual OpenTelemetry version accepted by the package.
| "peerDependencies": { | ||
| "@nestjs/core": " ^8.0.0 || ^9.0.0 || ^10.0.0", | ||
| "@nestjs/common": "^8.0.0 || ^9.0.0 || ^10.0.0", | ||
| "@nestjs/core": "^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0", |
There was a problem hiding this comment.
[MAJOR]: The PR claims NestJS 11 compatibility, but peerDependencies['@nestjs/event-emitter'] still only allows ^1 or ^2. Nest 11 projects must use @nestjs/event-emitter@3, whose own peer deps require @nestjs/common/core ^10 || ^11 (see the lockfile entry resolving to 3.0.1). As written, consumers on Nest 11 will hit peer-dependency conflicts when installing this package.
Suggested fix: Extend the peer dependency range to include ^3.0.0 (and regenerate the lockfile) so Nest 11 users can satisfy the requirement without errors.
| "@nestjs/cli": "^11.0.0", | ||
| "@nestjs/common": "^11.0.0", | ||
| "@nestjs/core": "^11.0.0", | ||
| "@nestjs/event-emitter": "^3.0.0", |
There was a problem hiding this comment.
[MAJOR]: devDependencies['@nestjs/event-emitter'] is pinned to ^2.0.0 even though the rest of the dev stack (e.g., @nestjs/common/core ^11) requires the 3.x line. Installing from a clean tree will therefore try to fetch 2.x, which does not accept Nest 11 peers and causes npm install failures; the lockfile currently only works because it still pins 3.0.1.
Suggested fix: Bump the dev dependency to ^3.0.0 and rerun npm install so the lockfile reflects the Nest 11-compatible version.
| | 8.x | 2.x.x | | ||
| | Nestjs | Nestjs-OpenTelemetry | Node.js | OpenTelemetry | | ||
| | ------ | -------------------- | ------- | ------------- | | ||
| | 11.x | 6.x.x | >=20 | 0.55.x / 1.30.x | |
There was a problem hiding this comment.
[MAJOR]: The NestJS 11 / 6.x row claims you must pair this library with OpenTelemetry 0.55.x/1.30.x, but the package peerDependencies still pin @opentelemetry/auto-instrumentations-node to ^0.54.0 (see package.json line 111). Following the docs would force users to install a version range your package actively rejects.
Suggested fix: Update the compatibility table to list 0.54.x / 1.30.x (or bump the peer dependency to ^0.55.0 so the documentation is accurate).
Summary
This PR releases
@amplication/opentelemetry-nestjsversion 6.0.1 with refreshed peer/dev dependencies that align with NestJS 11, OpenTelemetry 1.30, and a minimum Node.js 20 runtime. It also updates the README with a detailed compatibility matrix and requirements, and tweaks the default HTTP instrumentation to emit incoming spans even when no parent context exists.Changes
Commits
Testing