From 16c2ea02d62a60c20fb1bef4178bc92076ed616d Mon Sep 17 00:00:00 2001 From: Benjamin Rewis <32186188+benjirewis@users.noreply.github.com> Date: Mon, 15 Aug 2022 14:13:58 -0400 Subject: [PATCH] GODRIVER-2518 Use Go 1.18 for Evergreen CI. (#1047) --- .evergreen/config.yml | 64 +++++++++++++++++++++---------------------- README.md | 2 +- docs/CONTRIBUTING.md | 2 +- 3 files changed, 34 insertions(+), 34 deletions(-) diff --git a/.evergreen/config.yml b/.evergreen/config.yml index 17521788e6..51205d9b7f 100644 --- a/.evergreen/config.yml +++ b/.evergreen/config.yml @@ -2047,91 +2047,91 @@ axes: - id: os-ssl-32 display_name: OS values: - - id: "windows-64-go-1-17" + - id: "windows-64-go-1-18" display_name: "Windows 64-bit" run_on: - windows-64-vs2017-test variables: GCC_PATH: "/cygdrive/c/ProgramData/chocolatey/lib/mingw/tools/install/mingw64/bin" - GO_DIST: "C:\\golang\\go1.17" + GO_DIST: "C:\\golang\\go1.18" PYTHON3_BINARY: "C:/python/Python38/python.exe" VENV_BIN_DIR: "Scripts" - - id: "ubuntu1604-64-go-1-17" + - id: "ubuntu1604-64-go-1-18" display_name: "Ubuntu 16.04" run_on: ubuntu1604-build variables: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" PYTHON3_BINARY: "/opt/python/3.8/bin/python3" # There is no crypt_shared library download for Ubuntu 16.04. Skip downloading it and let the # tests use mongocryptd instead. SKIP_CRYPT_SHARED_LIB_DOWNLOAD: "true" - - id: "osx-go-1-17" + - id: "osx-go-1-18" display_name: "MacOS 10.15" run_on: macos-1015 variables: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" PYTHON3_BINARY: python3 # OSes that require >= 4.0 for SSL - id: os-ssl-40 display_name: OS values: - - id: "windows-64-go-1-17" + - id: "windows-64-go-1-18" display_name: "Windows 64-bit" run_on: - windows-64-vs2017-test variables: GCC_PATH: "/cygdrive/c/ProgramData/chocolatey/lib/mingw/tools/install/mingw64/bin" - GO_DIST: "C:\\golang\\go1.17" + GO_DIST: "C:\\golang\\go1.18" PYTHON3_BINARY: "C:/python/Python38/python.exe" VENV_BIN_DIR: "Scripts" - - id: "ubuntu1804-64-go-1-17" + - id: "ubuntu1804-64-go-1-18" display_name: "Ubuntu 18.04" run_on: ubuntu1804-build variables: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" PYTHON3_BINARY: "/opt/python/3.8/bin/python3" - - id: "osx-go-1-17" + - id: "osx-go-1-18" display_name: "MacOS 10.15" run_on: macos-1015 variables: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" PYTHON3_BINARY: python3 # OCSP linux tasks need to run against this OS since stapling is disabled on Ubuntu 18.04 (SERVER-51364) - id: ocsp-rhel-70 display_name: OS values: - - id: "rhel70-go-1-17" + - id: "rhel70-go-1-18" display_name: "RHEL 7.0" run_on: rhel70-build variables: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" PYTHON3_BINARY: "/opt/python/3.6/bin/python3" - id: os-aws-auth display_name: OS values: - - id: "windows-64-vsMulti-small-go-1-17" + - id: "windows-64-vsMulti-small-go-1-18" display_name: "Windows 64-bit" run_on: - windows-64-vsMulti-small variables: GCC_PATH: "/cygdrive/c/ProgramData/chocolatey/lib/mingw/tools/install/mingw64/bin" - GO_DIST: "C:\\golang\\go1.17" + GO_DIST: "C:\\golang\\go1.18" SKIP_ECS_AUTH_TEST: true PYTHON3_BINARY: "C:/python/Python38/python.exe" - - id: "ubuntu1804-64-go-1-17" + - id: "ubuntu1804-64-go-1-18" display_name: "Ubuntu 18.04" run_on: ubuntu1804-test variables: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" PYTHON3_BINARY: "/opt/python/3.8/bin/python3" - - id: "osx-go-1-17" + - id: "osx-go-1-18" display_name: "MacOS 10.15" run_on: macos-1015 variables: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" SKIP_ECS_AUTH_TEST: true SKIP_EC2_AUTH_TEST: true PYTHON3_BINARY: python3 @@ -2193,7 +2193,7 @@ buildvariants: run_on: - ubuntu1804-build expansions: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" tasks: - name: ".static-analysis" @@ -2202,7 +2202,7 @@ buildvariants: run_on: - ubuntu1804-build expansions: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" tasks: - name: ".performance" @@ -2211,7 +2211,7 @@ buildvariants: run_on: - ubuntu1804-test expansions: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" tasks: - name: ".compile-check" @@ -2220,7 +2220,7 @@ buildvariants: run_on: - ubuntu1804-build expansions: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" tasks: - name: "atlas-test" @@ -2229,7 +2229,7 @@ buildvariants: run_on: - ubuntu1804-build expansions: - GO_DIST: "/opt/golang/go1.17" + GO_DIST: "/opt/golang/go1.18" tasks: - name: "test-atlas-data-lake" @@ -2288,14 +2288,14 @@ buildvariants: - name: "aws-auth-test" - matrix_name: "ocsp-test" - matrix_spec: { version: ["4.4", "5.0", "6.0", "latest"], ocsp-rhel-70: ["rhel70-go-1-17"] } + matrix_spec: { version: ["4.4", "5.0", "6.0", "latest"], ocsp-rhel-70: ["rhel70-go-1-18"] } display_name: "OCSP ${version} ${ocsp-rhel-70}" batchtime: 20160 # Use a batchtime of 14 days as suggested by the OCSP test README tasks: - name: ".ocsp" - matrix_name: "ocsp-test-windows" - matrix_spec: { version: ["4.4", "5.0", "6.0", "latest"], os-ssl-40: ["windows-64-go-1-17"] } + matrix_spec: { version: ["4.4", "5.0", "6.0", "latest"], os-ssl-40: ["windows-64-go-1-18"] } display_name: "OCSP ${version} ${os-ssl-40}" batchtime: 20160 # Use a batchtime of 14 days as suggested by the OCSP test README tasks: @@ -2303,7 +2303,7 @@ buildvariants: - name: ".ocsp-rsa !.ocsp-staple" - matrix_name: "ocsp-test-macos" - matrix_spec: { version: ["4.4", "5.0", "6.0", "latest"], os-ssl-40: ["osx-go-1-17"] } + matrix_spec: { version: ["4.4", "5.0", "6.0", "latest"], os-ssl-40: ["osx-go-1-18"] } display_name: "OCSP ${version} ${os-ssl-40}" batchtime: 20160 # Use a batchtime of 14 days as suggested by the OCSP test README tasks: @@ -2317,26 +2317,26 @@ buildvariants: - name: ".versioned-api" - matrix_name: "kms-tls-test" - matrix_spec: { version: ["latest"], os-ssl-40: ["ubuntu1804-64-go-1-17"] } + matrix_spec: { version: ["latest"], os-ssl-40: ["ubuntu1804-64-go-1-18"] } display_name: "KMS TLS ${os-ssl-40}" tasks: - name: ".kms-tls" - matrix_name: "load-balancer-test" # The LB software is only available on Ubuntu 18.04, so we don't test on all OSes. - matrix_spec: { version: ["5.0", "6.0", "latest", "rapid"], os-ssl-40: ["ubuntu1804-64-go-1-17"] } + matrix_spec: { version: ["5.0", "6.0", "latest", "rapid"], os-ssl-40: ["ubuntu1804-64-go-1-18"] } display_name: "Load Balancer Support ${version} ${os-ssl-40}" tasks: - name: ".load-balancer" - matrix_name: "serverless" - matrix_spec: { os-ssl-40: ["ubuntu1804-64-go-1-17"] } + matrix_spec: { os-ssl-40: ["ubuntu1804-64-go-1-18"] } display_name: "Serverless ${os-ssl-40}" tasks: - "serverless_task_group" - matrix_name: "kms-kmip-test" - matrix_spec: { version: ["latest"], os-ssl-40: ["ubuntu1804-64-go-1-17"] } + matrix_spec: { version: ["latest"], os-ssl-40: ["ubuntu1804-64-go-1-18"] } display_name: "KMS KMIP ${os-ssl-40}" tasks: - name: ".kms-kmip" diff --git a/README.md b/README.md index 97b154c9a4..54b4a8a086 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ The MongoDB supported driver for Go. ------------------------- ## Requirements -- Go 1.10 or higher if using the driver as a dependency. Go 1.17 or higher if building the driver yourself. We aim to support the latest versions of Go. +- Go 1.10 or higher if using the driver as a dependency. Go 1.18 or higher if building the driver yourself. We aim to support the latest versions of Go. - MongoDB 2.6 and higher. ------------------------- diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 5bef70142a..54ba4a4d50 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -13,7 +13,7 @@ Before starting to write code, look for existing [tickets](https://jira.mongodb. The Go Driver team uses GitHub to manage and review all code changes. Patches should generally be made against the master (default) branch and include relevant tests, if applicable. -Code should compile and tests should pass under all Go versions which the driver currently supports. Currently the Go Driver supports a minimum version of Go 1.10 and requires Go 1.17 for development. Please run the following Make targets to validate your changes: +Code should compile and tests should pass under all Go versions which the driver currently supports. Currently the Go Driver supports a minimum version of Go 1.10 and requires Go 1.18 for development. Please run the following Make targets to validate your changes: - `make fmt` - `make lint` (requires [golangci-lint](https://github.com/golangci/golangci-lint) and [lll](https://github.com/walle/lll) to be installed and available in the `PATH`) - `make test`