From 44ea53bad8e9a6507113b3a49e99e01506beb1be Mon Sep 17 00:00:00 2001 From: Damien Mathieu <42@dmathieu.com> Date: Thu, 13 Feb 2025 10:31:16 +0100 Subject: [PATCH] Add support for Go 1.24 (#6304) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Robert PajÄ…k --- .github/workflows/benchmark.yml | 2 +- .github/workflows/ci.yml | 6 +++--- CHANGELOG.md | 5 +++++ README.md | 7 +++++++ 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml index 97d5e64a9..b2a36316d 100644 --- a/.github/workflows/benchmark.yml +++ b/.github/workflows/benchmark.yml @@ -9,7 +9,7 @@ on: permissions: read-all env: - DEFAULT_GO_VERSION: "~1.23.0" + DEFAULT_GO_VERSION: "~1.24.0" jobs: benchmark: name: Benchmarks diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index dd6f0968e..0ea3e65fd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,7 +12,7 @@ env: # backwards compatibility with the previous two minor releases and we # explicitly test our code for these versions so keeping this at prior # versions does not add value. - DEFAULT_GO_VERSION: "~1.23.0" + DEFAULT_GO_VERSION: "~1.24.0" # Declare default permissions as read only. permissions: read-all jobs: @@ -35,7 +35,7 @@ jobs: cache-name: go-tools-cache with: path: .tools - key: ${{ runner.os }}-${{ env.cache-name }}-${{ hashFiles('./internal/tools/**') }} + key: ${{ runner.os }}-${{ env.DEFAULT_GO_VERSION }}-${{ env.cache-name }}-${{ hashFiles('./internal/tools/**') }} # The step below is needed to not rebuild all the build tools. - name: Set internal/tools/go.mod timestamp run: | @@ -133,7 +133,7 @@ jobs: compatibility-test: strategy: matrix: - go-version: ["1.23.0", "~1.22.5"] + go-version: ["1.24.0", "1.23.0", "~1.22.5"] platform: - os: ubuntu-latest arch: "386" diff --git a/CHANGELOG.md b/CHANGELOG.md index 9b30809c8..f6666085a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,9 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +This release is the last to support [Go 1.22]. +The next release will require at least [Go 1.23]. + ### Added - Add `ValueFromAttribute` and `KeyValueFromAttribute` in `go.opentelemetry.io/otel/log`. (#6180) @@ -27,6 +30,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm See the [migration documentation](./semconv/v1.30.0/MIGRATION.md) for information on how to upgrade from `go.opentelemetry.io/otel/semconv/v1.28.0`(#6240) - Document the pitfalls of using `Resource` as a comparable type. `Resource.Equal` and `Resource.Equivalent` should be used instead. (#6272) +- Support [Go 1.24]. (#6304) ### Changed @@ -3312,6 +3316,7 @@ It contains api and sdk for trace and meter. +[Go 1.24]: https://go.dev/doc/go1.24 [Go 1.23]: https://go.dev/doc/go1.23 [Go 1.22]: https://go.dev/doc/go1.22 [Go 1.21]: https://go.dev/doc/go1.21 diff --git a/README.md b/README.md index e9c8e61a2..5e7af868e 100644 --- a/README.md +++ b/README.md @@ -50,18 +50,25 @@ Currently, this project supports the following environments. | OS | Go Version | Architecture | |----------|------------|--------------| +| Ubuntu | 1.24 | amd64 | | Ubuntu | 1.23 | amd64 | | Ubuntu | 1.22 | amd64 | +| Ubuntu | 1.24 | 386 | | Ubuntu | 1.23 | 386 | | Ubuntu | 1.22 | 386 | +| Linux | 1.24 | arm64 | | Linux | 1.23 | arm64 | | Linux | 1.22 | arm64 | +| macOS 13 | 1.24 | amd64 | | macOS 13 | 1.23 | amd64 | | macOS 13 | 1.22 | amd64 | +| macOS | 1.24 | arm64 | | macOS | 1.23 | arm64 | | macOS | 1.22 | arm64 | +| Windows | 1.24 | amd64 | | Windows | 1.23 | amd64 | | Windows | 1.22 | amd64 | +| Windows | 1.24 | 386 | | Windows | 1.23 | 386 | | Windows | 1.22 | 386 |