Skip to content

Opentelemetry api npm peer dep broken with strict pnpm #13219

Closed
@vchernin

Description

@vchernin

Is there an existing issue for this?

How do you use Sentry?

Self-hosted/on-premise

Which SDK are you using?

@sentry/node

SDK Version

8.22.0

Framework Version

No response

Link to Sentry event

No response

Reproduction Example/SDK Setup

No response

Steps to Reproduce

.npmrc (despite this originally being for npm, pnpm stores its own config options in this file):

strict-peer-dependencies=true

package.json:

{
  "name": "my-local-package",
  "dependencies": {
    "@sentry/node": "8.22.0"
  }
}

pnpm install

Tested with pnpm 9.6.0.

Expected Result

Correct peer deps versions and successful installation with the strict-peer-dependencies setting enabled.

Perhaps the @opentelemetry/api version from @sentry/node should be downgraded, or maybe the @opentelemetry/instrumentation-mongodb can be upgraded.

The pnpm setting strict-peer-dependencies is not enabled by default and I could set it to false. But it seems like a bug to have potential version mismatch.

Actual Result

Result:

Scope: all 12 workspace projects
Progress: resolved 1, reused 0, downloaded 0, added 0
Progress: resolved 117, reused 0, downloaded 0, added 0
Progress: resolved 472, reused 0, downloaded 0, added 0
Progress: resolved 869, reused 0, downloaded 0, added 0
Progress: resolved 1104, reused 0, downloaded 0, added 0
Progress: resolved 1124, reused 0, downloaded 0, added 0, done
 ERR_PNPM_PEER_DEP_ISSUES  Unmet peer dependencies

my-local-package
└─┬ @sentry/node 8.22.0
  └─┬ @opentelemetry/instrumentation-mongodb 0.46.0
    └─┬ @opentelemetry/sdk-metrics 1.24.1
      ├── ✕ unmet peer @opentelemetry/api@">=1.3.0 <1.9.0": found 1.9.0 in @sentry/node
      ├─┬ @opentelemetry/core 1.24.1
      │ └── ✕ unmet peer @opentelemetry/api@">=1.0.0 <1.9.0": found 1.9.0 in @sentry/node
      └─┬ @opentelemetry/resources 1.24.1
        └── ✕ unmet peer @opentelemetry/api@">=1.0.0 <1.9.0": found 1.9.0 in @sentry/node

hint: If you don't want pnpm to fail on peer dependency issues, add "strict-peer-dependencies=false" to an .npmrc file at the root of your project.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Package: nodeIssues related to the Sentry Node SDK

    Type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions