Skip to content

feat(renovate): widen @opentelemetry/* peer-dep ranges#45

Merged
jr200 merged 1 commit into
masterfrom
feat/renovate-otel-peerdep-widen
Apr 22, 2026
Merged

feat(renovate): widen @opentelemetry/* peer-dep ranges#45
jr200 merged 1 commit into
masterfrom
feat/renovate-otel-peerdep-widen

Conversation

@jr200

@jr200 jr200 commented Apr 22, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add packageRule: widen (not bump) peer-dep ranges for @opentelemetry/* packages
  • Scoped to peerDependencies only; regular deps still bump as before

Why

Preparing for JRL-11 (OTel instrumentation in xstate-nats + xstate-duckdb). Those libs will declare @opentelemetry/api as a peer dep.

@opentelemetry/api exposes a global singleton — provider.register() and trace.getTracer() must touch the same module copy, else spans silently become no-ops. A narrow peer range in a library can force a second copy of the api package to resolve alongside the consumer's, breaking OTel end-to-end with no error surface.

rangeStrategy: "widen" keeps the existing peer range satisfied while also admitting the new upper bound, so Renovate can bump the api package in consumers without churning every library release.

Linked: JRL-11

Test plan

  • Renovate bot validates the config on next run (no schema errors on the dashboard)
  • After merge, verify downstream PR in a consumer that already has @opentelemetry/api as peerDep behaves as widen (e.g. ^1.9.0^1.9.0 || ^1.10.0) rather than bump (^1.9.0^1.10.0)

Libraries declaring @opentelemetry/api as a peer dep must let the
consumer control the installed version. Narrowing the peer range
risks a second copy of @opentelemetry/api resolving alongside the
consumer's: provider.register() hits one module's singleton while
trace.getTracer() reads the other, producing silent no-op spans
with no error surface.

rangeStrategy=widen keeps the existing range satisfied while also
admitting the newer version, so Renovate bumps the API package in
consumers without forcing lib churn.

Scoped to @opentelemetry/** in peerDependencies only; regular deps
still follow the default bump strategy.
@jr200 jr200 merged commit 0b49595 into master Apr 22, 2026
2 checks passed
@jr200 jr200 deleted the feat/renovate-otel-peerdep-widen branch April 22, 2026 12:44
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.

1 participant