DoDiODev opened a new pull request, #9217:
URL: https://github.com/apache/devlake/pull/9217

   ### Summary
   
   Moves the backend from Go 1.26 to Go 1.27 (1.27.2) at every place that pins 
the Go version. Go 1.28 is expected around February 2027, after which 1.26 no 
longer receives security fixes.
   
   This builds on #9210 (golangci-lint v2.14.0): the released golangci-lint 
v2.12.2 binary is built with Go 1.26 and refuses to run on a module that 
targets Go 1.27.
   
   ### Changes
   
   | Where | Change |
   |---|---|
   | `backend/go.mod` | `go 1.26.0` → `go 1.27.0`, plus the `go mod tidy` 
reordering described below |
   | `backend/scripts/install-go.sh` | `1.26.9` → `1.27.2`, new SHA256 for 
linux-amd64 / linux-arm64 (from go.dev) |
   | `devops/docker/lake-builder/Dockerfile` | `GO_VERSION` / `GO_SHA256` → 
1.27.2 |
   | `backend/Dockerfile`, `backend/Dockerfile.local` | `golang:1.26-bookworm` 
→ `golang:1.27-bookworm` |
   | `.devcontainer/Dockerfile` | `devcontainers/go:1-1.26-bookworm` → 
`devcontainers/go:2-1.27-bookworm` |
   | workflow step names in `test.yml`, `test-e2e.yml` (2×), 
`golangci-lint.yml`, `migration-script-lint.yml` | label only |
   
   **`go.mod` reordering:** with the `go 1.27.0` directive, `go mod tidy` 
merges the second block of direct requirements into the first and moves three 
`// indirect` entries into the indirect block. No module version changes and 
`go.sum` is untouched. Without it, the `go mod tidy` check in CI would fail. 
With the old `go 1.26.0` directive, Go 1.27.2 leaves `go.mod` as it is, so the 
reordering comes from the directive alone.
   
   **Dev container:** the `1-*` tag line of 
`mcr.microsoft.com/devcontainers/go` is no longer published, so the current 
`1-1.26-bookworm` reference no longer resolves. This PR switches to the 
maintained `2-*` line.
   
   ### Verification
   
   | Check | Result |
   |---|---|
   | SHA256 of the Go 1.27.2 archives, downloaded and compared with the values 
in the files | ✅ |
   | `go mod tidy` leaves `go.mod` / `go.sum` unchanged | ✅ |
   | `make mock`, `make build` (including `swag`), `make unit-test` with Go 
1.27.2 | ✅ |
   | golangci-lint v2.14.0 (with #9210 applied) | ✅ 0 issues |
   | `go vet ./...` | no new findings compared with Go 1.26 |
   | Full CI mirror on my fork, including a build of the lake-builder image 
from this Dockerfile (Go 1.27.2), unit tests, lint (golangci-lint v2.14.0) and 
e2e on MySQL and PostgreSQL 
([run](https://github.com/DoDiODev/devlake/actions/runs/38554494602)) | ✅ |
   
   CI installs Go through `install-go.sh` and therefore tests 1.27.2 directly. 
The lake-builder change takes effect once a new builder image is published 
(#9209).
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to