diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | .travis.yml | 15 | ||||
-rw-r--r-- | LANGUAGES.md | 2 | ||||
-rw-r--r-- | build/docker/README.md | 4 | ||||
-rwxr-xr-x | build/docker/scripts/autotools.sh | 4 | ||||
-rwxr-xr-x | build/docker/scripts/sca.sh | 7 | ||||
-rw-r--r-- | build/docker/ubuntu-artful/Dockerfile | 46 | ||||
-rwxr-xr-x[-rw-r--r--] | test/haxe/make_all.sh | 2 |
8 files changed, 40 insertions, 41 deletions
diff --git a/.gitignore b/.gitignore index dc9306c31..03e3e9e61 100644 --- a/.gitignore +++ b/.gitignore @@ -227,6 +227,7 @@ project.lock.json /lib/erl/test/*.hrl /lib/erl/test/Thrift_omit_without.thrift /lib/haxe/test/bin +/lib/haxe/test/data.tmp /lib/hs/dist /lib/java/.gradle /lib/java/android/.gradle diff --git a/.travis.yml b/.travis.yml index 9a94e3649..9735f43e4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -43,7 +43,7 @@ env: global: - SCRIPT="cmake.sh" - BUILD_ARG="" - - BUILD_ENV="-e CC=clang -e CXX=clang++" + - BUILD_ENV="-e CC=gcc -e CXX=g++ -e THRIFT_CROSSTEST_CONCURRENCY=4" - DISTRO=ubuntu-xenial - BUILD_LIBS="CPP C_GLIB HASKELL JAVA PYTHON TESTING TUTORIALS" # only meaningful for CMake builds - TRAVIS_BUILD_STAGE=test @@ -87,8 +87,6 @@ jobs: env: - JOB="Cross Language Tests" - SCRIPT="cross-test.sh" - - BUILD_ARG="" - - BUILD_ENV="-e CC=clang -e CXX=clang++ -e THRIFT_CROSSTEST_CONCURRENCY=4" # fork based PR builds cannot exceed 50 minutes per job - stage: thrift @@ -98,7 +96,6 @@ jobs: - JOB="Cross Language Tests (Binary Protocol)" - SCRIPT="cross-test.sh" - BUILD_ARG="-'(binary)'" - - BUILD_ENV="-e CC=clang -e CXX=clang++ -e THRIFT_CROSSTEST_CONCURRENCY=4" - stage: thrift script: build/docker/run.sh @@ -107,7 +104,6 @@ jobs: - JOB="Cross Language Tests (Header, JSON Protocols)" - SCRIPT="cross-test.sh" - BUILD_ARG="-'(header|json)'" - - BUILD_ENV="-e CC=clang -e CXX=clang++ -e THRIFT_CROSSTEST_CONCURRENCY=4" - stage: thrift script: build/docker/run.sh @@ -116,7 +112,6 @@ jobs: - JOB="Cross Language Tests (Compact and Multiplexed Protocols)" - SCRIPT="cross-test.sh" - BUILD_ARG="-'(compact|multiplexed)'" - - BUILD_ENV="-e CC=clang -e CXX=clang++ -e THRIFT_CROSSTEST_CONCURRENCY=4" # ------------------------- phase: sca -------------------------- # QA jobs for code analytics and metrics @@ -149,7 +144,7 @@ jobs: - SCRIPT="cmake.sh" - BUILD_LIBS="CPP TESTING TUTORIALS" - BUILD_ARG="-DCMAKE_CXX_STANDARD=98 -DCMAKE_CXX_STANDARD_REQUIRED=ON -DCMAKE_CXX_EXTENSIONS=OFF --DWITH_BOOSTTHREADS=ON -DWITH_PYTHON=OFF -DWITH_C_GLIB=OFF -DWITH_JAVA=OFF -DWITH_HASKELL=OFF" - - BUILD_ENV="" + - BUILD_ENV="-e CC=clang -e CXX=clang++" - script: build/docker/run.sh env: @@ -166,31 +161,27 @@ jobs: - JOB="Autotools (Ubuntu Artful)" - DISTRO=ubuntu-artful - SCRIPT="autotools.sh" - - BUILD_ENV="-e CC=gcc -e CXX=g++" - script: build/docker/run.sh env: - JOB="Autotools (Ubuntu Xenial)" - DISTRO=ubuntu-xenial - SCRIPT="autotools.sh" - - BUILD_ENV="-e CC=gcc -e CXX=g++" - script: build/docker/run.sh env: - JOB="Autotools (Ubuntu Trusty)" - DISTRO=ubuntu-trusty - SCRIPT="autotools.sh" - - BUILD_ENV="-e CC=gcc -e CXX=g++" # ------------------------- phase: dist ------------------------- - script: build/docker/run.sh env: - JOB="make dist" - SCRIPT="make-dist.sh" - - BUILD_ENV="-e CC=gcc -e CXX=g++" - script: build/docker/run.sh env: - JOB="Debian Packages" - SCRIPT="dpkg.sh" - - BUILD_ENV="-e CC=gcc -e CXX=g++" + diff --git a/LANGUAGES.md b/LANGUAGES.md index 897494e5b..7f6194e9a 100644 --- a/LANGUAGES.md +++ b/LANGUAGES.md @@ -154,7 +154,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u <tr align=center> <td align=left><a href="lib/haxe/README.md">Haxe</a></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 colspan=2>3.2.1</td> +<!-- Language Levels -------><td>3.2.1</td><td>3.4.4</td> <!-- Low-Level Transports --><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/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></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/cred.png" alt=""/></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/README.md b/build/docker/README.md index f58e88ba0..bc6c36ab9 100644 --- a/build/docker/README.md +++ b/build/docker/README.md @@ -150,11 +150,11 @@ Last updated: October 1, 2017 | erlang | R16B03 | 18.3 | 20.0.4 | | | go | 1.2.1 | 1.6.2 | 1.8.3 | | | haskell | 7.6.3 | 7.10.3 | 8.0.2 | | -| haxe | | 3.2.1 | 3.4.2 | disabled in trusty builds - cores on install v3.0.0, disabled in artful builds - see THRIFT-4352 | +| haxe | | 3.2.1 | 3.4.4 | THRIFT-4352: avoid 3.4.2 | | java | 1.7.0_151 | 1.8.0_151 | 1.8.0_151 | | | js | | | | Unsure how to look for version info? | | lua | 5.1.5 | 5.2.4 | 5.2.4 | Lua 5.3: see THRIFT-4386 | -| nodejs | | 4.2.6 | 8.9.1 | trusty has node.js 0.10.0 which is too old | +| nodejs | | 4.2.6 | 8.9.4 | trusty has node.js 0.10.0 which is too old | | ocaml | | 4.02.3 | 4.04.0 | | | perl | 5.18.2 | 5.22.1 | 5.26.0 | | | php | 5.5.9 | 7.0.22 | 7.1.11 | | diff --git a/build/docker/scripts/autotools.sh b/build/docker/scripts/autotools.sh index 8388f728c..67e4f2d19 100755 --- a/build/docker/scripts/autotools.sh +++ b/build/docker/scripts/autotools.sh @@ -1,6 +1,10 @@ #!/bin/sh set -ev +# haxe hxcpp > 3.4.188 will enable c++11 by default, and break the +# build when compiling C files with clang++ by adding -std=c++11 +export HXCPP_NO_CPP11=1 + ./bootstrap.sh ./configure $* make check -j3 diff --git a/build/docker/scripts/sca.sh b/build/docker/scripts/sca.sh index c9a36686b..886548cf7 100755 --- a/build/docker/scripts/sca.sh +++ b/build/docker/scripts/sca.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash set -ev # @@ -50,8 +50,9 @@ flake8 --ignore=E501,E722 test/crossrunner flake8 test/features # PHP code style -composer install --quiet -./vendor/bin/phpcs +### causing build failures like https://travis-ci.org/apache/thrift/jobs/341109387 +### composer install --quiet +### ./vendor/bin/phpcs # TODO etc echo FIXMEs: `grep -r FIXME * | wc -l` diff --git a/build/docker/ubuntu-artful/Dockerfile b/build/docker/ubuntu-artful/Dockerfile index 4babc3f3e..d8e7e12f1 100644 --- a/build/docker/ubuntu-artful/Dockerfile +++ b/build/docker/ubuntu-artful/Dockerfile @@ -14,11 +14,11 @@ # Apache Thrift Docker build environment for Ubuntu Artful # Using all stock Ubuntu Artful packaging except for: # - cpp: stock boost 1.62 in artful has a nasty bug so we use stock boost 1.63 -# - d: does not come with Ubuntu so we're installing the latest -# - d: deimos for libevent and openssl omitted - not compatible / build errors -# - haxe: see THRIFT-4352, but test/haxe cores during testing -# and hxcpp 3.4.64 is not compatible with artful -# +# - d: dmd does not come with Ubuntu +# - dart: does not come with Ubuntu +# - dotnet: does not come with Ubuntu +# - haxe: version 3.4.2 that comes with Ubuntu cores in our CI build +# - nodejs: want v8, Ubuntu comes with v6 FROM buildpack-deps:artful-scm MAINTAINER Apache Thrift <dev@thrift.apache.org> @@ -41,15 +41,6 @@ RUN apt-get update && \ # 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 -# dotnet (core) -RUN 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-artful-prod artful main" > \ - /etc/apt/sources.list.d/dotnetdev.list - -# node.js -RUN curl -sL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - \ - echo "deb https://deb.nodesource.com/node_8.x artful main" | tee /etc/apt/sources.list.d/nodesource.list - # D RUN 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 && \ @@ -60,6 +51,18 @@ RUN 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 +# dotnet (netcore) +RUN 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-artful-prod artful main" > \ + /etc/apt/sources.list.d/dotnetdev.list + +# haxe (https://haxe.org/download/linux/) +RUN add-apt-repository ppa:haxe/releases -y + +# node.js +RUN curl -sL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - \ + echo "deb https://deb.nodesource.com/node_8.x artful main" | tee /etc/apt/sources.list.d/nodesource.list + ### install general dependencies RUN apt-get update && apt-get install -y --no-install-recommends \ `# General dependencies` \ @@ -146,14 +149,13 @@ RUN apt-get install -y --no-install-recommends \ ghc \ cabal-install -# see THRIFT-4352, test/haxe cores on artful -# RUN apt-get install -y --no-install-recommends \ -# `# Haxe dependencies` \ -# haxe \ -# neko \ -# neko-dev -# RUN haxelib setup --always /usr/share/haxe/lib && \ -# haxelib install --always hxcpp 2>&1 > /dev/null +RUN apt-get install -y --no-install-recommends \ +`# Haxe dependencies` \ + haxe \ + neko \ + neko-dev && \ + haxelib setup --always /usr/share/haxe/lib && \ + haxelib install --always hxcpp 2>&1 > /dev/null RUN apt-get install -y --no-install-recommends \ `# Java dependencies` \ diff --git a/test/haxe/make_all.sh b/test/haxe/make_all.sh index 262125877..eb2c9c2c7 100644..100755 --- a/test/haxe/make_all.sh +++ b/test/haxe/make_all.sh @@ -19,7 +19,7 @@ # # invoke Thrift comnpiler -thrift -r -gen haxe ../ThriftTest.thrift +../../compiler/cpp/thrift -r -gen haxe ../ThriftTest.thrift # output folder if [ ! -d bin ]; then |