Skip to content

build(deps): bump @opentelemetry/resources from 2.12.0 to 3.0.0 - #154

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/opentelemetry/resources-3.0.0
Closed

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/opentelemetry/resources-3.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

Bumps @opentelemetry/resources from 2.12.0 to 3.0.0.

Release notes

Sourced from @​opentelemetry/resources's releases.

v3.0.0

3.0.0

Summary

  • The minimum supported Node.js has been raised to >=22.15.0. This means that support for Node.js 18 and 20 has been dropped.
  • The public interface has changed
  • Only experimental versions 0.300.0 are compatible with this release

💥 Breaking Changes

  • chore(sdk-trace-node)!: remove the @opentelemetry/sdk-trace-node package #7054
    • The sdk-trace-node package has been replaced by the @opentelemetry/sdk-trace package. See the 3.x migration guide for full migration instructions.
  • chore(shim-opentracing)!: remove the @opentelemetry/shim-opentracing package
  • chore(context-async-hooks)!: remove the unused class AsyncHooksContextManager #7078
  • feat!: migrate package builds from tsc to tsdown, emitting dual CJS/ESM output from a single dist/ directory and declaring an exports map on every package #6293 @​overbalance
    • Importing a package by its name is unaffected in both CommonJS and ESM, as is every subpath listed in its exports map.
    • Deep imports into the build output no longer resolve. An exports map is an allowlist that Node.js and bundlers enforce, so specifiers such as @opentelemetry/core/build/src/... or @opentelemetry/core/build/esm/... now fail with ERR_PACKAGE_PATH_NOT_EXPORTED. Rewriting them to the new file layout does not help — unlisted subpaths are rejected whether or not the file exists.
    • The emitted files moved out of build/src (CJS), build/esm and build/esnext (ESM) into dist/, using .cjs/.mjs extensions with matching .d.cts/.d.mts declarations.
    • <package>/package.json is no longer importable for the same reason. Read a package's version from your own dependency metadata, or use SDK_INFO from @opentelemetry/core for the SDK version.
    • The non-standard esnext entry point has been removed; tools that preferred it fall back to module (ESM) or main (CJS).
    • Packages that ship separate Node.js and browser implementations export them under explicit subpaths, for example @opentelemetry/core/platform. If you depend on something that is only reachable through a deep import, please open an issue so it can be considered for the public API.
  • feat(core)!: remove deprecated getTimeOrigin, otperformance, _globalThis, and unrefTimer from @opentelemetry/core #7053
    • getTimeOrigin() — use performance.timeOrigin directly.
    • otperformance — use the global performance object directly.
    • _globalThis — use globalThis directly.
    • unrefTimer(timer) — call timer.unref() directly in your own code.
  • feat(sdk-trace)!: remove deprecated TracerProviderOptions.forceFlushTimeoutMillis #7057
    • Pass timeoutMillis to provider.forceFlush({ timeoutMillis }) instead. The default timeout is 30000ms.
  • feat(propagator-jaeger)!: remove @opentelemetry/propagator-jaeger package #7077
    • The Jaeger propagator is deprecated by the OpenTelemetry specification in favour of W3CTraceContextPropagator. Use W3CTraceContextPropagator from @opentelemetry/core instead.
    • See the 3.x migration guide for full instructions.
  • feat(exporter-jaeger)!: remove @opentelemetry/exporter-jaeger package
    • The Jaeger exporter has been removed. Jaeger has deprecated its custom Thrift collection protocols in favor of standard OpenTelemetry Protocol (OTLP). Use standard OTLP exporters instead.
    • See the 3.x migration guide for full instructions.
  • chore!: bump minimum node.js version to >=22.15.0
  • chore(sdk-trace-base, sdk-trace-web)!: remove the @opentelemetry/sdk-trace-base and @opentelemetry/sdk-trace-web packages #7117
    • The sdk-trace-base, sdk-trace-web, and sdk-trace-node packages have been replaced by the @opentelemetry/sdk-trace package. See the 3.x migration guide for full migration instructions.
  • feat!: replace the browser field in package.json with #platform subpath imports #7141 @​overbalance
    • Resolvers with the node condition load the Node.js build; all others load the browser build. Bundlers without imports support fail; see the migration guide.
    • webpack needs 5.54 or later. Parcel needs package exports enabled and cannot resolve #platform from require().
    • Root type declarations describe the Node.js build.
  • feat(resources)!: remove the ./detectors/platform and ./detectors/platform/browser subpath exports; import from the package root #7141 @​overbalance
  • feat(core, sdk-trace, sdk-logs, exporter-zipkin)!: remove the ./platform and ./platform/browser subpath exports; import from the package root #7141 @​overbalance
  • fix(sdk-logs)!: replace LoggerConfig.disabled with enabled to match the specification #7160
    • Replace disabled: true with enabled: false, and disabled: false with enabled: true. Loggers remain enabled by default.

... (truncated)

Changelog

Sourced from @​opentelemetry/resources's changelog.

3.0.0

💥 Breaking Changes

  • chore(sdk-trace-node)!: remove the @opentelemetry/sdk-trace-node package #7054
    • The sdk-trace-node package has been replaced by the @opentelemetry/sdk-trace package. See the 3.x migration guide for full migration instructions.
  • chore(shim-opentracing)!: remove the @opentelemetry/shim-opentracing package
  • chore(context-async-hooks)!: remove the unused class AsyncHooksContextManager #7078
  • feat!: migrate package builds from tsc to tsdown, emitting dual CJS/ESM output from a single dist/ directory and declaring an exports map on every package #6293 @​overbalance
    • Importing a package by its name is unaffected in both CommonJS and ESM, as is every subpath listed in its exports map.
    • Deep imports into the build output no longer resolve. An exports map is an allowlist that Node.js and bundlers enforce, so specifiers such as @opentelemetry/core/build/src/... or @opentelemetry/core/build/esm/... now fail with ERR_PACKAGE_PATH_NOT_EXPORTED. Rewriting them to the new file layout does not help — unlisted subpaths are rejected whether or not the file exists.
    • The emitted files moved out of build/src (CJS), build/esm and build/esnext (ESM) into dist/, using .cjs/.mjs extensions with matching .d.cts/.d.mts declarations.
    • <package>/package.json is no longer importable for the same reason. Read a package's version from your own dependency metadata, or use SDK_INFO from @opentelemetry/core for the SDK version.
    • The non-standard esnext entry point has been removed; tools that preferred it fall back to module (ESM) or main (CJS).
    • If you depend on something that is only reachable through a deep import, please open an issue so it can be considered for the public API.
  • feat(core)!: remove deprecated getTimeOrigin, otperformance, _globalThis, and unrefTimer from @opentelemetry/core #7053
    • getTimeOrigin() — use performance.timeOrigin directly.
    • otperformance — use the global performance object directly.
    • _globalThis — use globalThis directly.
    • unrefTimer(timer) — call timer.unref() directly in your own code.
  • feat(sdk-trace)!: remove deprecated TracerProviderOptions.forceFlushTimeoutMillis #7057
    • Pass timeoutMillis to provider.forceFlush({ timeoutMillis }) instead. The default timeout is 30000ms.
  • feat(propagator-jaeger)!: remove @opentelemetry/propagator-jaeger package #7077
    • The Jaeger propagator is deprecated by the OpenTelemetry specification in favour of W3CTraceContextPropagator. Use W3CTraceContextPropagator from @opentelemetry/core instead.
    • See the 3.x migration guide for full instructions.
  • feat(exporter-jaeger)!: remove @opentelemetry/exporter-jaeger package
    • The Jaeger exporter has been removed. Jaeger has deprecated its custom Thrift collection protocols in favor of standard OpenTelemetry Protocol (OTLP). Use standard OTLP exporters instead.
    • See the 3.x migration guide for full instructions.
  • chore!: bump minimum node.js version to >=22.15.0
  • chore(sdk-trace-base, sdk-trace-web)!: remove the @opentelemetry/sdk-trace-base and @opentelemetry/sdk-trace-web packages #7117
    • The sdk-trace-base, sdk-trace-web, and sdk-trace-node packages have been replaced by the @opentelemetry/sdk-trace package. See the 3.x migration guide for full migration instructions.
  • feat!: replace the browser field in package.json with #platform subpath imports #7141 @​overbalance
    • Resolvers with the node condition load the Node.js build; all others load the browser build. Bundlers without imports support fail; see the migration guide.
    • webpack needs 5.54 or later. Parcel needs package exports enabled and cannot resolve #platform from require().
    • Root type declarations describe the Node.js build.
  • feat(resources)!: remove the ./detectors/platform and ./detectors/platform/browser subpath exports; import from the package root #7141 @​overbalance
  • feat(core, sdk-trace, sdk-logs, exporter-zipkin)!: remove the ./platform and ./platform/browser subpath exports; import from the package root #7141 @​overbalance
  • fix(sdk-logs)!: replace LoggerConfig.disabled with enabled to match the specification #7160
    • Replace disabled: true with enabled: false, and disabled: false with enabled: true. Loggers remain enabled by default.

🚀 Features

  • feat(sdk-metrics): stabilize maxExportBatchSize option in PeriodicExportingMetricReader
  • chore(sdk-logs): mark @opentelemetry/sdk-logs as stable #7143 @​trentm
  • feat(sdk-trace, sdk-logs): add the browser-only disableAutoFlushOnDocumentHide to BatchSpanProcessorOptions and BatchLogRecordProcessorOptions, deprecate BatchSpanProcessorBrowserOptions and BatchLogRecordProcessorBrowserOptions #7140 @​overbalance

🐛 Bug Fixes

... (truncated)

Commits
  • 12a5817 chore: prepare next release (#7213)
  • 2a97587 docs: 3.x migration doc edits (#7216)
  • ebefa76 chore(deps): update dependency eslint to v10.13.0 (#7129)
  • 83b6922 chore(deps): update dependency superagent to v10.4.1 (#7184)
  • 68e9e6e fix(otlp-exporter-base): pick fetch mode from the document origin, not locati...
  • 7d2455e build: lint for unused dependencies with knip (#7200)
  • 5e65e0e fix(core): no longer drop an attribute value that is an object that has `un...
  • 2fbb404 chore(deps): dedupe nx to 23.3.0 (#7205)
  • c971f52 docs(changelog): trim unreleased entries (#7203)
  • 2516215 feat(instrumentation)!: make InstrumentationBase#_enabled protected on both p...
  • Additional commits viewable in compare view

@dependabot
dependabot Bot requested a review from semics-tech as a code owner October 26, 2026 18:14
@dependabot @github

dependabot Bot commented on behalf of github Oct 26, 2026

Copy link
Copy Markdown
Contributor Author

Labels

The following labels could not be found: dependencies. Please create it before Dependabot can add it to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/opentelemetry/resources-3.0.0 branch from 8a7bb31 to b636e33 Compare October 31, 2026 02:03
Bumps [@opentelemetry/resources](https://github.com/open-telemetry/opentelemetry-js) from 2.12.0 to 3.0.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-js/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-js/blob/main/CHANGELOG.md)
- [Commits](open-telemetry/opentelemetry-js@v2.12.0...v3.0.0)

---
updated-dependencies:
- dependency-name: "@opentelemetry/resources"
  dependency-version: 3.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/opentelemetry/resources-3.0.0 branch from b636e33 to 4e0de39 Compare November 2, 2026 18:28
semics-tech added a commit that referenced this pull request Nov 3, 2026
)

Supersedes
[#153](#153)
(sdk-logs 0.223 -> 3.0.0) and
[#154](#154)
(resources 2.12 -> 3.0.0). **Both can be closed once this merges.** I
haven't touched the .github bumps #122-#126.

## Why #153/#154 failed
- **Dependency audit:** not caused by OpenTelemetry. Both dependabot
branches are based on an older `main`, so their lockfiles still pin
`node-forge@1.4.0` (6 high advisories, patched in 1.4.1). `main` already
has `node-forge ^1.4.2`, so basing on current `main` clears it. No audit
config change needed.
- **Demo compose stack (#153 only):** `seed` exited 1 on the stale base.
I couldn't pull the seed log out of the CI output, so this is
unconfirmed. Please check that this PR's Compose smoke run is green; if
it isn't, the seed log is the thing to read.

## Changes
- `@opentelemetry/resources` ^3.0.0, `@opentelemetry/sdk-logs` ^3.0.0.
The exporters stay on ^0.300.0, which depend on sdk-logs/sdk-trace
3.0.0.
- `sdk-trace-base` and `sdk-trace-node` have **no 3.x release**. They're
deprecated for `@opentelemetry/sdk-trace`, which 3.0.0 and the 0.300
trace exporter use. Tracing therefore moves to
`@opentelemetry/sdk-trace` ^3.0.0 plus
`@opentelemetry/context-async-hooks` ^3.0.0. This leaves a single copy
of each OTel package in the lockfile.
- `@opentelemetry/api` stays at ^1.10.0, which the 3.x peer range
(`>=1.10 <1.11`) needs. `api-logs` stays at 0.223.0, the latest
published; sdk-logs 3 no longer depends on it.
- `packages/server/src/tracing.ts` migration:
  - `NodeTracerProvider` becomes `TracerProvider`.
- `provider.register()` no longer exists, so the global provider and an
`AsyncLocalStorageContextManager` are set explicitly, and `stopTracing`
disables them again.
- `BatchSpanProcessor` and `SimpleSpanProcessor` now take `{ exporter
}`.
- The two existing tracing tests are updated to the new imports.
- New `packages/server/test/tracing.test.ts` needs no database. It
checks that the provider is registered, the active span survives an
`await`, sample ratio 0 drops spans, and `stopTracing` resets to no-op.
- `LoggerProvider` and `BatchLogRecordProcessor` in `audit-export.ts`
needed no source change.

## Node
No bump needed: `engines`, the Dockerfile (`node:24-bookworm-slim`) and
CI (`NODE_VERSION: 24`) are already above the 22.15 floor.

## Verification (local, host Node 24.21)
- `pnpm lint`: 0 errors. The one warning is in `Admin.tsx`.
- `pnpm typecheck`: clean.
- `vitest --project server test/tracing.test.ts`: 5/5 pass.
- **Not run locally:** the Postgres-backed server tests, including the
two updated tracing tests. The sandbox can't bind ports and containers
have no network, so I couldn't run them in Docker. CI's Unit tests job
is the check for those.

## Risk for the 10 Nov post
Low. The change is confined to the opt-in tracing and audit-export
paths, and both are off by default. Runtime behaviour is unchanged,
apart from the explicit context-manager registration needed on 3.x. The
main residual risk is OTLP export against a real collector, which no
test here covers.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---
_Draft opened by Oli's repos agent._

Co-authored-by: Agent Harness <agent@SEMICSs-Mac-mini.local>
Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
@semics-tech semics-tech closed this Nov 3, 2026
@dependabot @github

dependabot Bot commented on behalf of github Nov 3, 2026

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/npm_and_yarn/opentelemetry/resources-3.0.0 branch November 3, 2026 07:12
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