Skip to content

fix(deps): update module go.opentelemetry.io/otel/sdk to v1.40.0 [security]#199

Open
renovate[bot] wants to merge 1 commit intomainfrom
renovate/go-go.opentelemetry.io-otel-sdk-vulnerability
Open

fix(deps): update module go.opentelemetry.io/otel/sdk to v1.40.0 [security]#199
renovate[bot] wants to merge 1 commit intomainfrom
renovate/go-go.opentelemetry.io-otel-sdk-vulnerability

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate bot commented Mar 2, 2026

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
go.opentelemetry.io/otel/sdk v1.38.0v1.40.0 age confidence
go.opentelemetry.io/otel/sdk v1.35.0v1.40.0 age confidence
go.opentelemetry.io/otel/sdk v1.36.0v1.40.0 age confidence
go.opentelemetry.io/otel/sdk v1.34.0v1.40.0 age confidence
go.opentelemetry.io/otel/sdk v1.32.0v1.40.0 age confidence
go.opentelemetry.io/otel/sdk v1.27.0v1.40.0 age confidence

GitHub Vulnerability Alerts

CVE-2026-24051

Impact

The OpenTelemetry Go SDK in version v1.20.0-1.39.0 is vulnerable to Path Hijacking (Untrusted Search Paths) on macOS/Darwin systems. The resource detection code in sdk/resource/host_id.go executes the ioreg system command using a search path. An attacker with the ability to locally modify the PATH environment variable can achieve Arbitrary Code Execution (ACE) within the context of the application.

Patches

This has been patched in d45961b, which was released with v1.40.0.

References

Severity
  • CVSS Score: 7.0 / 10 (High)
  • Vector String: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H

Release Notes

open-telemetry/opentelemetry-go (go.opentelemetry.io/otel/sdk)

v1.40.0

Compare Source

v1.39.0

Compare Source

Overview

Added
  • Greatly reduce the cost of recording metrics in go.opentelemetry.io/otel/sdk/metric using hashing for map keys. (#​7175)
  • Add WithInstrumentationAttributeSet option to go.opentelemetry.io/otel/log, go.opentelemetry.io/otel/metric, and go.opentelemetry.io/otel/trace packages. This provides a concurrent-safe and performant alternative to WithInstrumentationAttributes by accepting a pre-constructed attribute.Set. (#​7287)
  • Add experimental observability for the Prometheus exporter in go.opentelemetry.io/otel/exporters/prometheus. Check the go.opentelemetry.io/otel/exporters/prometheus/internal/x package documentation for more information. (#​7345)
  • Add experimental observability metrics in go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc. (#​7353)
  • Add temporality selector functions DeltaTemporalitySelector, CumulativeTemporalitySelector, LowMemoryTemporalitySelector to go.opentelemetry.io/otel/sdk/metric. (#​7434)
  • Add experimental observability metrics for simple log processor in go.opentelemetry.io/otel/sdk/log. (#​7548)
  • Add experimental observability metrics in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc. (#​7459)
  • Add experimental observability metrics in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp. (#​7486)
  • Add experimental observability metrics for simple span processor in go.opentelemetry.io/otel/sdk/trace. (#​7374)
  • Add experimental observability metrics in go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp. (#​7512)
  • Add experimental observability metrics for manual reader in go.opentelemetry.io/otel/sdk/metric. (#​7524)
  • Add experimental observability metrics for periodic reader in go.opentelemetry.io/otel/sdk/metric. (#​7571)
  • Support OTEL_EXPORTER_OTLP_LOGS_INSECURE and OTEL_EXPORTER_OTLP_INSECURE environmental variables in go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp. (#​7608)
  • Add Enabled method to the Processor interface in go.opentelemetry.io/otel/sdk/log. All Processor implementations now include an Enabled method. (#​7639)
  • The go.opentelemetry.io/otel/semconv/v1.38.0 package. The package contains semantic conventions from the v1.38.0 version of the OpenTelemetry Semantic Conventions. See the migration documentation for information on how to upgrade from go.opentelemetry.io/otel/semconv/v1.37.0.(#​7648)
Changed
  • Distinct in go.opentelemetry.io/otel/attribute is no longer guaranteed to uniquely identify an attribute set. Collisions between Distinct values for different Sets are possible with extremely high cardinality (billions of series per instrument), but are highly unlikely. (#​7175)
  • WithInstrumentationAttributes in go.opentelemetry.io/otel/trace synchronously de-duplicates the passed attributes instead of delegating it to the returned TracerOption. (#​7266)
  • WithInstrumentationAttributes in go.opentelemetry.io/otel/meter synchronously de-duplicates the passed attributes instead of delegating it to the returned MeterOption. (#​7266)
  • WithInstrumentationAttributes in go.opentelemetry.io/otel/log synchronously de-duplicates the passed attributes instead of delegating it to the returned LoggerOption. (#​7266)
  • Rename the OTEL_GO_X_SELF_OBSERVABILITY environment variable to OTEL_GO_X_OBSERVABILITY in go.opentelemetry.io/otel/sdk/trace, go.opentelemetry.io/otel/sdk/log, and go.opentelemetry.io/otel/exporters/stdout/stdouttrace. (#​7302)
  • Improve performance of histogram Record in go.opentelemetry.io/otel/sdk/metric when min and max are disabled using NoMinMax. (#​7306)
  • Improve error handling for dropped data during translation by using prometheus.NewInvalidMetric in go.opentelemetry.io/otel/exporters/prometheus. ⚠️ Breaking Change: Previously, these cases were only logged and scrapes succeeded. Now, when translation would drop data (e.g., invalid label/value), the exporter emits a NewInvalidMetric, and Prometheus scrapes fail with HTTP 500 by default. To preserve the prior behavior (scrapes succeed while errors are logged), configure your Prometheus HTTP handler with: promhttp.HandlerOpts{ ErrorHandling: promhttp.ContinueOnError }. (#​7363)
  • Replace fnv hash with xxhash in go.opentelemetry.io/otel/attribute for better performance. (#​7371)
  • The default TranslationStrategy in go.opentelemetry.io/exporters/prometheus is changed from otlptranslator.NoUTF8EscapingWithSuffixes to otlptranslator.UnderscoreEscapingWithSuffixes. (#​7421)
  • Improve performance of concurrent measurements in go.opentelemetry.io/otel/sdk/metric. (#​7427)
  • Include W3C TraceFlags (bits 0–7) in the OTLP Span.Flags field in go.opentelemetry.io/exporters/otlp/otlptrace/otlptracehttp and go.opentelemetry.io/exporters/otlp/otlptrace/otlptracegrpc. (#​7438)
  • The ErrorType function in go.opentelemetry.io/otel/semconv/v1.37.0 now handles custom error types.
    If an error implements an ErrorType() string method, the return value of that method will be used as the error type. (#​7442)
Fixed
  • Fix WithInstrumentationAttributes options in go.opentelemetry.io/otel/trace, go.opentelemetry.io/otel/metric, and go.opentelemetry.io/otel/log to properly merge attributes when passed multiple times instead of replacing them. Attributes with duplicate keys will use the last value passed. (#​7300)
  • The equality of attribute.Set when using the Equal method is not affected by the user overriding the empty set pointed to by attribute.EmptySet in go.opentelemetry.io/otel/attribute. (#​7357)
  • Return partial OTLP export errors to the caller in go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc. (#​7372)
  • Return partial OTLP export errors to the caller in go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp. (#​7372)
  • Return partial OTLP export errors to the caller in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc. (#​7372)
  • Return partial OTLP export errors to the caller in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp. (#​7372)
  • Return partial OTLP export errors to the caller in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc. (#​7372)
  • Return partial OTLP export errors to the caller in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp. (#​7372)
  • Fix AddAttributes, SetAttributes, SetBody on Record in go.opentelemetry.io/otel/sdk/log to not mutate input. (#​7403)
  • Do not double record measurements of RecordSet methods in go.opentelemetry.io/otel/semconv/v1.37.0. (#​7655)
  • Do not double record measurements of RecordSet methods in go.opentelemetry.io/otel/semconv/v1.36.0. (#​7656)
Removed
  • Drop support for [Go 1.23]. (#​7274)
  • Remove the FilterProcessor interface in go.opentelemetry.io/otel/sdk/log. The Enabled method has been added to the Processor interface instead. All Processor implementations must now implement the Enabled method. Custom processors that do not filter records can implement Enabled to return true. (#​7639)

What's Changed


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • ""
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
Copy link
Copy Markdown
Contributor Author

renovate bot commented Mar 2, 2026

⚠️ Artifact update problem

Renovate failed to update artifacts related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: ansible/go.sum
Command failed: go get -t ./...
go: module go.opentelemetry.io/otel/sdk@v1.40.0 requires go >= 1.24.0; switching to go1.25.9
go: dagger/ansible imports
	dagger/ansible/internal/dagger: package dagger/ansible/internal/dagger is not in std (/runner/cache/others/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.9.linux-amd64/src/dagger/ansible/internal/dagger)

File name: crane/go.sum
Command failed: go get -t ./...
go: dagger/crane imports
	dagger/crane/internal/dagger: package dagger/crane/internal/dagger is not in std (/opt/containerbase/tools/golang/1.24.0/src/dagger/crane/internal/dagger)

File name: crossplane/go.sum
Command failed: go get -t ./...
go: dagger/crossplane imports
	dagger/crossplane/internal/dagger: package dagger/crossplane/internal/dagger is not in std (/opt/containerbase/tools/golang/1.25.5/src/dagger/crossplane/internal/dagger)

File name: dependencies/go.sum
Command failed: go get -t ./...
go: dagger/dependencies imports
	dagger/dependencies/internal/dagger: package dagger/dependencies/internal/dagger is not in std (/opt/containerbase/tools/golang/1.25.3/src/dagger/dependencies/internal/dagger)

File name: git/go.sum
Command failed: go get -t ./...
go: dagger/git imports
	dagger/git/internal/dagger: package dagger/git/internal/dagger is not in std (/opt/containerbase/tools/golang/1.24.4/src/dagger/git/internal/dagger)

File name: gitlab/go.sum
Command failed: go get -t ./...
go: dagger/gitlab imports
	dagger/gitlab/internal/dagger: package dagger/gitlab/internal/dagger is not in std (/opt/containerbase/tools/golang/1.24.0/src/dagger/gitlab/internal/dagger)

File name: go/go.sum
Command failed: go get -t ./...
go: module go.opentelemetry.io/otel/sdk@v1.40.0 requires go >= 1.24.0; switching to go1.25.9
go: dagger/go imports
	dagger/go/internal/dagger: package dagger/go/internal/dagger is not in std (/runner/cache/others/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.9.linux-amd64/src/dagger/go/internal/dagger)

File name: helm/go.sum
Command failed: go get -t ./...
go: dagger/helm imports
	dagger/helm/internal/dagger: package dagger/helm/internal/dagger is not in std (/opt/containerbase/tools/golang/1.24.4/src/dagger/helm/internal/dagger)

File name: homerun/go.sum
Command failed: go get -t ./...
go: dagger/homerun imports
	dagger/homerun/internal/dagger: package dagger/homerun/internal/dagger is not in std (/opt/containerbase/tools/golang/1.25.3/src/dagger/homerun/internal/dagger)

File name: kubernetes/go.sum
Command failed: go get -t ./...
go: dagger/kubernetes imports
	dagger/kubernetes/internal/dagger: package dagger/kubernetes/internal/dagger is not in std (/opt/containerbase/tools/golang/1.25.3/src/dagger/kubernetes/internal/dagger)

File name: kyverno/go.sum
Command failed: go get -t ./...
go: module go.opentelemetry.io/otel/sdk@v1.40.0 requires go >= 1.24.0; switching to go1.25.9
go: dagger/kyverno imports
	dagger/kyverno/internal/dagger: package dagger/kyverno/internal/dagger is not in std (/runner/cache/others/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.9.linux-amd64/src/dagger/kyverno/internal/dagger)

File name: linting/go.sum
Command failed: go get -t ./...
go: dagger/linting imports
	dagger/linting/internal/dagger: package dagger/linting/internal/dagger is not in std (/opt/containerbase/tools/golang/1.25.1/src/dagger/linting/internal/dagger)

File name: python/go.sum
Command failed: go get -t ./...
go: dagger/python imports
	dagger/python/internal/dagger: package dagger/python/internal/dagger is not in std (/opt/containerbase/tools/golang/1.26.0/src/dagger/python/internal/dagger)

File name: release/go.sum
Command failed: go get -t ./...
go: dagger/release imports
	dagger/release/internal/dagger: package dagger/release/internal/dagger is not in std (/opt/containerbase/tools/golang/1.24.4/src/dagger/release/internal/dagger)

File name: sops/go.sum
Command failed: go get -t ./...
go: dagger/sops imports
	dagger/sops/internal/dagger: package dagger/sops/internal/dagger is not in std (/opt/containerbase/tools/golang/1.24.4/src/dagger/sops/internal/dagger)

File name: templating/go.sum
Command failed: go get -t ./...
go: downloading golang.org/x/crypto v0.42.0
go: dagger/templating imports
	dagger/templating/internal/dagger: package dagger/templating/internal/dagger is not in std (/opt/containerbase/tools/golang/1.25.3/src/dagger/templating/internal/dagger)

File name: trivy/go.sum
Command failed: go get -t ./...
go: dagger/trivy imports
	dagger/trivy/internal/dagger: package dagger/trivy/internal/dagger is not in std (/opt/containerbase/tools/golang/1.24.4/src/dagger/trivy/internal/dagger)

@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from 345c994 to aa1d341 Compare March 5, 2026 18:35
@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from aa1d341 to 19ffd60 Compare March 14, 2026 06:16
@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from 19ffd60 to 4716d30 Compare March 17, 2026 09:33
@renovate renovate bot changed the title fix(deps): update module go.opentelemetry.io/otel/sdk to v1.40.0 [security] fix(deps): update module go.opentelemetry.io/otel/sdk to v1.40.0 [security] - autoclosed Mar 27, 2026
@renovate renovate bot closed this Mar 27, 2026
@renovate renovate bot deleted the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch March 27, 2026 01:11
@renovate renovate bot changed the title fix(deps): update module go.opentelemetry.io/otel/sdk to v1.40.0 [security] - autoclosed fix(deps): update module go.opentelemetry.io/otel/sdk to v1.40.0 [security] Mar 30, 2026
@renovate renovate bot reopened this Mar 30, 2026
@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from 4716d30 to c2ebdde Compare March 30, 2026 22:14
@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from c2ebdde to 52059d6 Compare March 31, 2026 09:45
@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from 52059d6 to e77e25c Compare March 31, 2026 11:11
@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from e77e25c to 7bbfebc Compare March 31, 2026 13:44
@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from 7bbfebc to e2c3da0 Compare April 1, 2026 18:41
@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from e2c3da0 to eedd302 Compare April 6, 2026 13:20
@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from eedd302 to 85ec507 Compare April 13, 2026 13:35
@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from 85ec507 to fb7e9dd Compare April 13, 2026 17:39
@renovate renovate bot force-pushed the renovate/go-go.opentelemetry.io-otel-sdk-vulnerability branch from fb7e9dd to 450fb19 Compare April 15, 2026 10:07
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.

0 participants