From bd9b98b942ab5790bbefe0b0db0a688290a7fe5b Mon Sep 17 00:00:00 2001 From: zarzet Date: Tue, 14 Jul 2026 12:20:53 +0700 Subject: [PATCH] fix(go): build with Go 1.26.5 for aligned cgo frames, safe on arm32 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes the random gobind crash 'bulkBarrierPreWrite: unaligned arguments' (golang/go#46893; cgo aligns exported-function argument frames since 1.26.0). The earlier 1.26 rollback (cdc58367) was the arm32 SIGSYS from probing futex_time64 under seccomp on Android <=10 — fixed in 1.26.3 by gating time64 syscalls on kernel >= 5.1 instead of probing (verified in the 1.26.5 runtime source, which names Android 8-10 explicitly). go directive carries the full patch version so gomobile's synthesized bind module picks the same toolchain. --- .github/workflows/release.yml | 4 ++-- go_backend/go.mod | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index aa42cf84..ced26d43 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -70,7 +70,7 @@ jobs: - name: Setup Go uses: actions/setup-go@v6 with: - go-version: "1.25.9" + go-version: "1.26.5" cache-dependency-path: go_backend/go.sum # Cache Gradle for faster builds @@ -198,7 +198,7 @@ jobs: - name: Setup Go uses: actions/setup-go@v6 with: - go-version: "1.25.9" + go-version: "1.26.5" cache-dependency-path: go_backend/go.sum # Cache CocoaPods diff --git a/go_backend/go.mod b/go_backend/go.mod index 390fc229..cf91731c 100644 --- a/go_backend/go.mod +++ b/go_backend/go.mod @@ -1,8 +1,9 @@ module github.com/zarz/spotiflac_android/go_backend -go 1.25.0 - -toolchain go1.25.9 +// Needs >= 1.26.3: fixes the cgo "bulkBarrierPreWrite" crash (golang/go#46893) +// without the 1.26.0-1.26.2 arm32 SIGSYS regression (golang/go#78936). +// Full patch version here because gomobile's bind module inherits it. +go 1.26.5 require ( github.com/dop251/goja v0.0.0-20260701091749-b07b74453ea9