From 500a1676d67cc189515846e780c2a42712f6fe39 Mon Sep 17 00:00:00 2001 From: Koichi Shiraishi Date: Mon, 31 Aug 2026 19:06:35 +0900 Subject: [PATCH 1/2] make: pin GOEXPERIMENT without probing the Go release feed GO_STABLE_VERSION shelled out to go.dev on every make invocation, so any target failed or silently changed the experiment set whenever the network was unavailable or the release feed moved on. Pin the list to simd and runtimesecret, which both the local toolchain and the CI runners accept, and drop the now unused GO_VERSION probe. --- Makefile | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/Makefile b/Makefile index 04bcd74..f0f0313 100644 --- a/Makefile +++ b/Makefile @@ -6,8 +6,6 @@ # ----------------------------------------------------------------------------- # go -GO_VERSION ?= $(shell grep -rh "^go " --include="go.mod" . 2>/dev/null | cut -d' ' -f2 | sort | uniq -c | sort -nr | head -1 | xargs | cut -d' ' -f2 | grep . || echo unknown) -GO_STABLE_VERSION = $(shell curl -sSL "https://go.dev/dl/?mode=json" | jq -r '[ .[] | select(.stable == true) ][0].version' | grep -oE '[0-9]+\.[0-9]+') GO_BUILDTAGS = osusergo,netgo,static GO_LDFLAGS = -s -w ifeq ($(GO_OS),linux) @@ -15,10 +13,7 @@ GO_LDFLAGS += "-extldflags=-static" endif GO_FLAGS ?= -tags='${GO_BUILDTAGS}' -ldflags='${GO_LDFLAGS}' -GOEXPERIMENT := runtimefreegc,sizespecializedmalloc,runtimesecret -ifeq ($(findstring ${GO_STABLE_VERSION},${GO_VERSION}),) -GOEXPERIMENT := ${GOEXPERIMENT},simd,runtimesecret,mapsplitgroup -endif +GOEXPERIMENT ?= simd,runtimesecret export GOEXPERIMENT TOOLS_BIN = ${CURDIR}/bin From fd045959937f0ee543549b22b4e34028e42fb0f9 Mon Sep 17 00:00:00 2001 From: Koichi Shiraishi Date: Mon, 31 Aug 2026 19:06:35 +0900 Subject: [PATCH 2/2] ci: bump GitHub Actions to their current major releases actions/checkout, actions/setup-go and codecov/codecov-action have all released v7; github/codeql-action stays on v4 because that is still its latest major. The v7 releases are ESM repackaging plus, for checkout, a new block on checking out fork pull requests under pull_request_target and workflow_run. Neither event is used here, so behaviour is unchanged. --- .github/workflows/bench.yaml | 4 ++-- .github/workflows/codeql.yaml | 4 ++-- .github/workflows/test.yaml | 12 ++++++------ 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/bench.yaml b/.github/workflows/bench.yaml index b67a4f3..19b2d01 100644 --- a/.github/workflows/bench.yaml +++ b/.github/workflows/bench.yaml @@ -25,12 +25,12 @@ jobs: contents: read steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 with: fetch-depth: 0 - name: Install Go - uses: actions/setup-go@v6 + uses: actions/setup-go@v7 with: go-version-file: go.mod check-latest: true diff --git a/.github/workflows/codeql.yaml b/.github/workflows/codeql.yaml index 2503737..7cc3154 100644 --- a/.github/workflows/codeql.yaml +++ b/.github/workflows/codeql.yaml @@ -20,12 +20,12 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v6 + uses: actions/checkout@v7 with: fetch-depth: 2 - name: Install Go - uses: actions/setup-go@v6 + uses: actions/setup-go@v7 with: go-version-file: go.mod check-latest: true diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index a04bd26..c0c4bb1 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -28,10 +28,10 @@ jobs: id-token: write steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - name: Install Go - uses: actions/setup-go@v6 + uses: actions/setup-go@v7 with: go-version-file: go.mod check-latest: true @@ -50,7 +50,7 @@ jobs: - name: Upload coverage to Codecov if: success() - uses: codecov/codecov-action@v6 + uses: codecov/codecov-action@v7 with: report_type: coverage flags: ${{ runner.os }}-${{ runner.arch }} @@ -59,7 +59,7 @@ jobs: - name: Upload test results if: always() - uses: codecov/codecov-action@v6 + uses: codecov/codecov-action@v7 with: report_type: test_results name: test-results @@ -70,10 +70,10 @@ jobs: runs-on: ubuntu-slim steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - name: Install Go - uses: actions/setup-go@v6 + uses: actions/setup-go@v7 with: go-version-file: go.mod check-latest: true