Skip to content

build(deps): upgrade Go to 1.27.1, gomobile, and Outline SDK to v0.1.0-rc1 - #631

Merged
fortuna merged 2 commits into
masterfrom
build/upgrade-go
Sep 16, 2026
Merged

fortuna merged 2 commits into
masterfrom
build/upgrade-go

Conversation

@fortuna

@fortuna fortuna commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Why

Keeps the toolchain and dependencies current, ahead of the QUIC circumvention work. Go 1.25 is two releases behind, golang.org/x/mobile was last bumped in June, and the Outline SDK has a release candidate for v0.1.0.

Dependency-only change; no source changes were required.

What changed

Go toolchain

  • go.mod: go 1.25.0go 1.27.0, plus an explicit toolchain go1.27.1 (latest patch release). Android/app/build.gradle already prefers the toolchain line when setting GOTOOLCHAIN for gomobile, so the build now pins the exact patch release instead of the .0 release.
  • Nothing else in the repo hardcodes a Go version: CI uses go-version-file: go.mod, and Gradle parses go.mod directly.

gomobile

  • golang.org/x/mobile (gomobile/gobind) → v0.0.0-20260908204917-8b95e45f8d3e.
  • Transitive/direct golang.org/x bumps pulled in by the above: net 0.56→0.59, sys 0.46→0.48, crypto 0.53→0.57, mod 0.37→0.41, sync 0.21→0.23, tools 0.46→0.50.

Outline SDK

  • golang.getoutline.org/sdk v0.0.23v0.1.0-rc1. The deprecated network.PacketProxy API that intraPacketProxy currently uses is still present in v0.1.0-rc1, so this compiles as-is. The follow-up PR in this stack migrates off it.

Testing

  • go vet ./...
  • go test -race ./... — all packages pass on go1.27.1
  • ./gradlew :app:compileGoBackendensureGoMobile rebuilds gomobile/gobind at the new revision and gomobile bind succeeds (using Go toolchain go1.27.1)
  • gofmt -l . reports only Android/app/src/go/intra/split/retrier.go, which is pre-existing on master (unchanged by the new gofmt)

Bumps the go directive to 1.27.0 and adds an explicit `toolchain
go1.27.1` so the Gradle build (which reads the toolchain line to set
GOTOOLCHAIN for gomobile) pins the latest patch release.

Also upgrades golang.org/x/mobile to 20260908204917-8b95e45f8d3e and the
golang.org/x modules it pulls in. No source changes required.
No source changes are required: the deprecated `network.PacketProxy`
API that `intraPacketProxy` uses is still present in v0.1.0-rc1.
@fortuna
fortuna added this pull request to stack #632 September 15, 2026 23:03
@fortuna fortuna changed the title build(deps): upgrade Go to 1.27.1 and gomobile to latest build(deps): upgrade Go to 1.27.1, gomobile, and Outline SDK to v0.1.0-rc1 Sep 15, 2026
@fortuna
fortuna requested review from jyyi1 and peterwgnd September 15, 2026 23:06

@peterwgnd peterwgnd left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

lgtm

@fortuna
fortuna merged commit 7bc64a4 into master Sep 16, 2026
12 checks passed
@fortuna
fortuna deleted the build/upgrade-go branch September 16, 2026 17:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants