-
Notifications
You must be signed in to change notification settings - Fork 5.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
build(deps): bump github.com/docker/docker from 25.0.0-beta.1+incompatible to 25.0.0-beta.2+incompatible #11268
Conversation
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 25.0.0-beta.1+incompatible to 25.0.0-beta.2+incompatible. - [Release notes](https://github.com/docker/docker/releases) - [Commits](moby/moby@v25.0.0-beta.1...v25.0.0-beta.2) --- updated-dependencies: - dependency-name: github.com/docker/docker dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]>
OTEL Strikes again;
As docker/docker does not use a |
there's also an issue with mockgen to require a go.mod in dependencies (IIUC)
otherwise it assumes go 1.16 and reject use of |
Interesting; trying to find where it gets the 1.16 from. There's 2 go.mod files in There are some (indirect) dependencies that use go1.16, but not sure how that would affect things here. git grep 1\\.16 -- ':(exclude)*.md' ':(exclude)*.svg' ':(exclude)*.yml'
docs/generate/go.mod:go 1.16
e2e/global/cli_test.go:// Prior to go1.16, https:// schemes would use HTTPS_PROXY, and any other
man/go.mod:go 1.16
vendor/github.com/go-logr/stdr/stdr.go: // Go's log.Default() is only available in 1.16 and higher.
vendor/github.com/klauspost/compress/s2sx.mod:go 1.16
vendor/golang.org/x/net/idna/tables12.0.0.go://go:build go1.14 && !go1.16
vendor/golang.org/x/net/idna/tables12.0.0.go:// +build go1.14,!go1.16
vendor/golang.org/x/net/idna/tables13.0.0.go://go:build go1.16 && !go1.21
vendor/golang.org/x/net/idna/tables13.0.0.go:// +build go1.16,!go1.21
vendor/golang.org/x/net/idna/trie12.0.0.go://go:build !go1.16
vendor/golang.org/x/net/idna/trie12.0.0.go:// +build !go1.16
vendor/golang.org/x/net/idna/trie13.0.0.go://go:build go1.16
vendor/golang.org/x/net/idna/trie13.0.0.go:// +build go1.16
vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go://go:build go1.14 && !go1.16
vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go:// +build go1.14,!go1.16
vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go://go:build go1.16 && !go1.21
vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go:// +build go1.16,!go1.21
vendor/golang.org/x/text/unicode/norm/tables12.0.0.go://go:build go1.14 && !go1.16
vendor/golang.org/x/text/unicode/norm/tables12.0.0.go:// +build go1.14,!go1.16
vendor/golang.org/x/text/unicode/norm/tables13.0.0.go://go:build go1.16 && !go1.21
vendor/golang.org/x/text/unicode/norm/tables13.0.0.go:// +build go1.16,!go1.21
vendor/golang.org/x/text/width/tables12.0.0.go://go:build go1.14 && !go1.16
vendor/golang.org/x/text/width/tables12.0.0.go:// +build go1.14,!go1.16
vendor/golang.org/x/text/width/tables13.0.0.go://go:build go1.16 && !go1.21
vendor/golang.org/x/text/width/tables13.0.0.go:// +build go1.16,!go1.21
vendor/golang.org/x/tools/go/packages/golist.go: // below 1.16. Otherwise, go list handles it.
vendor/golang.org/x/tools/go/packages/golist.go: // For Go versions 1.16 and above, `go list` accepts overlays directly via
vendor/golang.org/x/tools/go/packages/packages.go: // Should we assert a hard minimum of (currently) go1.16 here?
vendor/golang.org/x/tools/go/packages/packages.go:var _ interface{} = io.Discard // assert build toolchain is go1.16 or later
vendor/golang.org/x/tools/internal/tokeninternal/tokeninternal.go: // This type remained essentially consistent from go1.16 to go1.21.
vendor/golang.org/x/tools/internal/typesinternal/types.go:// generated by Go version 1.16 and later: the error code, start position, and
vendor/modules.txt:## explicit; go 1.16
vendor/modules.txt:## explicit; go 1.16
vendor/modules.txt:## explicit; go 1.16
vendor/modules.txt:## explicit; go 1.16
vendor/modules.txt:## explicit; go 1.16
vendor/modules.txt:## explicit; go 1.16 |
Tried a hack using a local working copy to generate mocks, still can't get CI to run as golangci-lint has the same issue:
|
I'm sorry to conclude docker/cli would be unusable by third-party projects since it adopted go 1.18 generic types, until it also adopt go modules 😰 |
(hope this is just about docker/cli@0e73168 and this doesn't have more impacts) |
Could it be Looks like that has a |
Doh! Didn't see your comment (browser cache);
|
Capturing a Slack conversation from the maintainers channel with Cory;
So (my interpretation):
Cory also found that there's an escape-hatch; https://go.dev/doc/toolchain#:~:text=The%20go%20line%20for,file%20to%20Go%201.22.
So adding I was curious WHY DOWNGRADE? Because the Go 1.0 compatibility promise should guarantee compatibility; new versions may add new functionality, but those changes should always be "additive"; any existing feature should continue to work! So when building with go1.21, why not build with that language version? (The reverse I understand; if the main module would use And the reason for that seems to be https://go.googlesource.com/proposal/+/master/design/56986-godebug.md Which, if I understand correctly, describes (again, my interpretation);
(And to do those fixes automatically .. downgrading language versions will set implicit I'm curious how that works though; wondering if things like Windows switching "resolver" will now disable |
Concluding;
To fix:
|
Looks like github.com/docker/docker is up-to-date now, so this is no longer needed. |
Bumps github.com/docker/docker from 25.0.0-beta.1+incompatible to 25.0.0-beta.2+incompatible.
Release notes
Sourced from github.com/docker/docker's releases.
Commits
92884c2
Merge pull request #46924 from thaJeztah/vendor_singleflightdbdfc71
vendor: resenje.org/singleflight v0.4.1e8c72ad
Merge pull request #46830 from thaJeztah/vendor_containerd_1.7.94d2a324
update to go.opentelemetry.io/otel/semconv/v1.21.0, remove "httpconv" uses7d991b6
vendor: github.com/moby/buildkit v0.12.5-0.20231208203051-3b6880d2a00ffcf03cd
vendor: github.com/containerd/containerd v1.7.117028a03
vendor: github.com/containerd/containerd v1.7.1049ad102
vendor: github.com/containerd/containerd v1.7.9c14bd4f
vendor: vendor: upgrade OpenTelemetry to v1.19.0 / v0.45.065973c6
Merge pull request #46923 from thaJeztah/update_securejoinDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebase
will rebase this PR@dependabot recreate
will recreate this PR, overwriting any edits that have been made to it@dependabot merge
will merge this PR after your CI passes on it@dependabot squash and merge
will squash and merge this PR after your CI passes on it@dependabot cancel merge
will cancel a previously requested merge and block automerging@dependabot reopen
will reopen this PR if it is closed@dependabot close
will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditions
will show all of the ignore conditions of the specified dependency@dependabot ignore this major version
will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor version
will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependency
will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)