Update language levels, fix erlang and rust in CI
- Include rebar3 in docker image so erlang builds in CI
- Include the correct path in docker image so rust builds in CI
- Updated common lisp (sbcl) to 1.5.3 in docker image
- Updated dlang to 2.087.0 in docker image
- Updated dart to 2.0.0 in xenial docker image
- Updated dart to 2.4.0 in bionic docker image
- Updated erlang to 22.0 in docker image
- Updated openjdk to 11.0.3 in docker image
- Updated node.js to 10.16 in docker image
- Updated rust to 1.34.0 in xenial docker image
- Updated rust to 1.35.0 in bionic docker image
THRIFT-4905: Disable hanging experimental dlang async ssl test
diff --git a/build/docker/ubuntu-xenial/Dockerfile b/build/docker/ubuntu-xenial/Dockerfile
index 119d4cd..8dc6497 100644
--- a/build/docker/ubuntu-xenial/Dockerfile
+++ b/build/docker/ubuntu-xenial/Dockerfile
@@ -14,7 +14,7 @@
# Apache Thrift Docker build environment for Ubuntu Xenial
# Using all stock Ubuntu Xenial packaging except for:
# - d: does not come with Ubuntu so we're installing 2.075.1 for coverage
-# - dart: does not come with Ubuntu so we're installing 1.24.3 for coverage
+# - dart: does not come with Ubuntu so we're installing 2.0.0-1 for coverage
# - dotnet: does not come with Ubuntu
# - go: Xenial comes with 1.6, but we need 1.10 or later
# - nodejs: Xenial comes with 4.2.6 which exits LTS April 2018, so we're installing 6.x
@@ -35,29 +35,29 @@
apt-utils \
curl \
software-properties-common \
- wget
+ wget && \
# csharp (mono)
-# RUN echo "deb http://download.mono-project.com/repo/debian xenial main" | tee /etc/apt/sources.list.d/mono.list && \
-# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A6A19B38D3D831EF
+# echo "deb http://download.mono-project.com/repo/debian xenial main" | tee /etc/apt/sources.list.d/mono.list && \
+# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A6A19B38D3D831EF && \
# D
-RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EBCF975E5BA24D5E && \
+ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EBCF975E5BA24D5E && \
wget http://master.dl.sourceforge.net/project/d-apt/files/d-apt.list -O /etc/apt/sources.list.d/d-apt.list && \
- wget -qO - https://dlang.org/d-keyring.gpg | apt-key add -
+ wget -qO - https://dlang.org/d-keyring.gpg | apt-key add - && \
# Dart
-RUN curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \
+ curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \
curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > \
- /etc/apt/sources.list.d/dart_stable.list
+ /etc/apt/sources.list.d/dart_stable.list && \
# dotnet (core)
-RUN curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /etc/apt/trusted.gpg.d/microsoft.gpg && \
+ curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /etc/apt/trusted.gpg.d/microsoft.gpg && \
echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod xenial main" > \
- /etc/apt/sources.list.d/dotnetdev.list
+ /etc/apt/sources.list.d/dotnetdev.list && \
# node.js
-RUN curl -sL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \
+ curl -sL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \
echo "deb https://deb.nodesource.com/node_6.x xenial main" | tee /etc/apt/sources.list.d/nodesource.list
### install general dependencies
@@ -119,7 +119,7 @@
mv openssl-1.1.6-1.0.1g/C/* /usr/include/dmd/druntime/import/C/ && \
rm -rf openssl-1.1.6-1.0.1g
-ENV DART_VERSION 1.24.3-1
+ENV DART_VERSION 2.0.0-1
RUN apt-get install -y --no-install-recommends \
`# Dart dependencies` \
dart=$DART_VERSION
@@ -151,7 +151,7 @@
ln -s /usr/local/go/bin/go /usr/local/bin && \
rm golang.tar.gz
-# due to a bug in cabal in xenial (cabal-install package) we pull in another:
+# cabal 1.22 in xenial is too old so we grab a pre-built 1.24 binary
RUN apt-get install -y --no-install-recommends \
`# Haskell dependencies` \
ghc && \
@@ -160,7 +160,8 @@
tar xzf cabal-install-1.24.0.2-x86_64-unknown-linux.tar.gz && \
find dist-newstyle/ -type f -name cabal -exec mv {} /usr/bin \; && \
rm -rf /tmp/cabal* && \
- cabal --version
+ cabal --version && \
+ cabal update
RUN apt-get install -y --no-install-recommends \
`# Haxe dependencies` \
@@ -179,10 +180,11 @@
openjdk-8-jdk \
maven
-RUN apt-get install -y --no-install-recommends \
-`# Lua dependencies` \
- lua5.2 \
- lua5.2-dev
+# disabled: same as ubuntu-bionic jobs
+# RUN apt-get install -y --no-install-recommends \
+# `# Lua dependencies` \
+# lua5.2 \
+# lua5.2-dev
# https://bugs.launchpad.net/ubuntu/+source/lua5.3/+bug/1707212
# lua5.3 does not install alternatives so stick with 5.2 here
@@ -255,7 +257,7 @@
ruby-bundler
# Rust dependencies
-RUN curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.35.0 -y
+RUN curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.34.0 -y
# Clean up
RUN rm -rf /var/cache/apt/* && \