Skip to content
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

Update Golang to v1.15.0-rc.1 #93264

Merged
merged 12 commits into from
Jul 26, 2020
Merged

Conversation

justaugustus
Copy link
Member

@justaugustus justaugustus commented Jul 20, 2020

What type of PR is this?

/kind cleanup
/area dependency release-eng
/sig release

What this PR does / why we need it:

Update Golang to v1.15.0

Depends on fixes in earlier PRs (which must also be included if go1.15 support is backported):

Followups (which must also be done in earlier releases if go1.15 support is backported):

Signed-off-by: Stephen Augustus saugustus@vmware.com

cc: @kubernetes/release-engineering @kubernetes/release-team-leads @kubernetes/sig-scalability-feature-requests @liggitt @dims
Tracking issue: kubernetes/release#1421

Special notes for your reviewer:

This is testing against a pre-release version of go1.15 (go1.15rc1).
Expect a slew of errors, as various parts of our code are not configured to accept Go pre-release versions.

Also, there will definitely be bazel toolchain + rules_go errors.

Does this PR introduce a user-facing change?:

- Kubernetes is now built with golang 1.15.0-rc.1.
- The deprecated, legacy behavior of treating the CommonName field on X.509 serving certificates as a host name when no Subject Alternative Names are present is now disabled by default. It can be temporarily re-enabled by adding the value x509ignoreCN=0 to the GODEBUG environment variable.

@k8s-ci-robot k8s-ci-robot added release-note Denotes a PR that will be considered when it comes time to generate release notes. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. sig/scalability Categorizes an issue or PR as relevant to SIG Scalability. size/S Denotes a PR that changes 10-29 lines, ignoring generated files. area/dependency Issues or PRs related to dependency changes kind/feature Categorizes issue or PR as related to a new feature. area/release-eng Issues or PRs related to the Release Engineering subproject sig/release Categorizes an issue or PR as relevant to SIG Release. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-priority Indicates a PR lacks a `priority/foo` label and requires one. area/test labels Jul 20, 2020
@k8s-ci-robot k8s-ci-robot added the sig/testing Categorizes an issue or PR as relevant to SIG Testing. label Jul 20, 2020
@justaugustus justaugustus added this to the v1.19 milestone Jul 20, 2020
@k8s-ci-robot k8s-ci-robot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Jul 20, 2020
@justaugustus
Copy link
Member Author

/test pull-kubernetes-verify

@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. area/conformance Issues or PRs related to kubernetes conformance tests sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Jul 21, 2020
@FiloSottile
Copy link

  • only update golang.org dependencies that have release-branch.go1.15 branches:
    hack/pin-dependency.sh golang.org/x/crypto  release-branch.go1.15
    hack/pin-dependency.sh golang.org/x/mod     release-branch.go1.15
    hack/pin-dependency.sh golang.org/x/net     release-branch.go1.15
    hack/pin-dependency.sh golang.org/x/text    release-branch.go1.15
    hack/pin-dependency.sh golang.org/x/tools   release-branch.go1.15
    hack/pin-dependency.sh golang.org/x/xerrors release-branch.go1.15
    

Please don't use the release branches of the golang.org subrepos. They are not what you might think they are: we make release branches to track the version that is vendored into a Go release, not the version that is compatible with a Go release. These release branches are not documented and not supported, and if there is a security vulnerability in a package that is not vendored into the standard library, they will not get the update. You should treat golang.org modules like any other module.

@justaugustus
Copy link
Member Author

Thanks @FiloSottile! So you're saying we'd be better suited targeting the master branch for the golang/x/... tools instead?

@FiloSottile
Copy link

Thanks @FiloSottile! So you're saying we'd be better suited targeting the master branch for the golang/x/... tools instead?

Yes, if that's your policy for other dependencies. If you are using Go modules, the standard thing to track would be latest, which translates to master if there are no semver tags, and to the latest tag if there is one.

hack/pin-dependency.sh golang.org/x/crypto  release-branch.go1.15
hack/pin-dependency.sh golang.org/x/mod     release-branch.go1.15
hack/pin-dependency.sh golang.org/x/net     release-branch.go1.15
hack/pin-dependency.sh golang.org/x/text    v0.3.3
hack/pin-dependency.sh golang.org/x/tools   release-branch.go1.15
hack/pin-dependency.sh golang.org/x/xerrors release-branch.go1.15

Did not pin golang.org/x/sys to release-branch.go1.15 because we require a newer level
@liggitt
Copy link
Member

liggitt commented Jul 26, 2020

/lgtm
/approve

added followups to the description

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 26, 2020
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: justaugustus, liggitt

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 26, 2020
@justaugustus
Copy link
Member Author

added followups to the description

Thanks @liggitt! Full tracking issue is here and I'll get the follow-ups added to it: kubernetes/release#1421

@liggitt
Copy link
Member

liggitt commented Jul 26, 2020

--- FAIL: TestCustomResourceCascadingDeletion
garbage_collector_test.go:960: expected dependent "dependentqdrg7" to be deleted

which isn't normally a flaky test

/retest

@liggitt liggitt added the priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. label Jul 26, 2020
@k8s-ci-robot k8s-ci-robot removed the needs-priority Indicates a PR lacks a `priority/foo` label and requires one. label Jul 26, 2020
@k8s-ci-robot k8s-ci-robot merged commit 9a20f30 into kubernetes:master Jul 26, 2020
@dims
Copy link
Member

dims commented Jul 26, 2020

@FiloSottile thanks for the guidance!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. area/apiserver area/cloudprovider area/code-generation area/conformance Issues or PRs related to kubernetes conformance tests area/dependency Issues or PRs related to dependency changes area/ipvs area/kubectl area/kubelet area/provider/gcp Issues or PRs related to gcp provider area/release-eng Issues or PRs related to the Release Engineering subproject area/test cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. kind/feature Categorizes issue or PR as related to a new feature. lgtm "Looks good to me", indicates that a PR is ready to be merged. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. release-note Denotes a PR that will be considered when it comes time to generate release notes. sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. sig/auth Categorizes an issue or PR as relevant to SIG Auth. sig/cli Categorizes an issue or PR as relevant to SIG CLI. sig/cloud-provider Categorizes an issue or PR as relevant to SIG Cloud Provider. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. sig/instrumentation Categorizes an issue or PR as relevant to SIG Instrumentation. sig/network Categorizes an issue or PR as relevant to SIG Network. sig/node Categorizes an issue or PR as relevant to SIG Node. sig/release Categorizes an issue or PR as relevant to SIG Release. sig/scalability Categorizes an issue or PR as relevant to SIG Scalability. sig/storage Categorizes an issue or PR as relevant to SIG Storage. sig/testing Categorizes an issue or PR as relevant to SIG Testing. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. triage/needs-information Indicates an issue needs more information in order to work on it.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

10 participants