Skip to content

CI: canary failing after the release of go1.27rc1 #4979

Open

Description

@AkihiroSuda

https://github.com/containerd/nerdctl/actions/runs/27801092664/job/82271349171

level=warning msg="[runner] Can't run linter goanalysis_metalinter: inspect: failed to load package context: could not load export data: internal error in importing \"context\" (cannot decode \"context\", export data version 4 is greater than maximum supported version 2); please report an issue"
level=error msg="Running error: can't run linter goanalysis_metalinter\ninspect: failed to load package context: could not load export data: internal error in importing \"context\" (cannot decode \"context\", export data version 4 is greater than maximum supported version 2); please report an issue"
make[1]: *** [Makefile:142: lint-go] Error 3
make[1]: Leaving directory '/home/runner/work/nerdctl/nerdctl'
make: *** [Makefile:148: lint-go-all] Error 2

Activity

  1. AkihiroSuda commented on Jun 19, 2026

    @AkihiroSuda
    MemberAuthor

    Workaround was applied to skip the canary:

  2. haytok commented on Jun 20, 2026

    @haytok
    Member

    Updating golangci-lint from v2.4.0 to latest on my local environment resolves the following error seen in CI.

    level=warning msg="[runner] Can't run linter goanalysis_metalinter: inspect: failed to load package context: could not load export data: internal error in importing "context" (cannot decode "context", export data version 4 is greater than maximum supported version 2); please report an issue"
    level=error msg="Running error: can't run linter goanalysis_metalinter\ninspect: failed to load package context: could not load export data: internal error in importing "context" (cannot decode "context", export data version 4 is greater than maximum supported version 2); please report an issue"
    make[1]: *** [Makefile:142: lint-go] Error 3

    However, a different error then occurs. I reproduced it on Lima:

    Details

    $ cat /etc/os-release
    PRETTY_NAME="Ubuntu 24.10"
    NAME="Ubuntu"
    VERSION_ID="24.10"
    VERSION="24.10 (Oracular Oriole)"
    ....
    
    $ uname -ra
    Linux lima-nerdctl-dbg 6.11.0-12-generic #13-Ubuntu SMP PREEMPT_DYNAMIC Thu Nov 21 20:54:19 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux
    
    $ go version
    go version go1.27rc1 linux/arm64
    
    $ go install github.com/golangci/golangci-lint/v2/cmd/golangci-lint@latest
    ...
    
    $ golangci-lint version
    golangci-lint has version 2.12.2 built with go1.27rc1 from (unknown, modified: ?, mod sum: "h1:7+d1uY0bq1MU2UV3R5pW5Q7QWdcoq4naMRXM+gsJKrs=") on (unknown)
    
    $ pwd
    /tmp/nerdctl
    
    $ golangci-lint run ./...
    ERRO [linters_context/goanalysis] buildir: panic during analysis: unexpected expr: *ast.KeyValueExpr, goroutine 13909 [running]:
    runtime/debug.Stack()
    	/usr/local/go/src/runtime/debug/stack.go:26 +0x64
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyzeSafe.func1()
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_action.go:51 +0x44
    panic({0x1fba090?, 0x7cc2d3554ee0?})
    	/usr/local/go/src/runtime/panic.go:859 +0x120
    honnef.co/go/tools/go/ir.(*builder).expr0(0x7cc2ce0a37d0?, 0x7cc2d6cf6b40?, {0x2131ef8?, 0x7cc2d5d57440?}, {0x0, {0x0, 0x0}, {0x0, 0x0}})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:888 +0x1490
    honnef.co/go/tools/go/ir.(*builder).expr(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2131ef8, 0x7cc2d5d57440})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:603 +0x12c
    honnef.co/go/tools/go/ir.(*builder).assign(0x22cbf30?, 0x7cc2d6cf6b40, {0x2135568, 0x7cc2d3532780}, {0x2131ef8?, 0x7cc2d5d57440?}, 0x58?, 0x7cc2ce0a2d60, {0x212c2d0, 0x7cc2d5d57440})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:576 +0x4d8
    honnef.co/go/tools/go/ir.(*builder).compLit(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x213a068, 0x7cc2d35ab490}, 0x7cc2d5d621c0, 0x1, 0x7cc2ce0a2d60)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:1238 +0x1c80
    honnef.co/go/tools/go/ir.(*builder).addr(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2131ec8?, 0x7cc2d5d621c0}, 0x1)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:370 +0x5e4
    honnef.co/go/tools/go/ir.(*builder).expr0(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2131fe8?, 0x7cc2d5d64100}, {0x7, {0x212d9f0, 0x7cc2d640eb00}, {0x0, 0x0}})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:670 +0xa4
    honnef.co/go/tools/go/ir.(*builder).expr(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2131fe8, 0x7cc2d5d64100})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:603 +0x12c
    honnef.co/go/tools/go/ir.(*builder).returnStmt(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, 0x7cc2d5d64120)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:3027 +0x130
    honnef.co/go/tools/go/ir.(*builder).stmt(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2132138?, 0x7cc2d5d64120?})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:2916 +0x2b0
    honnef.co/go/tools/go/ir.(*builder).stmtList(...)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:894
    honnef.co/go/tools/go/ir.(*builder).stmt(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2132198?, 0x7cc2d5d57500?})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:2922 +0xfbc
    honnef.co/go/tools/go/ir.(*builder).buildFunction(0x7cc2ce0a37d0, 0x7cc2d6cf6b40)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:3126 +0x2ec
    honnef.co/go/tools/go/ir.(*builder).buildFuncDecl(0x7cc2ce0a37d0, 0x7cc2d651b0e0, 0x7cc2d5d57530)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:3311 +0x164
    honnef.co/go/tools/go/ir.(*Package).build(0x7cc2d651b0e0)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:3422 +0x928
    sync.(*Once).doSlow(0x7cc2d651a360?, 0x7cc2d5d31800?)
    	/usr/local/go/src/sync/once.go:78 +0xdc
    sync.(*Once).Do(...)
    	/usr/local/go/src/sync/once.go:69
    honnef.co/go/tools/go/ir.(*Package).Build(...)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:3333
    honnef.co/go/tools/internal/passes/buildir.run(0x7cc2d52c1c00)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/internal/passes/buildir/buildir.go:83 +0x1cc
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyze.func3(...)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_checker.go:180
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyze(0x7cc2d44fe0e0)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_checker.go:206 +0x9d8
    github.com/golangci/golangci-lint/v2/pkg/timeutils.(*Stopwatch).TrackStage(0x7cc2d21da910, {0xde3c97, 0x7}, 0x7cc2d1110f00)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/timeutils/stopwatch.go:111 +0x44
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyzeSafe(0x7cc2d44fe0e0?)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_action.go:59 +0x64
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*loadingPackage).analyze.func2()
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_loadingpackage.go:107 +0x6c
    golang.org/x/sync/errgroup.(*Group).Go.func1()
    	/home/haytok.linux/go/pkg/mod/golang.org/x/sync@v0.20.0/errgroup/errgroup.go:93 +0x4c
    created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 978
    	/home/haytok.linux/go/pkg/mod/golang.org/x/sync@v0.20.0/errgroup/errgroup.go:78 +0x98
    ERRO [linters_context/goanalysis] SA5012: panic during analysis: interface conversion: interface {} is nil, not *buildir.IR, goroutine 13906 [running]:
    runtime/debug.Stack()
    	/usr/local/go/src/runtime/debug/stack.go:26 +0x64
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyzeSafe.func1()
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_action.go:51 +0x44
    panic({0x1e90728?, 0x7cc2d3bce300?})
    	/usr/local/go/src/runtime/panic.go:859 +0x120
    honnef.co/go/tools/staticcheck/sa5012.findSliceLenChecks(0x7cc2d731e1c0)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/staticcheck/sa5012/sa5012.go:140 +0x6ac
    honnef.co/go/tools/staticcheck/sa5012.run(0x7cc2d731e1c0)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/staticcheck/sa5012/sa5012.go:281 +0x20
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyze.func3(...)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_checker.go:180
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyze(0x7cc2d4625220)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_checker.go:206 +0x9d8
    github.com/golangci/golangci-lint/v2/pkg/timeutils.(*Stopwatch).TrackStage(0x7cc2d21da910, {0xdd8b93, 0x6}, 0x7cc2d27f0f00)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/timeutils/stopwatch.go:111 +0x44
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyzeSafe(0x7cc2d4625220?)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_action.go:59 +0x64
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*loadingPackage).analyze.func2()
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_loadingpackage.go:107 +0x6c
    golang.org/x/sync/errgroup.(*Group).Go.func1()
    	/home/haytok.linux/go/pkg/mod/golang.org/x/sync@v0.20.0/errgroup/errgroup.go:93 +0x4c
    created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 978
    	/home/haytok.linux/go/pkg/mod/golang.org/x/sync@v0.20.0/errgroup/errgroup.go:78 +0x98
    ERRO [runner] Panic: buildir: package "poll" (isInitialPkg: false, needAnalyzeSource: true): unexpected expr: *ast.KeyValueExpr: goroutine 13909 [running]:
    runtime/debug.Stack()
    	/usr/local/go/src/runtime/debug/stack.go:26 +0x64
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyzeSafe.func1()
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_action.go:55 +0x1d8
    panic({0x1fba090?, 0x7cc2d3554ee0?})
    	/usr/local/go/src/runtime/panic.go:859 +0x120
    honnef.co/go/tools/go/ir.(*builder).expr0(0x7cc2ce0a37d0?, 0x7cc2d6cf6b40?, {0x2131ef8?, 0x7cc2d5d57440?}, {0x0, {0x0, 0x0}, {0x0, 0x0}})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:888 +0x1490
    honnef.co/go/tools/go/ir.(*builder).expr(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2131ef8, 0x7cc2d5d57440})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:603 +0x12c
    honnef.co/go/tools/go/ir.(*builder).assign(0x22cbf30?, 0x7cc2d6cf6b40, {0x2135568, 0x7cc2d3532780}, {0x2131ef8?, 0x7cc2d5d57440?}, 0x58?, 0x7cc2ce0a2d60, {0x212c2d0, 0x7cc2d5d57440})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:576 +0x4d8
    honnef.co/go/tools/go/ir.(*builder).compLit(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x213a068, 0x7cc2d35ab490}, 0x7cc2d5d621c0, 0x1, 0x7cc2ce0a2d60)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:1238 +0x1c80
    honnef.co/go/tools/go/ir.(*builder).addr(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2131ec8?, 0x7cc2d5d621c0}, 0x1)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:370 +0x5e4
    honnef.co/go/tools/go/ir.(*builder).expr0(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2131fe8?, 0x7cc2d5d64100}, {0x7, {0x212d9f0, 0x7cc2d640eb00}, {0x0, 0x0}})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:670 +0xa4
    honnef.co/go/tools/go/ir.(*builder).expr(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2131fe8, 0x7cc2d5d64100})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:603 +0x12c
    honnef.co/go/tools/go/ir.(*builder).returnStmt(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, 0x7cc2d5d64120)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:3027 +0x130
    honnef.co/go/tools/go/ir.(*builder).stmt(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2132138?, 0x7cc2d5d64120?})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:2916 +0x2b0
    honnef.co/go/tools/go/ir.(*builder).stmtList(...)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:894
    honnef.co/go/tools/go/ir.(*builder).stmt(0x7cc2ce0a37d0, 0x7cc2d6cf6b40, {0x2132198?, 0x7cc2d5d57500?})
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:2922 +0xfbc
    honnef.co/go/tools/go/ir.(*builder).buildFunction(0x7cc2ce0a37d0, 0x7cc2d6cf6b40)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:3126 +0x2ec
    honnef.co/go/tools/go/ir.(*builder).buildFuncDecl(0x7cc2ce0a37d0, 0x7cc2d651b0e0, 0x7cc2d5d57530)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:3311 +0x164
    honnef.co/go/tools/go/ir.(*Package).build(0x7cc2d651b0e0)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:3422 +0x928
    sync.(*Once).doSlow(0x7cc2d651a360?, 0x7cc2d5d31800?)
    	/usr/local/go/src/sync/once.go:78 +0xdc
    sync.(*Once).Do(...)
    	/usr/local/go/src/sync/once.go:69
    honnef.co/go/tools/go/ir.(*Package).Build(...)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/go/ir/builder.go:3333
    honnef.co/go/tools/internal/passes/buildir.run(0x7cc2d52c1c00)
    	/home/haytok.linux/go/pkg/mod/honnef.co/go/tools@v0.7.0/internal/passes/buildir/buildir.go:83 +0x1cc
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyze.func3(...)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_checker.go:180
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyze(0x7cc2d44fe0e0)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_checker.go:206 +0x9d8
    github.com/golangci/golangci-lint/v2/pkg/timeutils.(*Stopwatch).TrackStage(0x7cc2d21da910, {0xde3c97, 0x7}, 0x7cc2d1110f00)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/timeutils/stopwatch.go:111 +0x44
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*action).analyzeSafe(0x7cc2d44fe0e0?)
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_action.go:59 +0x64
    github.com/golangci/golangci-lint/v2/pkg/goanalysis.(*loadingPackage).analyze.func2()
    	/home/haytok.linux/go/pkg/mod/github.com/golangci/golangci-lint/v2@v2.12.2/pkg/goanalysis/runner_loadingpackage.go:107 +0x6c
    golang.org/x/sync/errgroup.(*Group).Go.func1()
    	/home/haytok.linux/go/pkg/mod/golang.org/x/sync@v0.20.0/errgroup/errgroup.go:93 +0x4c
    created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 978
    	/home/haytok.linux/go/pkg/mod/golang.org/x/sync@v0.20.0/errgroup/errgroup.go:78 +0x98
    WARN [runner] Can't run linter goanalysis_metalinter: goanalysis_metalinter: buildir: package "poll" (isInitialPkg: false, needAnalyzeSource: true): unexpected expr: *ast.KeyValueExpr
    ERRO Running error: can't run linter goanalysis_metalinter
    goanalysis_metalinter: buildir: package "poll" (isInitialPkg: false, needAnalyzeSource: true): unexpected expr: *ast.KeyValueExpr

    This error appears to be related to the following issues:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/cie.g., CI failure

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions