From 61836c24ec5c3f72eb5db261bd84f3818f6dce2a Mon Sep 17 00:00:00 2001 From: Evan Vetere Date: Tue, 3 Nov 2026 13:40:27 -0500 Subject: [PATCH] chore: Build on the Go 1.27 toolchain Go 1.26 stops getting security fixes when Go 1.28 ships in February 2027. Building on 1.27 now keeps the binaries patched and the fleet on one Go line. Key features/changes: - Move the Nix flake and dev container to Go 1.27 - Move the go.mod toolchain line to go1.27.3, which actions/setup-go uses over the go line, so CI also builds and tests on 1.27 - Leave the go line unchanged, so the binaries keep their current GODEBUG runtime defaults; raising it is a separate change --- .devcontainer/devcontainer.json | 2 +- flake.nix | 4 ++-- go.mod | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 72d4ec6..8ef51f6 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -3,7 +3,7 @@ { "name": "Go", // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile - "image": "mcr.microsoft.com/devcontainers/go:2-1.26-trixie", + "image": "mcr.microsoft.com/devcontainers/go:2-1.27-trixie", "features": { "ghcr.io/devcontainers/features/common-utils": { "installOhMyZsh": true, diff --git a/flake.nix b/flake.nix index 6bb041e..0e59aad 100644 --- a/flake.nix +++ b/flake.nix @@ -45,7 +45,7 @@ in { packages = { - default = (pkgs.buildGoModule.override { go = pkgs.go_1_26; }) { + default = (pkgs.buildGoModule.override { go = pkgs.go_1_27; }) { pname = "datumctl"; version = gitVersion; @@ -80,7 +80,7 @@ devShells.default = pkgs.mkShell { buildInputs = with pkgs; [ - go_1_26 + go_1_27 gopls gotools go-task diff --git a/go.mod b/go.mod index dc2eb92..124b64d 100644 --- a/go.mod +++ b/go.mod @@ -2,7 +2,7 @@ module go.datum.net/datumctl go 1.26.0 -toolchain go1.26.10 +toolchain go1.27.3 require ( charm.land/bubbles/v2 v2.1.1