Skip to content

Since v9.17.0, peer dependencies issues have been introduced #16245

Description

@EDM115

Is there an existing issue for this?

How do you use Sentry?

Sentry Saas (sentry.io)

Which SDK are you using?

@sentry/nextjs

SDK Version

9.17.0

Framework Version

Next 15.3.2

Link to Sentry event

No response

Reproduction Example/SDK Setup

No response

Steps to Reproduce

This issue is more likely to appear in monorepos as I found, but basically since the introduction of @fastify/otel, it clashes with @sentry/opentelemetry, both of them wanting different versions of @opentelemetry packages :

mkdir test && cd test
pnpm init
mkdir packages/node && cd packages/node
pnpm init
pnpm add @sentry/node
cd ..\.. && mkdir services/next && cd services/next
pnpm init
pnpm add @sentry/nextjs
cd ..\..
echo "packages:
  - services/*
  - packages/*
" > pnpm-workspace.yaml
pnpm i

Expected Result

There should be no peer dependencies issues

Actual Result

PS C:\Users\EDM115\Desktop\test> pnpm i
Scope: all 3 workspace projects
Packages: +275
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Progress: resolved 326, reused 275, downloaded 0, added 275, done
 WARN  Issues with peer dependencies found
services/next
└─┬ @sentry/nextjs 9.17.0
  └─┬ @sentry/opentelemetry 9.17.0
    ├── ✕ unmet peer @opentelemetry/core@^1.30.1: found 2.0.0
    └── ✕ unmet peer @opentelemetry/instrumentation@^0.57.1: found 0.200.0

╭ Warning ───────────────────────────────────────────────────────────────────────────────────╮
│                                                                                            │
│   Ignored build scripts: @sentry/cli, sharp.                                               │
│   Run "pnpm approve-builds" to pick which dependencies should be allowed to run scripts.   │
│                                                                                            │
╰────────────────────────────────────────────────────────────────────────────────────────────╯

Done in 18.2s using pnpm v10.7.0
PS C:\Users\EDM115\Desktop\test> pnpm why -r @opentelemetry/core
Legend: production dependency, optional only, dev only

node@1.0.0 C:\Users\EDM115\Desktop\test\packages\node

dependencies:
@sentry/node 9.17.0
├─┬ @fastify/otel 0.6.0
│ └── @opentelemetry/core 2.0.0
├── @opentelemetry/core 1.30.1
├─┬ @opentelemetry/instrumentation-amqplib 0.46.1
│ └── @opentelemetry/core 1.30.1
├─┬ @opentelemetry/instrumentation-connect 0.43.1
│ └── @opentelemetry/core 1.30.1
├─┬ @opentelemetry/instrumentation-express 0.47.1
│ └── @opentelemetry/core 1.30.1
├─┬ @opentelemetry/instrumentation-fs 0.19.1
│ └── @opentelemetry/core 1.30.1
├─┬ @opentelemetry/instrumentation-hapi 0.45.2
│ └── @opentelemetry/core 1.30.1
├─┬ @opentelemetry/instrumentation-http 0.57.2
│ └── @opentelemetry/core 1.30.1
├─┬ @opentelemetry/instrumentation-koa 0.47.1
│ └── @opentelemetry/core 1.30.1
└─┬ @opentelemetry/instrumentation-mongoose 0.46.1
  └── @opentelemetry/core 1.30.1

next@1.0.0 C:\Users\EDM115\Desktop\test\services\next

dependencies:
@sentry/nextjs 9.17.0
└─┬ @sentry/node 9.17.0
  ├─┬ @fastify/otel 0.6.0
  │ └── @opentelemetry/core 2.0.0
  ├── @opentelemetry/core 1.30.1
  ├─┬ @opentelemetry/instrumentation-amqplib 0.46.1
  │ └── @opentelemetry/core 1.30.1
  ├─┬ @opentelemetry/instrumentation-connect 0.43.1
  │ └── @opentelemetry/core 1.30.1
  ├─┬ @opentelemetry/instrumentation-express 0.47.1
  │ └── @opentelemetry/core 1.30.1
  ├─┬ @opentelemetry/instrumentation-fs 0.19.1
  │ └── @opentelemetry/core 1.30.1
  ├─┬ @opentelemetry/instrumentation-hapi 0.45.2
  │ └── @opentelemetry/core 1.30.1
  ├─┬ @opentelemetry/instrumentation-http 0.57.2
  │ └── @opentelemetry/core 1.30.1
  ├─┬ @opentelemetry/instrumentation-koa 0.47.1
  │ └── @opentelemetry/core 1.30.1
  └─┬ @opentelemetry/instrumentation-mongoose 0.46.1
    └── @opentelemetry/core 1.30.1
PS C:\Users\EDM115\Desktop\test> pnpm why -r @opentelemetry/instrumentation
Legend: production dependency, optional only, dev only

node@1.0.0 C:\Users\EDM115\Desktop\test\packages\node

dependencies:
@sentry/node 9.17.0
├─┬ @fastify/otel 0.6.0
│ └── @opentelemetry/instrumentation 0.200.0
├── @opentelemetry/instrumentation 0.57.2
├─┬ @opentelemetry/instrumentation-amqplib 0.46.1
│ └── @opentelemetry/instrumentation 0.57.2
├─┬ @opentelemetry/instrumentation-connect 0.43.1
│ └── @opentelemetry/instrumentation 0.57.2
├─┬ @opentelemetry/instrumentation-dataloader 0.16.1
│ └── @opentelemetry/instrumentation 0.57.2
├─┬ @opentelemetry/instrumentation-express 0.47.1
│ └── @opentelemetry/instrumentation 0.57.2
├─┬ @opentelemetry/instrumentation-fs 0.19.1
│ └── @opentelemetry/instrumentation 0.57.2
├─┬ @opentelemetry/instrumentation-generic-pool 0.43.1
│ └── @opentelemetry/instrumentation 0.57.2
├─┬ @opentelemetry/instrumentation-graphql 0.47.1
│ └── @opentelemetry/instrumentation 0.57.2
└─┬ @opentelemetry/instrumentation-hapi 0.45.2
  └── @opentelemetry/instrumentation 0.57.2

next@1.0.0 C:\Users\EDM115\Desktop\test\services\next

dependencies:
@sentry/nextjs 9.17.0
└─┬ @sentry/node 9.17.0
  ├─┬ @fastify/otel 0.6.0
  │ └── @opentelemetry/instrumentation 0.200.0
  ├── @opentelemetry/instrumentation 0.57.2
  ├─┬ @opentelemetry/instrumentation-amqplib 0.46.1
  │ └── @opentelemetry/instrumentation 0.57.2
  ├─┬ @opentelemetry/instrumentation-connect 0.43.1
  │ └── @opentelemetry/instrumentation 0.57.2
  ├─┬ @opentelemetry/instrumentation-dataloader 0.16.1
  │ └── @opentelemetry/instrumentation 0.57.2
  ├─┬ @opentelemetry/instrumentation-express 0.47.1
  │ └── @opentelemetry/instrumentation 0.57.2
  ├─┬ @opentelemetry/instrumentation-fs 0.19.1
  │ └── @opentelemetry/instrumentation 0.57.2
  ├─┬ @opentelemetry/instrumentation-generic-pool 0.43.1
  │ └── @opentelemetry/instrumentation 0.57.2
  ├─┬ @opentelemetry/instrumentation-graphql 0.47.1
  │ └── @opentelemetry/instrumentation 0.57.2
  └─┬ @opentelemetry/instrumentation-hapi 0.45.2
    └── @opentelemetry/instrumentation 0.57.2

Activity

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

Metadata

Metadata

Assignees

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions