Skip to content
This repository has been archived by the owner on Oct 13, 2023. It is now read-only.

[18.09 backport] Bump Golang to 1.11.11 #168

Merged
merged 18 commits into from Jul 23, 2019

Conversation

thaJeztah
Copy link
Member

@thaJeztah thaJeztah commented Mar 2, 2019

Already in the 18.09 branch:

Included in this PR:

# https://github.com/moby/moby/pull/37358 Bump golang to 1.11.0
git cherry-pick -s -S -x 9b0097a69900009ab5c2480e047952cba60462a7
git cherry-pick -s -S -x 09921ca33fb1cdb7648143e787a2a6222d844eb0

# git cherry-pick -s -S -x bac67204e19d7ce34861d7dda5f38ae18bc2c844
# 18.09 is skipped: already ahead
# https://github.com/containerd/continuity/compare/004b46473808b3e7a4a3049c20e4376c91eb966d...c7c5070e6f6e090ab93b0a61eb921f2196fc3383

git cherry-pick -s -S -x 32a23311033dc5bfdfbc80c54a159cc92990efd2
# Dockerfile.simple: simplify by using golang img - minor conflict due to 18.09 already having bumped golang in between

git cherry-pick -s -S -x 8ad648b59a2993156586458cc9ff8dcbc89b86e4
git cherry-pick -s -S -x 10fd0516b9f9f04d0f0e2c0755e704303f1a487f
# some conflicts due to 18.09 already having bumped golang in between
git cherry-pick -s -S -x ce858feb6ac124b3a42400b857e480ef98710164

# https://github.com/moby/moby/pull/37805 vendor: bump etcd to v3.3.9
git cherry-pick -s -S -x a77a2a406cd3303a4fd5ccbfbeccde8a9014dbcb
git cherry-pick -s -S -x 7008ac01fa4dbde9a069cc647a09c982f3648fc3
# minor conflict in vendor.conf, because go-grpc-prometheus was already bumped to v1.2.0 in the 18.09 branch

# https://github.com/moby/moby/pull/37950 Bump Golang 1.11.1
git cherry-pick -s -S -x 0347751117513312be72e8b0d03f32319027f145

# https://github.com/moby/moby/pull/38143 Bump Golang to 1.11.2
git cherry-pick -s -S -x e80ee5206e6e62521c8149381d06bbb0bea88169

# https://github.com/moby/moby/pull/38369 Bump Golang 1.11.3 (CVE-2018-16875)
git cherry-pick -s -S -x 6b7c093b0de21d574ce120aee891e60187749174

# https://github.com/moby/moby/pull/38402 Bump Golang 1.11.4
git cherry-pick -s -S -x 3770f386477e5eea4e6ba02516393a1edd5cd28b

# https://github.com/moby/moby/pull/38403 Switch Dockerfile.e2e to alpine 3.8
git cherry-pick -s -S -x 7c8dcebd300262c9f98d92777dd9aab6d4e26f10

# https://github.com/moby/moby/pull/38629 Bump Golang 1.11.5 (CVE-2019-6486)
git cherry-pick -s -S -x 20b34412dc8a3099f658545e8504e1fc1326b3cb

@thaJeztah thaJeztah added this to the 18.09.4 milestone Mar 2, 2019
@thaJeztah
Copy link
Member Author

ping @kolyshkin @andrewhsu @tiborvass PTAL

@kolyshkin
Copy link

SGTM

@thaJeztah thaJeztah modified the milestones: 18.09.4, 18.09.5 Mar 28, 2019
@andrewhsu andrewhsu modified the milestones: 18.09.5, 18.09.6 Mar 28, 2019
@thaJeztah thaJeztah force-pushed the 18.09_backport_bump_golang_1.11 branch from 805deea to 1718152 Compare April 14, 2019 00:46
@thaJeztah thaJeztah changed the title [18.09 backport] Bump Golang to 1.11.5 [18.09 backport] Bump Golang to 1.11.9 Apr 14, 2019
@thaJeztah thaJeztah modified the milestones: 18.09.6, 18.09.7 May 7, 2019
@thaJeztah
Copy link
Member Author

Looks like I can remove moby#37770, which was cherry-picked as part of #198

@thaJeztah thaJeztah force-pushed the 18.09_backport_bump_golang_1.11 branch from 1718152 to c619c0e Compare May 20, 2019 17:28
@thaJeztah thaJeztah changed the title [18.09 backport] Bump Golang to 1.11.9 [18.09 backport] Bump Golang to 1.11.10 May 20, 2019
@thaJeztah thaJeztah force-pushed the 18.09_backport_bump_golang_1.11 branch from c619c0e to 372c5c7 Compare June 14, 2019 10:46
@thaJeztah thaJeztah changed the title [18.09 backport] Bump Golang to 1.11.10 [18.09 backport] Bump Golang to 1.11.11 Jun 14, 2019
@thaJeztah
Copy link
Member Author

Rebased, and bumped to Go 1.11.11

Copy link

@kolyshkin kolyshkin left a comment

Choose a reason for hiding this comment

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

LGTM

@kolyshkin
Copy link

Hooray, since moby#37500 is there and go >= 1.10 those linker warnings for static binaries are gone! 🎆

kolyshkin and others added 10 commits June 20, 2019 11:23
This should eliminate a bunch of new (go-1.11 related) validation
errors telling that the code is not formatted with `gofmt -s`.

No functional change, just whitespace (i.e.
`git show --ignore-space-change` shows nothing).

Patch generated with:

> git ls-files | grep -v ^vendor/ | grep .go$ | xargs gofmt -s -w

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
(cherry picked from commit 9b0097a)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
To include the following backported fix:

kolyshkin/ugorji-go@1cf431c13dec46596

which should fix this:

> 13:40:53 vendor/github.com/ugorji/go/codec/gen-helper.generated.go:1:
> possible malformed +build comment%!(EXTRA []interface {}=[])

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
(cherry picked from commit 09921ca)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Instead of installing golang from sources, it's easier to use
golang image which is based on Debian Stretch.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
(cherry picked from commit 32a2331)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
We would like to use a version with .0 suffix (like 1.11.0) in
Dockerfile, so that once a .1 version is out (like 1.11.1) we
won't accidentally switch to it.

Unfortunately it's not possible to use .0 suffix currently
as it breaks the check in make.ps1. This patch fixes that.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
(cherry picked from commit 8ad648b)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
It's that time of year again! Go 1.11 is released, time to use it.

This commit also

* removes our archive/tar fork, since upstream archive/tar
  is fixed for static builds, and osusergo build tag is set.

* removes ENV GO_VERSION from Dockerfile as it's not needed
  anymore since PR moby#37592 is merged.

[v2: switch to beta2]
[v3: switch to beta3]
[v4: rc1]
[v5: remove ENV GO_VERSION as PR moby#37592 is now merged]
[v6: rc2]
[v7: final!]
[v8: use 1.11.0]
[v9: back to 1.11]
[v8: use 1.11.0]

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
(cherry picked from commit 10fd051)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
We can do that now as we're no longer carrying archive/tar.
Note that latest vndr removes vendor/ subdir so we don't have to,
thus the change in hack/validate/vendor.

While at it, re-run a new vndr version to make sure everything
that should be there is.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
(cherry picked from commit ce858fe)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
...and use ugorji/go 1.1.1

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
(cherry picked from commit a77a2a4)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
As per https://github.com/etcd-io/etcd/blob/fa57f7fbc787b4/Gopkg.lock

List of packages required by subset of etcd used is provided by:

go list -f '{{join .Deps "\n"}}' \
 github.com/docker/docker/vendor/github.com/coreos/etcd/... \
 | grep -F . | grep -v coreos/etcd | sort | uniq

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
(cherry picked from commit 7008ac0)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
go1.11.1 (released 2018/10/01) includes fixes to the compiler,
documentation, go command, runtime, and the crypto/x509, encoding/json,
go/types, net, net/http, and reflect packages.

See the Go 1.11.1 milestone on our issue tracker for details:
https://github.com/golang/go/issues?q=milestone%3AGo1.11.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 0347751)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Includes fixes to the compiler, linker, documentation, go command, and the
database/sql and go/types packages. See the Go 1.11.2 milestone on the issue
tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.11.2

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit e80ee52)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
go1.11.13 (released 2018/12/14)

- crypto/x509: CPU denial of service in chain validation golang/go#29233
- cmd/go: directory traversal in "go get" via curly braces in import paths golang/go#29231
- cmd/go: remote command execution during "go get -u" golang/go#29230

See the Go 1.11.3 milestone on the issue tracker for details:
https://github.com/golang/go/issues?q=milestone%3AGo1.11.3

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 6b7c093)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
go1.11.4 (released 2018/12/14) includes fixes to cgo, the compiler, linker,
runtime, documentation, go command, and the net/http and go/types packages. It
includes a fix to a bug introduced in Go 1.11.3 that broke go get for import
path patterns containing "...".

See the Go 1.11.4 milestone for details:
https://github.com/golang/go/issues?q=milestone%3AGo1.11.4+label%3ACherryPickApproved

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 3770f38)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 7c8dceb)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
See the milestone for details;
https://github.com/golang/go/issues?q=milestone%3AGo1.11.5+label%3ACherryPickApproved

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 20b3441)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Full diff: golang/go@go1.11.5...go1.11.9

go1.11.6 (released 2019/03/14) includes fixes to cgo, the compiler, linker,
runtime, go command, and the crypto/x509, encoding/json, net, and net/url
packages. See the Go 1.11.6 milestone on our issue tracker for details.

https://github.com/golang/go/issues?q=milestone%3AGo1.11.6

go1.11.7 (released 2019/04/05) includes fixes to the runtime and the net
packages. See the Go 1.11.7 milestone on our issue tracker for details.

https://github.com/golang/go/issues?q=milestone%3AGo1.11.7

go1.11.8 (released 2019/04/08) was accidentally released without its
intended fix. It is identical to go1.11.7, except for its version number.
The intended fix is in go1.11.9.

go1.11.9 (released 2019/04/11) fixes an issue where using the prebuilt
binary releases on older versions of GNU/Linux led to failures when linking
programs that used cgo. Only Linux users who hit this issue need to update.

See golang/go#31293 for details

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
go1.11.10 (released 2019/05/06) includes fixes to the runtime and the linker.
See the Go 1.11.10 milestone on our issue tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.11.10

Full diff: golang/go@go1.11.9...go1.11.10

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
go1.11.11 (released 2019/06/11) includes a fix to the crypto/x509 package.
See the Go 1.11.11 milestone on the issue tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.11.11

full diff: golang/go@go1.11.10...go1.11.11

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
@thaJeztah thaJeztah force-pushed the 18.09_backport_bump_golang_1.11 branch from 372c5c7 to a14e6ca Compare June 20, 2019 09:24
@thaJeztah
Copy link
Member Author

rebased again, because we merged quite some other PR's

@andrewhsu andrewhsu modified the milestones: 18.09.7, 18.09.8 Jun 27, 2019
@thaJeztah thaJeztah modified the milestones: 18.09.8, 18.09.9 Jul 18, 2019
@kolyshkin kolyshkin merged commit 241a7fc into docker:18.09 Jul 23, 2019
@thaJeztah thaJeztah deleted the 18.09_backport_bump_golang_1.11 branch July 23, 2019 22:23
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
4 participants