Skip to content

Go: Update to 1.26 - #21150

Merged
owen-mc merged 10 commits into
mainfrom
jketema/go-1.26
Feb 11, 2026
Merged

Go: Update to 1.26#21150
owen-mc merged 10 commits into
mainfrom
jketema/go-1.26

Conversation

@jketema

Copy link
Copy Markdown
Contributor

No description provided.

@jketemajketema changed the title Update Go version in tests to 1.26.0-rc.1Update Go version in tests to 1.26.0Jan 20, 2026
@jketemajketema changed the title Update Go version in tests to 1.26.0Update Go version in tests to 1.26Jan 20, 2026
@jketemajketema changed the title Update Go version in tests to 1.26Go: Update to 1.26Jan 20, 2026
@github-actions

Copy link
Copy Markdown
Contributor

⚠️ The head of this PR and the base branch were compared for differences in the framework coverage reports. The generated reports are available in the artifacts of this workflow run. The differences will be picked up by the nightly job after the PR gets merged.

Click to show differences in coverage

go

Generated file changes for go

  • Changes to framework-coverage-go.rst:
- `Standard library <https://pkg.go.dev/std>`_,"````, ``archive/*``, ``bufio``, ``bytes``, ``cmp``, ``compress/*``, ``container/*``, ``context``, ``crypto``, ``crypto/*``, ``database/*``, ``debug/*``, ``embed``, ``encoding``, ``encoding/*``, ``errors``, ``expvar``, ``flag``, ``fmt``, ``go/*``, ``hash``, ``hash/*``, ``html``, ``html/*``, ``image``, ``image/*``, ``index/*``, ``io``, ``io/*``, ``log``, ``log/*``, ``maps``, ``math``, ``math/*``, ``mime``, ``mime/*``, ``net``, ``net/*``, ``os``, ``os/*``, ``path``, ``path/*``, ``plugin``, ``reflect``, ``reflect/*``, ``regexp``, ``regexp/*``, ``slices``, ``sort``, ``strconv``, ``strings``, ``sync``, ``sync/*``, ``syscall``, ``syscall/*``, ``testing``, ``testing/*``, ``text/*``, ``time``, ``time/*``, ``unicode``, ``unicode/*``, ``unsafe``, ``weak``",52,609,104+ `Standard library <https://pkg.go.dev/std>`_,"````, ``archive/*``, ``bufio``, ``bytes``, ``cmp``, ``compress/*``, ``container/*``, ``context``, ``crypto``, ``crypto/*``, ``database/*``, ``debug/*``, ``embed``, ``encoding``, ``encoding/*``, ``errors``, ``expvar``, ``flag``, ``fmt``, ``go/*``, ``hash``, ``hash/*``, ``html``, ``html/*``, ``image``, ``image/*``, ``index/*``, ``io``, ``io/*``, ``log``, ``log/*``, ``maps``, ``math``, ``math/*``, ``mime``, ``mime/*``, ``net``, ``net/*``, ``os``, ``os/*``, ``path``, ``path/*``, ``plugin``, ``reflect``, ``reflect/*``, ``regexp``, ``regexp/*``, ``slices``, ``sort``, ``strconv``, ``strings``, ``sync``, ``sync/*``, ``syscall``, ``syscall/*``, ``testing``, ``testing/*``, ``text/*``, ``time``, ``time/*``, ``unicode``, ``unicode/*``, ``unsafe``, ``weak``",52,612,104- Totals,,688,1069,1557+ Totals,,688,1072,1557
  • Changes to framework-coverage-go.csv:
- ,,,8,,,,,,,,,,,,,,,,,,,,,,,3,5+ ,,,9,,,,,,,,,,,,,,,,,,,,,,,3,6- bytes,,,43,,,,,,,,,,,,,,,,,,,,,,,43,+ bytes,,,44,,,,,,,,,,,,,,,,,,,,,,,44,- errors,,,3,,,,,,,,,,,,,,,,,,,,,,,3,+ errors,,,4,,,,,,,,,,,,,,,,,,,,,,,4,

@owen-mcowen-mc left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Go 1.26 has been released.

Comment threadgo/actions/test/action.yml Outdated
Comment threadgo/extractor/go.mod Outdated
Comment threadMODULE.bazel Outdated
@owen-mc
owen-mc marked this pull request as ready for review February 11, 2026 00:33
CopilotAI review requested due to automatic review settings February 11, 2026 00:33
@owen-mc
owen-mc requested review from a team as code ownersFebruary 11, 2026 00:33
@owen-mc

Copy link
Copy Markdown
Contributor

I've rebased this on main. The one failing test is expected. I think this is ready to merge, possibly pending the CI of the companion PR.

@owen-mcowen-mc added the depends on internal PR This PR should only be merged in sync with an internal Semmle PR label Feb 11, 2026

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Updates the Go extractor/tests/tooling to support Go 1.26, and extends Go dataflow models/tests to cover newly supported standard-library/builtin flows (including pointer dereference modeling).

Changes:

  • Bump Go versions/toolchains across the extractor, Bazel module, CI action, docs, and Go test modules to Go 1.26.
  • Extend external flow model validation to accept Dereference content specs (pointer content).
  • Add/adjust external flow models and tests for errors.AsType, bytes.Buffer.Peek, and the builtin new dereference/value behavior.

Reviewed changes

Copilot reviewed 22 out of 22 changed files in this pull request and generated 1 comment.

Show a summary per file
FileDescription
go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/go.modBumps test module Go version to 1.26.
go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Errors.goAdds taint-step test for errors.AsType.
go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Bytes.goAdds taint-step test for bytes.Buffer.Peek.
go/ql/test/library-tests/semmle/go/frameworks/StdlibTaintFlow/Builtin.goAdds builtin flow test cases (append/copy/max/min/new).
go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/test.goAdds sink expressions involving new(src) / *new(src).
go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/srcs.expectedUpdates expected source locations due to added lines.
go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/sinks.expectedUpdates expected sinks to include new(...) and *new(...).
go/ql/test/library-tests/semmle/go/dataflow/ExternalValueFlow/go.modBumps test module Go version to 1.26.
go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/test.goAdds inline taint-flow expectations for new(src) / *new(src).
go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/srcs.expectedUpdates expected source locations due to added lines.
go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/sinks.expectedUpdates expected sinks to include new(...) and *new(...).
go/ql/test/library-tests/semmle/go/dataflow/ExternalTaintFlow/go.modBumps test module Go version to 1.26.
go/ql/lib/semmle/go/dataflow/ExternalFlow.qllAllows Dereference spec component during model validation.
go/ql/lib/ext/errors.model.ymlAdds taint model for errors.AsType return value.
go/ql/lib/ext/bytes.model.ymlAdds taint model for bytes.Buffer.Peek return value.
go/ql/lib/ext/builtin.model.ymlAdds a value summary for builtin new via ReturnValue.Dereference.
go/ql/lib/change-notes/2026-01-20-go-version-1-26.mdAdds changelog entry announcing Go 1.26 support.
go/extractor/go.modUpdates extractor module Go version and toolchain to 1.26.
go/extractor/autobuilder/build-environment.goUpdates max supported Go version to 1.26.
go/actions/test/action.ymlUpdates test action default Go version to ~1.26.0.
docs/codeql/reusables/supported-versions-compilers.rstUpdates documentation to “Go up to 1.26”.
MODULE.bazelUpdates downloaded Go SDK version to 1.26.0.

Comment threadgo/ql/lib/ext/builtin.model.yml
@owen-mc
owen-mc merged commit 766dc94 into mainFeb 11, 2026
88 of 89 checks passed
@owen-mc
owen-mc deleted the jketema/go-1.26 branch February 11, 2026 04:37
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

depends on internal PRThis PR should only be merged in sync with an internal Semmle PRdocumentationGo

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@jketema@owen-mc