Skip to content

Drop support for Go 1.24 - #7984

Merged
pellared merged 7 commits into
open-telemetry:mainfrom
MrAlias:drop-go-1.24
Mar 2, 2026
Merged

Drop support for Go 1.24#7984
pellared merged 7 commits into
open-telemetry:mainfrom
MrAlias:drop-go-1.24

Conversation

@MrAlias

@MrAlias MrAlias commented Mar 2, 2026

Copy link
Copy Markdown
Contributor

No description provided.

@MrAlias MrAlias added this to the v1.42.0 milestone Mar 2, 2026
@MrAlias
MrAlias marked this pull request as ready for review March 2, 2026 19:13
@MrAlias
MrAlias requested review from XSAM and dashpole as code owners March 2, 2026 19:13
Copilot AI review requested due to automatic review settings March 2, 2026 19:13
@XSAM
XSAM self-requested a review March 2, 2026 19:14

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR drops Go 1.24 compatibility across the repository by updating module minimum Go versions and removing Go 1.24 from the documented/CI-tested support matrix.

Changes:

  • Bump go directives from 1.24.0 to 1.25.0 across all affected modules.
  • Remove Go 1.24 from CI compatibility-test matrix.
  • Update documentation to reflect supported Go versions and note the removal in the changelog.

Reviewed changes

Copilot reviewed 30 out of 30 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
trace/internal/telemetry/test/go.mod Bump module go directive to 1.25.0.
trace/go.mod Bump module go directive to 1.25.0.
sdk/metric/go.mod Bump module go directive to 1.25.0.
sdk/log/logtest/go.mod Bump module go directive to 1.25.0.
sdk/log/go.mod Bump module go directive to 1.25.0.
sdk/go.mod Bump module go directive to 1.25.0.
schema/go.mod Bump module go directive to 1.25.0.
metric/go.mod Bump module go directive to 1.25.0.
log/logtest/go.mod Bump module go directive to 1.25.0.
log/go.mod Bump module go directive to 1.25.0.
internal/tools/go.mod Bump module go directive to 1.25.0.
go.mod Bump root module go directive to 1.25.0.
exporters/zipkin/go.mod Bump module go directive to 1.25.0.
exporters/stdout/stdouttrace/go.mod Bump module go directive to 1.25.0.
exporters/stdout/stdoutmetric/go.mod Bump module go directive to 1.25.0.
exporters/stdout/stdoutlog/go.mod Bump module go directive to 1.25.0.
exporters/prometheus/go.mod Bump module go directive to 1.25.0.
exporters/otlp/otlptrace/otlptracehttp/go.mod Bump module go directive to 1.25.0.
exporters/otlp/otlptrace/otlptracegrpc/go.mod Bump module go directive to 1.25.0.
exporters/otlp/otlptrace/go.mod Bump module go directive to 1.25.0.
exporters/otlp/otlpmetric/otlpmetrichttp/go.mod Bump module go directive to 1.25.0.
exporters/otlp/otlpmetric/otlpmetricgrpc/go.mod Bump module go directive to 1.25.0.
exporters/otlp/otlplog/otlploghttp/go.mod Bump module go directive to 1.25.0.
exporters/otlp/otlplog/otlploggrpc/go.mod Bump module go directive to 1.25.0.
bridge/opentracing/go.mod Bump module go directive to 1.25.0.
bridge/opencensus/test/go.mod Bump module go directive to 1.25.0.
bridge/opencensus/go.mod Bump module go directive to 1.25.0.
README.md Remove Go 1.24 from the supported-environments table.
CHANGELOG.md Add an Unreleased “Removed” entry for dropping Go 1.24 support.
.github/workflows/ci.yml Remove Go 1.24 from the compatibility-test Go version matrix.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread CHANGELOG.md Outdated
Comment thread CHANGELOG.md Outdated
@pellared

pellared commented Mar 2, 2026

Copy link
Copy Markdown
Member

@MrAlias, can you fix the linter issues?

@codecov

codecov Bot commented Mar 2, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 81.7%. Comparing base (f1f16bc) to head (a4d3f98).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##            main   #7984     +/-   ##
=======================================
- Coverage   81.7%   81.7%   -0.1%     
=======================================
  Files        304     304             
  Lines      23339   23337      -2     
=======================================
- Hits       19088   19083      -5     
- Misses      3863    3865      +2     
- Partials     388     389      +1     
Files with missing lines Coverage Δ
sdk/trace/batch_span_processor.go 81.8% <100.0%> (-0.2%) ⬇️

... and 2 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
@pellared
pellared merged commit d5febb9 into open-telemetry:main Mar 2, 2026
33 of 34 checks passed
@MrAlias
MrAlias deleted the drop-go-1.24 branch March 2, 2026 21:53
pellared added a commit that referenced this pull request Mar 6, 2026
### Added

- Add `go.opentelemetry.io/otel/semconv/v1.40.0` package.
The package contains semantic conventions from the `v1.40.0` version of
the OpenTelemetry Semantic Conventions.
See the [migration documentation](./semconv/v1.40.0/MIGRATION.md) for
information on how to upgrade from
`go.opentelemetry.io/otel/semconv/v1.39.0`. (#7985)
- Add `Err` and `SetErr` on `Record` in `go.opentelemetry.io/otel/log`
to attach an error and set record exception attributes in
`go.opentelemetry.io/otel/log/sdk`. (#7924)

### Changed

- `TracerProvider.ForceFlush` in `go.opentelemetry.io/otel/sdk/trace`
joins errors together and continues iteration through SpanProcessors as
opposed to returning the first encountered error without attempting
exports on subsequent SpanProcessors. (#7856)

### Fixed

- Fix missing `request.GetBody` in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp` to
correctly handle HTTP2 GOAWAY frame. (#7931)
- Fix semconv v1.39.0 generated metric helpers skipping required
attributes when extra attributes were empty. (#7964)
- Preserve W3C TraceFlags bitmask (including the random Trace ID flag)
during trace context extraction and injection in
`go.opentelemetry.io/otel/propagation`. (#7834)

### Removed

- Drop support for [Go 1.24]. (#7984)
@hitzhangjie

hitzhangjie commented Mar 30, 2026

Copy link
Copy Markdown

@MrAlias Why drop support for go1.24. The reason is not clear, and maybe not that enough.
If using a lower version is OK, more old projects will benefit from your following updates.

@dmathieu

Copy link
Copy Markdown
Member

See our compatibility policy: https://github.com/open-telemetry/opentelemetry-go?tab=readme-ov-file#compatibility
1.24 is not supported anymore. You won't get security fixes for it, you should upgrade.

@hitzhangjie

Copy link
Copy Markdown

See our compatibility policy: https://github.com/open-telemetry/opentelemetry-go?tab=readme-ov-file#compatibility 1.24 is not supported anymore. You won't get security fixes for it, you should upgrade.

Thank you very much.

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

Labels

None yet

7 participants