Skip to content

Upgrade vendors & Go version to 1.26#1506

Open
xxx7xxxx wants to merge 8 commits intoeasegress-io:mainfrom
xxx7xxxx:main
Open

Upgrade vendors & Go version to 1.26#1506
xxx7xxxx wants to merge 8 commits intoeasegress-io:mainfrom
xxx7xxxx:main

Conversation

@xxx7xxxx
Copy link
Contributor

No description provided.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Upgrades the repository’s Go toolchain and dependency set, and adjusts CI/build/test plumbing to run integration tests behind an explicit build tag.

Changes:

  • Bump Go version/toolchain to 1.26.x and update builder images + GitHub Actions Go versions accordingly.
  • Update a large set of Go module dependencies (go.mod/go.sum).
  • Gate integration test package under the integration build tag and update integration test runner to pass -tags=integration; improve test isolation for logger tests.

Reviewed changes

Copilot reviewed 14 out of 15 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
scripts/benchmark/aigateway/llm/go.mod Bumps benchmark submodule Go version/toolchain to 1.26.x.
go.mod Updates main module Go version/toolchain and refreshes direct/indirect dependencies.
go.sum Updates checksums to match the upgraded dependency graph.
build/package/Dockerfile.builder Moves builder base image to golang:1.26.1-alpine.
Makefile Updates builder image tag used for Docker builds.
.github/workflows/test.yml Updates CI Go version to 1.26.1 for test workflow.
.github/workflows/release.yml Updates release workflow Go version to 1.26.1.
.github/workflows/golangci.lint.yml Updates lint workflow Go version to 1.26.1.
.github/workflows/code.analysis.yml Updates code analysis workflow Go version to 1.26.1.
build/test/test.sh Runs integration tests with -tags=integration.
build/test/server.go Adds integration build tag and closes HTTP response bodies defensively.
build/test/client.go Adds integration build tag.
build/test/integration_test.go Adds integration build tag and centralizes HTTP request execution via helper.
pkg/logger/logger_test.go Uses t.TempDir() for log output to avoid polluting working directory.
SECURITY.md Updates the supported Go versions table to include 1.26.x.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 10 to 11
| 1.25.x | :white_check_mark: |
| 1.24.x | :white_check_mark: |
Comment on lines +44 to +52
func mustDoRequest(t *testing.T, req *http.Request) *http.Response {
t.Helper()

resp, err := http.DefaultClient.Do(req)
require.NoError(t, err)
require.NotNil(t, resp)

return resp
}
@LokiWager
Copy link
Collaborator

LokiWager commented Mar 13, 2026

golang/go#77799
golang/go#78059

I think we could wait for 1.26.2 or a later version, since Golang updated the GC strategy. It may take time to be stable.


func TestMustPlainLogger(t *testing.T) {
opt := &option.Options{AbsLogDir: "."}
logDir := t.TempDir()
Copy link
Collaborator

Choose a reason for hiding this comment

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

In the logger implementation, Sync() in logfile.go only flushes the data and does not close the file handle. Windows does not allow deleting a file that is still in use, so when t.TempDir() runs its RemoveAll cleanup at the end of the test, it fails with:

The process cannot access the file because it is being used by another process

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Will fix it

Copy link
Collaborator

@LokiWager LokiWager left a comment

Choose a reason for hiding this comment

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

lgtm

@LokiWager
Copy link
Collaborator

The CI failed due to the easemesh-api missing a license. I created a PR to fix it megaease/easemesh-api#19.

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.

3 participants