From 8cee52d85a0aa60403e0fd63aacb61ac75ec6a38 Mon Sep 17 00:00:00 2001 From: Attila Dudas Date: Thu, 18 Sep 2025 14:10:59 +0200 Subject: [PATCH] Support go 1.25 --- .github/workflows/CI.yml | 4 ++-- fixture.go | 4 +++- version_1_24.go | 7 +++++++ version_1_25.go | 7 +++++++ 4 files changed, 19 insertions(+), 3 deletions(-) create mode 100644 version_1_24.go create mode 100644 version_1_25.go diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index a3f4365..580c19a 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -10,7 +10,7 @@ jobs: CI: strategy: matrix: - go-version: [ "1.24.0" ] + go-version: [ "1.24.0", "1.25.0" ] fail-fast: true runs-on: ubuntu-latest steps: @@ -26,4 +26,4 @@ jobs: - name: Upload coverage uses: coverallsapp/github-action@v2 - if: ${{ contains(matrix.go-version, '1.24.0') }} + if: ${{ contains(matrix.go-version, '1.25.0') }} diff --git a/fixture.go b/fixture.go index 5688074..be0121d 100644 --- a/fixture.go +++ b/fixture.go @@ -6,6 +6,8 @@ import ( "unsafe" ) +var ctxOffset int + type Fixture[V any] interface { Value(t *testing.T) V } @@ -26,7 +28,7 @@ func (f *fixture[V]) Value(t *testing.T) V { value := f.createValue(t) // Look away - ctx := (*context.Context)(unsafe.Add(unsafe.Pointer(t), 400)) + ctx := (*context.Context)(unsafe.Add(unsafe.Pointer(t), ctxOffset)) *ctx = context.WithValue(t.Context(), f, value) return value diff --git a/version_1_24.go b/version_1_24.go new file mode 100644 index 0000000..ddc1431 --- /dev/null +++ b/version_1_24.go @@ -0,0 +1,7 @@ +//go:build go1.24 + +package fix + +func init() { + ctxOffset = 400 +} diff --git a/version_1_25.go b/version_1_25.go new file mode 100644 index 0000000..b41c3ea --- /dev/null +++ b/version_1_25.go @@ -0,0 +1,7 @@ +//go:build go1.25 + +package fix + +func init() { + ctxOffset = 408 +}