This is an automated email from the ASF dual-hosted git repository.
yuxuan pushed a commit to branch 0.15.0
in repository https://gitbox.apache.org/repos/asf/thrift.git
The following commit(s) were added to refs/heads/0.15.0 by this push:
new 57b9aa0 THRIFT-5447: Update supported Go versions
57b9aa0 is described below
commit 57b9aa0dd5ef2abd2825c9050783dafc75cc1698
Author: Yuxuan 'fishy' Wang <[email protected]>
AuthorDate: Wed Aug 4 09:07:53 2021 -0700
THRIFT-5447: Update supported Go versions
Client: go
Update go versions used in travis to 1.16.7 and 1.17, update
LANGUAGES.md, and update go's README to clarify on support policy.
This change will be cherry-picked into 0.15.0 branch after merged.
---
.gitignore | 1 +
LANGUAGES.md | 2 +-
build/docker/ubuntu-bionic/Dockerfile | 4 ++--
build/docker/ubuntu-disco/Dockerfile | 4 ++--
build/docker/ubuntu-xenial/Dockerfile | 4 ++--
go.mod | 2 +-
go.sum | 3 ---
lib/go/README.md | 21 +++++++++++++++++++++
lib/go/test/fuzz/go.mod | 8 +++++++-
go.sum => lib/go/test/fuzz/go.sum | 4 ----
test/go/genmock.sh | 1 -
11 files changed, 37 insertions(+), 17 deletions(-)
diff --git a/.gitignore b/.gitignore
index 6d07751..804cfba 100644
--- a/.gitignore
+++ b/.gitignore
@@ -272,6 +272,7 @@ project.lock.json
/lib/erl/logs/
/lib/go/pkg
/lib/go/src
+/lib/go/test/fuzz/gopathfuzz
/lib/go/test/gopath/
/lib/go/test/ThriftTest.thrift
/lib/nodets/test-compiled/
diff --git a/LANGUAGES.md b/LANGUAGES.md
index 46a7838..7b0e10f 100644
--- a/LANGUAGES.md
+++ b/LANGUAGES.md
@@ -151,7 +151,7 @@ Thrift's core protocol is TBinary, supported by all
languages except for JavaScr
<td align=left><a
href="https://github.com/apache/thrift/blob/master/lib/go/README.md">Go</a></td>
<!-- Since -----------------><td>0.7.0</td>
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png"
alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
-<!-- Language Levels -------><td>1.14.14</td><td>1.15.7</td>
+<!-- Language Levels -------><td>1.16.7</td><td>1.17</td>
<!-- Low-Level Transports --><td><img src="doc/images/cred.png"
alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img
src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png"
alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img
src="doc/images/cgrn.png" alt="Yes"/></td>
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png"
alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img
src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png"
alt="Yes"/></td>
<!-- Protocols -------------><td><img src="doc/images/cgrn.png"
alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img
src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png"
alt="Yes"/></td>
diff --git a/build/docker/ubuntu-bionic/Dockerfile
b/build/docker/ubuntu-bionic/Dockerfile
index a11e9ba..fc086cf 100644
--- a/build/docker/ubuntu-bionic/Dockerfile
+++ b/build/docker/ubuntu-bionic/Dockerfile
@@ -140,9 +140,9 @@ RUN apt-get install -y --no-install-recommends \
libglib2.0-dev
# golang
-ENV GOLANG_VERSION 1.16.2
+ENV GOLANG_VERSION 1.17
ENV GOLANG_DOWNLOAD_URL
https://golang.org/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
-ENV GOLANG_DOWNLOAD_SHA256
542e936b19542e62679766194364f45141fde55169db2d8d01046555ca9eb4b8
+ENV GOLANG_DOWNLOAD_SHA256
6bf89fc4f5ad763871cf7eac80a2d594492de7a818303283f1366a7f6a30372d
RUN curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz && \
echo "$GOLANG_DOWNLOAD_SHA256 golang.tar.gz" | sha256sum -c - && \
tar -C /usr/local -xzf golang.tar.gz && \
diff --git a/build/docker/ubuntu-disco/Dockerfile
b/build/docker/ubuntu-disco/Dockerfile
index de99574..af8f47f 100644
--- a/build/docker/ubuntu-disco/Dockerfile
+++ b/build/docker/ubuntu-disco/Dockerfile
@@ -140,9 +140,9 @@ RUN apt-get install -y --no-install-recommends \
libglib2.0-dev
# golang
-ENV GOLANG_VERSION 1.16.2
+ENV GOLANG_VERSION 1.17
ENV GOLANG_DOWNLOAD_URL
https://golang.org/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
-ENV GOLANG_DOWNLOAD_SHA256
542e936b19542e62679766194364f45141fde55169db2d8d01046555ca9eb4b8
+ENV GOLANG_DOWNLOAD_SHA256
6bf89fc4f5ad763871cf7eac80a2d594492de7a818303283f1366a7f6a30372d
RUN curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz && \
echo "$GOLANG_DOWNLOAD_SHA256 golang.tar.gz" | sha256sum -c - && \
tar -C /usr/local -xzf golang.tar.gz && \
diff --git a/build/docker/ubuntu-xenial/Dockerfile
b/build/docker/ubuntu-xenial/Dockerfile
index 441b692..3443f92 100644
--- a/build/docker/ubuntu-xenial/Dockerfile
+++ b/build/docker/ubuntu-xenial/Dockerfile
@@ -128,9 +128,9 @@ RUN apt-get install -y --no-install-recommends \
libglib2.0-dev
# golang
-ENV GOLANG_VERSION 1.15.10
+ENV GOLANG_VERSION 1.16.7
ENV GOLANG_DOWNLOAD_URL
https://golang.org/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
-ENV GOLANG_DOWNLOAD_SHA256
4aa1267517df32f2bf1cc3d55dfc27d0c6b2c2b0989449c96dd19273ccca051d
+ENV GOLANG_DOWNLOAD_SHA256
7fe7a73f55ba3e2285da36f8b085e5c0159e9564ef5f63ee0ed6b818ade8ef04
RUN curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz && \
echo "$GOLANG_DOWNLOAD_SHA256 golang.tar.gz" | sha256sum -c - && \
tar -C /usr/local -xzf golang.tar.gz && \
diff --git a/go.mod b/go.mod
index 474ec99..d620e5e 100644
--- a/go.mod
+++ b/go.mod
@@ -1,5 +1,5 @@
module github.com/apache/thrift
-go 1.15
+go 1.16
require github.com/golang/mock v1.5.0
diff --git a/go.sum b/go.sum
index cfde584..646b11a 100644
--- a/go.sum
+++ b/go.sum
@@ -2,7 +2,6 @@ github.com/golang/mock v1.5.0
h1:jlYHihg//f7RRwuPfptm04yp4s7O6Kw8EZiVYIGcH0g=
github.com/golang/mock v1.5.0/go.mod
h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod
h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod
h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
-golang.org/x/mod v0.3.0 h1:RM4zey1++hCTbCVQfnWeKs9/IEsaBLA8vTkd0WVtmH4=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod
h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod
h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
@@ -10,8 +9,6 @@ golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod
h1:RxMgew5VJxzue5/jJ
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod
h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
-golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e
h1:aZzprAO9/8oim3qStq3wc1Xuxx4QmAGriC4VU4ojemQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod
h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod
h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
-golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898
h1:/atklqdjdhuosWIl6AIbOeHJjicWYPqR9bpxqxYG2pA=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod
h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
diff --git a/lib/go/README.md b/lib/go/README.md
index bca4370..75d7174 100644
--- a/lib/go/README.md
+++ b/lib/go/README.md
@@ -21,6 +21,27 @@ specific language governing permissions and limitations
under the License.
+Suppored Go releases
+====================
+
+Following the
+[official Go release policy](https://golang.org/doc/devel/release#policy),
+we support the latest two Go releases at the time of the Thrift release.
+
+For example, at the time of Thrift v0.14.0 release,
+the latest two Go releases are go1.15 and go1.14,
+and those are the two Go releases supported by Thrift v0.14.*
+(including v0.14.1 and v0.14.2 patch releases).
+
+Because of Go's backward compatibility guarantee,
+older Thrift libraries usually works with newer Go releases
+(e.g. Thrift v0.14.* works with go1.16, although it's not officially
supported),
+but newer Thrift releases might use new APIs introduced in Go releases and no
+longer work with older Go releases.
+For example, Thrift v0.14.0 used APIs introduced in go1.13,
+and as a result no longer works on go1.12.
+
+
Using Thrift with Go
====================
diff --git a/lib/go/test/fuzz/go.mod b/lib/go/test/fuzz/go.mod
index efff516..3cefa02 100644
--- a/lib/go/test/fuzz/go.mod
+++ b/lib/go/test/fuzz/go.mod
@@ -1,9 +1,15 @@
module github.com/apache/thrift/lib/go/test/fuzz
-go 1.15
+go 1.16
replace github.com/apache/thrift => ../../../../
replace shared => ./gen-go/shared
replace tutorial => ./gen-go/tutorial
+
+require (
+ github.com/apache/thrift v0.0.0-00010101000000-000000000000
+ shared v0.0.0-00010101000000-000000000000
+ tutorial v0.0.0-00010101000000-000000000000
+)
diff --git a/go.sum b/lib/go/test/fuzz/go.sum
similarity index 78%
copy from go.sum
copy to lib/go/test/fuzz/go.sum
index cfde584..6468215 100644
--- a/go.sum
+++ b/lib/go/test/fuzz/go.sum
@@ -1,8 +1,6 @@
-github.com/golang/mock v1.5.0 h1:jlYHihg//f7RRwuPfptm04yp4s7O6Kw8EZiVYIGcH0g=
github.com/golang/mock v1.5.0/go.mod
h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod
h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod
h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
-golang.org/x/mod v0.3.0 h1:RM4zey1++hCTbCVQfnWeKs9/IEsaBLA8vTkd0WVtmH4=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod
h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod
h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
@@ -10,8 +8,6 @@ golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod
h1:RxMgew5VJxzue5/jJ
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod
h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
-golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e
h1:aZzprAO9/8oim3qStq3wc1Xuxx4QmAGriC4VU4ojemQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod
h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod
h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
-golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898
h1:/atklqdjdhuosWIl6AIbOeHJjicWYPqR9bpxqxYG2pA=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod
h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
diff --git a/test/go/genmock.sh b/test/go/genmock.sh
index 27cd0c4..4958783 100644
--- a/test/go/genmock.sh
+++ b/test/go/genmock.sh
@@ -4,7 +4,6 @@ set -e
export GOPATH=$(mktemp -d -t gopath-XXXXXXXXXX)
-# TODO: Once we dropped support to go 1.15, add "@v1.5.0" suffix to go install
GO111MODULE=on go install -mod=mod github.com/golang/mock/mockgen
`go env GOPATH`/bin/mockgen -build_flags "-mod=mod"
-destination=src/common/mock_handler.go -package=common
github.com/apache/thrift/test/go/src/gen/thrifttest ThriftTest