summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuxuan 'fishy' Wang <yuxuan.wang@reddit.com>2022-08-02 11:31:14 -0700
committerYuxuan 'fishy' Wang <fishywang@gmail.com>2022-08-02 22:19:43 -0700
commit3f9b7d0da2d6f41b57cd636fa3b6067737befe4c (patch)
tree7775b5f5eb0e2711331eeb340eeb6b4e6378bec7
parent892b6731eedcf81e6ba9627327676cddb009fc07 (diff)
downloadthrift-3f9b7d0da2d6f41b57cd636fa3b6067737befe4c.tar.gz
Update supported go version to 1.18.* and 1.19.*
Client: go Also provide generic version of Pointer helper function.
-rw-r--r--LANGUAGES.md2
-rw-r--r--build/docker/ubuntu-bionic/Dockerfile4
-rw-r--r--build/docker/ubuntu-disco/Dockerfile4
-rw-r--r--build/docker/ubuntu-xenial/Dockerfile4
-rw-r--r--go.mod2
-rw-r--r--lib/go/test/fuzz/go.mod2
-rw-r--r--lib/go/thrift/pointerize.go6
7 files changed, 15 insertions, 9 deletions
diff --git a/LANGUAGES.md b/LANGUAGES.md
index 76c2513f1..f787b93a8 100644
--- a/LANGUAGES.md
+++ b/LANGUAGES.md
@@ -163,7 +163,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.17.9</td><td>1.18.1</td>
+<!-- Language Levels -------><td>1.18.5</td><td>1.19</td>
<!-- Field types -----------><td><img src="doc/images/cred.png" alt=""/></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/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 4518df7d5..54b384ea8 100644
--- a/build/docker/ubuntu-bionic/Dockerfile
+++ b/build/docker/ubuntu-bionic/Dockerfile
@@ -132,9 +132,9 @@ RUN apt-get install -y --no-install-recommends \
libglib2.0-dev
# golang
-ENV GOLANG_VERSION 1.18.1
+ENV GOLANG_VERSION 1.19
ENV GOLANG_DOWNLOAD_URL https://go.dev/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
-ENV GOLANG_DOWNLOAD_SHA256 b3b815f47ababac13810fc6021eb73d65478e0b2db4b09d348eefad9581a2334
+ENV GOLANG_DOWNLOAD_SHA256 464b6b66591f6cf055bc5df90a9750bf5fbc9d038722bb84a9d56a2bea974be6
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 c6598f74e..ee3f19ff4 100644
--- a/build/docker/ubuntu-disco/Dockerfile
+++ b/build/docker/ubuntu-disco/Dockerfile
@@ -131,9 +131,9 @@ RUN apt-get install -y --no-install-recommends \
libglib2.0-dev
# golang
-ENV GOLANG_VERSION 1.18.1
+ENV GOLANG_VERSION 1.19
ENV GOLANG_DOWNLOAD_URL https://go.dev/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
-ENV GOLANG_DOWNLOAD_SHA256 b3b815f47ababac13810fc6021eb73d65478e0b2db4b09d348eefad9581a2334
+ENV GOLANG_DOWNLOAD_SHA256 464b6b66591f6cf055bc5df90a9750bf5fbc9d038722bb84a9d56a2bea974be6
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 7c523b42f..aec9bd32f 100644
--- a/build/docker/ubuntu-xenial/Dockerfile
+++ b/build/docker/ubuntu-xenial/Dockerfile
@@ -136,9 +136,9 @@ RUN apt-get install -y --no-install-recommends \
libglib2.0-dev
# golang
-ENV GOLANG_VERSION 1.17.9
+ENV GOLANG_VERSION 1.18.5
ENV GOLANG_DOWNLOAD_URL https://go.dev/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
-ENV GOLANG_DOWNLOAD_SHA256 9dacf782028fdfc79120576c872dee488b81257b1c48e9032d122cfdb379cca6
+ENV GOLANG_DOWNLOAD_SHA256 9e5de37f9c49942c601b191ac5fba404b868bfc21d446d6960acc12283d6e5f2
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 d620e5e32..2d3d1c662 100644
--- a/go.mod
+++ b/go.mod
@@ -1,5 +1,5 @@
module github.com/apache/thrift
-go 1.16
+go 1.18
require github.com/golang/mock v1.5.0
diff --git a/lib/go/test/fuzz/go.mod b/lib/go/test/fuzz/go.mod
index 3cefa0204..c9ef373fc 100644
--- a/lib/go/test/fuzz/go.mod
+++ b/lib/go/test/fuzz/go.mod
@@ -1,6 +1,6 @@
module github.com/apache/thrift/lib/go/test/fuzz
-go 1.16
+go 1.18
replace github.com/apache/thrift => ../../../../
diff --git a/lib/go/thrift/pointerize.go b/lib/go/thrift/pointerize.go
index fb564ea81..e200c68b6 100644
--- a/lib/go/thrift/pointerize.go
+++ b/lib/go/thrift/pointerize.go
@@ -19,6 +19,12 @@
package thrift
+// Pointer is the generic (type parameter) version of the helper function that
+// converts types to pointer types.
+func Pointer[T any](v T) *T {
+ return &v
+}
+
///////////////////////////////////////////////////////////////////////////////
// This file is home to helpers that convert from various base types to
// respective pointer types. This is necessary because Go does not permit