Skip to content

Comments

feat(node): Bump to latest @fastify/otel#19452

Draft
andreiborza wants to merge 2 commits intodevelopfrom
ab/unvendor-fastify-otel
Draft

feat(node): Bump to latest @fastify/otel#19452
andreiborza wants to merge 2 commits intodevelopfrom
ab/unvendor-fastify-otel

Conversation

@andreiborza
Copy link
Member

This PR unvendors @fastify/otel and bumps to the latest version. We can do this now because the newest minimatch expanded node support to node 18.

Closes: #19450

This PR unvendors `@fastify/otel` and bumps to the latest version. We can do
this now because the newest `minimatch` expanded node support to node 18.

Closes: #19450
@github-actions
Copy link
Contributor

github-actions bot commented Feb 20, 2026

size-limit report 📦

Path Size % Change Change
@sentry/browser 25.61 kB added added
@sentry/browser - with treeshaking flags 24.12 kB added added
@sentry/browser (incl. Tracing) 42.42 kB added added
@sentry/browser (incl. Tracing, Profiling) 47.08 kB added added
@sentry/browser (incl. Tracing, Replay) 81.24 kB added added
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 70.86 kB added added
@sentry/browser (incl. Tracing, Replay with Canvas) 85.93 kB added added
@sentry/browser (incl. Tracing, Replay, Feedback) 98.09 kB added added
@sentry/browser (incl. Feedback) 42.33 kB added added
@sentry/browser (incl. sendFeedback) 30.28 kB added added
@sentry/browser (incl. FeedbackAsync) 35.28 kB added added
@sentry/browser (incl. Metrics) 26.78 kB added added
@sentry/browser (incl. Logs) 26.92 kB added added
@sentry/browser (incl. Metrics & Logs) 27.6 kB added added
@sentry/react 27.37 kB added added
@sentry/react (incl. Tracing) 44.76 kB added added
@sentry/vue 30.06 kB added added
@sentry/vue (incl. Tracing) 44.26 kB added added
@sentry/svelte 25.64 kB added added
CDN Bundle 28.16 kB added added
CDN Bundle (incl. Tracing) 43.25 kB added added
CDN Bundle (incl. Logs, Metrics) 29 kB added added
CDN Bundle (incl. Tracing, Logs, Metrics) 44.09 kB added added
CDN Bundle (incl. Replay, Logs, Metrics) 68.08 kB added added
CDN Bundle (incl. Tracing, Replay) 80.12 kB added added
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 80.99 kB added added
CDN Bundle (incl. Tracing, Replay, Feedback) 85.56 kB added added
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 86.46 kB added added
CDN Bundle - uncompressed 82.33 kB added added
CDN Bundle (incl. Tracing) - uncompressed 128.05 kB added added
CDN Bundle (incl. Logs, Metrics) - uncompressed 85.17 kB added added
CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 130.88 kB added added
CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 208.83 kB added added
CDN Bundle (incl. Tracing, Replay) - uncompressed 244.93 kB added added
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 247.75 kB added added
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 257.73 kB added added
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 260.54 kB added added
@sentry/nextjs (client) 47.17 kB added added
@sentry/sveltekit (client) 42.88 kB added added
@sentry/node-core 52.18 kB added added
@sentry/node 169.92 kB added added
@sentry/node - without tracing 93.97 kB added added
@sentry/aws-serverless 109.47 kB added added

@github-actions
Copy link
Contributor

github-actions bot commented Feb 20, 2026

node-overhead report 🧳

Note: This is a synthetic benchmark with a minimal express app and does not necessarily reflect the real-world performance impact in an application.

Scenario Requests/s % of Baseline Prev. Requests/s Change %
GET Baseline 9,028 - 11,689 -23%
GET With Sentry 1,738 19% 1,949 -11%
GET With Sentry (error only) 6,172 68% 7,606 -19%
POST Baseline 1,212 - 1,295 -6%
POST With Sentry 597 49% 617 -3%
POST With Sentry (error only) 1,072 88% 1,098 -2%
MYSQL Baseline 3,391 - 3,497 -3%
MYSQL With Sentry 518 15% 450 +15%
MYSQL With Sentry (error only) 2,763 81% 2,970 -7%

View base workflow run

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

- Cast instrumentFastify return type to prevent @fastify/otel types from
  leaking into the public API (fixes TS 3.8 and TS 5.0 compatibility)
- Remove `service.name` span assertions no longer emitted by @fastify/otel@0.16.0
- Bump @sentry/node size limit from 167KB to 171KB
Comment on lines 12491 to 12501
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==

balanced-match@^4.0.2:
version "4.0.3"
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-4.0.3.tgz#6337a2f23e0604a30481423432f99eac603599f9"
integrity sha512-1pHv8LX9CpKut1Zp4EXey7Z8OfH11ONNH6Dhi2WDUt31VVZFXZzKwXcysBgqSumFCmR+0dqjMK5v5JiFHzi0+g==

bare-events@^2.2.0, bare-events@^2.5.4:
version "2.5.4"
resolved "https://registry.yarnpkg.com/bare-events/-/bare-events-2.5.4.tgz#16143d435e1ed9eafd1ab85f12b89b3357a41745"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: The new @fastify/otel dependency transitively adds minimatch@10, which requires Node.js 20+, but @sentry/node supports Node.js 18+, causing a version incompatibility.
Severity: HIGH

Suggested Fix

To resolve the Node.js engine incompatibility, consider using a resolutions field in package.json to force minimatch to a version compatible with Node.js 18, such as the latest v9 release. Alternatively, investigate if @fastify/otel can be configured to use a compatible version or if there is a patch release that addresses this issue. If not, the @sentry/node package's supported Node.js version may need to be updated to "node": ">=20".

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.

Location: yarn.lock#L12491-L12501

Potential issue: The update to `@fastify/otel@0.16.0` introduces a transitive dependency
on `minimatch@^10.0.3`, which requires Node.js version 20 or higher. However, the
`@sentry/node` package's `engines` field specifies support for Node.js version 18 and
up. This creates a direct incompatibility. Users running `@sentry/node` on Node.js 18 or
19 will install the incompatible `minimatch` version. This can lead to runtime errors
when the Fastify instrumentation is active, as `@fastify/otel` uses `minimatch` to
process its `ignorePaths` configuration.

Did we get this right? 👍 / 👎 to inform future reviews.

@andreiborza andreiborza marked this pull request as draft February 20, 2026 12:15
@andreiborza
Copy link
Member Author

Drafting this because transitive deps require node 20 :'(

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Unvendor @fastify/otel

1 participant