summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames E. King III <jking@apache.org>2018-03-06 15:11:01 -0500
committerJames E. King III <jking@apache.org>2018-03-06 16:16:45 -0500
commita37feafd42543b9a4b3192a4a9478b93e7308a24 (patch)
tree1f41be7038072646df5af2d8597bcf9c235da997
parent14991f904184cc57b5d3e74a4266a0d6fbaf4832 (diff)
downloadthrift-a37feafd42543b9a4b3192a4a9478b93e7308a24.tar.gz
THRIFT-4508: end trusty CI builds; handle nodejs 4.x LTS EOL; update docs
-rw-r--r--.travis.yml11
-rw-r--r--LANGUAGES.md38
-rw-r--r--build/docker/README.md97
-rw-r--r--build/docker/ubuntu-artful/Dockerfile1
-rw-r--r--build/docker/ubuntu-xenial/Dockerfile13
-rw-r--r--lib/nodejs/README.md2
-rw-r--r--package.json14
7 files changed, 82 insertions, 94 deletions
diff --git a/.travis.yml b/.travis.yml
index 4eb2924d4..2816facc9 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -57,11 +57,6 @@ jobs:
- stage: docker
script: true
env:
- - JOB="Docker Build ubuntu-trusty 14.04"
- - DISTRO=ubuntu-trusty
- - TRAVIS_BUILD_STAGE=docker
- - script: true
- env:
- JOB="Docker Build ubuntu-xenial 16.04"
- DISTRO=ubuntu-xenial
- TRAVIS_BUILD_STAGE=docker
@@ -159,12 +154,6 @@ jobs:
- DISTRO=ubuntu-xenial
- SCRIPT="autotools.sh"
- - script: build/docker/run.sh
- env:
- - JOB="Autotools (Ubuntu Trusty)"
- - DISTRO=ubuntu-trusty
- - SCRIPT="autotools.sh"
-
# ------------------------- phase: dist -------------------------
- script: build/docker/run.sh
env:
diff --git a/LANGUAGES.md b/LANGUAGES.md
index de37680e4..c99c45791 100644
--- a/LANGUAGES.md
+++ b/LANGUAGES.md
@@ -1,12 +1,12 @@
# Apache Thrift Language Support #
-Last Modified: 2018-03-05
+Last Modified: 2018-03-06
Thrift supports many programming languages and has an impressive test suite that exercises most of the languages, protocols, and transports that represents a matrix of thousands of possible combinations. Each language typically has a minimum required version as well as support libraries - some mandatory and some optional. All of this information is provided below to help you assess whether you can use Apache Thrift with your project. Obviously this is a complex matrix to maintain and may not be correct in all cases - if you spot an error please inform the developers using the mailing list.
-Apache Thrift has a choice of two build systems. The `autoconf` build system is the most complete build and is used to build all supported languages. The `cmake` build system has been designated by the project to replace `autoconf` however this transition will take quite some time to complete.
+Apache Thrift has a choice of two build systems. The `autoconf` build system is the most complete build and is used to build all supported languages. The `cmake` build system has been designated by the project to replace `autoconf` however this transition will take quite some time to complete.
-The Language/Library Levels indicate the minimum and maximum versions that are used in the [continuous integration environments](build/docker/README.md) (Appveyor, Travis) for Apache Thrift. Note that while a language may contain support for protocols, transports, and servers, the extent to which each is tested as part of the overall build process varies. The definitive integration test for the project is called the "cross" test which executes a test matrix with clients and servers communicating across languages.
+The Language/Library Levels indicate the minimum and maximum versions that are used in the [continuous integration environments](build/docker/README.md) (Appveyor, Travis) for Apache Thrift. Other language levels may be supported for each language, however tested less thoroughly; check the README file inside each lib directory for additional details. Note that while a language may contain support for protocols, transports, and servers, the extent to which each is tested as part of the overall build process varies. The definitive integration test for the project is called the "cross" test which executes a test matrix with clients and servers communicating across languages.
<table style="font-size: 60%; padding: 1px;">
<thead>
@@ -14,7 +14,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<th rowspan=2>Language</th>
<th rowspan=2 align=center>Since</th>
<th colspan=2 align=center>Build Systems</th>
-<th colspan=2 align=center>Lang/Lib Levels</th>
+<th colspan=2 align=center>Lang/Lib Levels (Tested)</th>
<th colspan=6 align=center>Low-Level Transports</th>
<th colspan=3 align=center>Transport Wrappers</th>
<th colspan=4 align=center>Protocols</th>
@@ -46,7 +46,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/c_glib/README.md">C (glib)</a></td>
<!-- Since -----------------><td>0.6.0</td>
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
-<!-- Language Levels -------><td>2.40.2</td><td>2.54.0</td>
+<!-- Language Levels -------><td>2.48.2</td><td>2.54.0</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/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/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/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
@@ -101,7 +101,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/d/README.md">Dlang</a></td>
<!-- Since -----------------><td>0.9.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>2.070.2</td><td>2.077.1</td>
+<!-- Language Levels -------><td>2.073.2</td><td>2.077.1</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/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>
<!-- 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>
<!-- 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/cred.png" alt=""/></td>
@@ -112,7 +112,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/dart/README.md">Dart</a></td>
<!-- Since -----------------><td>0.10.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.20.1</td><td>1.24.3</td>
+<!-- Language Levels -------><td>1.22.1</td><td>1.24.3</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/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>
@@ -134,7 +134,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/netcore/README.md">.NET Core</a></td>
<!-- Since -----------------><td>0.11.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>2.0.0</td><td>2.1.4</td>
+<!-- Language Levels -------><td colspan=2>2.1.4</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/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>
<!-- 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>
@@ -145,7 +145,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/erl/README.md">Erlang</a></td>
<!-- Since -----------------><td>0.3.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>R16B03</td><td>20.0.4</td>
+<!-- Language Levels -------><td>18.3</td><td>20.0.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/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/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>
@@ -156,7 +156,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="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.2.1</td><td>1.8.3</td>
+<!-- Language Levels -------><td>1.6.2</td><td>1.8.3</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>
<!-- 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>
@@ -167,7 +167,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/hs/README.md">Haskell</a></td>
<!-- Since -----------------><td>0.5.0</td>
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
-<!-- Language Levels -------><td>7.6.3</td><td>8.0.2</td>
+<!-- Language Levels -------><td>7.10.3</td><td>8.0.2</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/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/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/cred.png" alt=""/></td>
@@ -189,7 +189,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/java/README.md">Java (SE)</a></td>
<!-- Since -----------------><td>0.2.0</td>
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
-<!-- Language Levels -------><td>1.7.0_151</td><td>1.8.0_151</td>
+<!-- Language Levels -------><td colspan=2>1.8.0_151</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/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>
<!-- 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>
@@ -233,7 +233,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/nodejs/README.md">node.js</a></td>
<!-- Since -----------------><td>0.6.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>4.2.6</td><td>8.9.4</td>
+<!-- Language Levels -------><td>6.x</td><td>8.x</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/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/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/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>
@@ -255,7 +255,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/perl/README.md">Perl</a></td>
<!-- Since -----------------><td>0.2.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>5.18.2</td><td>5.26.0</td>
+<!-- Language Levels -------><td>5.22.1</td><td>5.26.0</td>
<!-- Low-Level Transports --><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/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/cred.png" alt=""/></td>
<!-- Protocols -------------><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>
@@ -266,7 +266,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/php/README.md">PHP</a></td>
<!-- Since -----------------><td>0.2.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>5.5.9</td><td>7.1.8</td>
+<!-- Language Levels -------><td>7.0.22</td><td>7.1.8</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/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>
@@ -277,7 +277,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/py/README.md">Python</a></td>
<!-- Since -----------------><td>0.2.0</td>
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
-<!-- Language Levels -------><td>2.7.6, 3.4.3</td><td>2.7.14, 3.6.3</td>
+<!-- Language Levels -------><td>2.7.12, 3.5.2</td><td>2.7.14, 3.6.3</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/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/cgrn.png" alt="Yes"/></td>
<!-- Transport Wrappers ----><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>
@@ -288,7 +288,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/rb/README.md">Ruby</a></td>
<!-- Since -----------------><td>0.2.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.9.3p484</td><td>2.3.3p222</td>
+<!-- Language Levels -------><td>2.3.1p112</td><td>2.3.3p222</td>
<!-- Low-Level Transports --><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/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/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>
@@ -299,7 +299,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
<td align=left><a href="lib/rs/README.md">Rust</a></td>
<!-- Since -----------------><td>0.11.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.15.1</td><td>1.21.0</td>
+<!-- Language Levels -------><td>1.17.0</td><td>1.21.0</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/cred.png" alt=""/></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/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/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
@@ -332,7 +332,7 @@ The Language/Library Levels indicate the minimum and maximum versions that are u
</tr>
<tr>
<th colspan=2 align=center>Build Systems</th>
-<th colspan=2 align=center>Lang/Lib Levels</th>
+<th colspan=2 align=center>Lang/Lib Levels (Tested)</th>
<th colspan=6 align=center>Low-Level Transports</th>
<th colspan=3 align=center>Transport Wrappers</th>
<th colspan=4 align=center>Protocols</th>
diff --git a/build/docker/README.md b/build/docker/README.md
index 35943e1ca..d7a012659 100644
--- a/build/docker/README.md
+++ b/build/docker/README.md
@@ -31,9 +31,8 @@ The Travis CI (continuous integration) builds use the Ubuntu Trusty, Xenial, and
### Ubuntu ###
-* trusty (legacy)
* xenial (stable)
-* artful (latest)
+* artful (current)
## Unsupported Containers ##
@@ -115,55 +114,55 @@ Open a command prompt in the image:
Last updated: October 1, 2017
-| Tool | ubuntu-trusty | ubuntu-xenial | ubuntu-artful | Notes |
-| :-------- | :------------ | :------------ | :------------ | :---- |
-| ant | 1.9.3 | 1.9.6 | 1.9.9 | |
-| autoconf | 2.69 | 2.69 | 2.69 | |
-| automake | 1.14.1 | 1.15 | 1.15 | |
-| bison | 3.0.2 | 3.0.4 | 3.0.4 | |
-| boost | 1.54.0 | 1.58.0 | 1.63.0 | artful: stock boost 1.62.0 has problems running unit tests |
-| cmake | 3.2.2 | 3.5.1 | 3.9.1 | |
-| cppcheck | 1.61 | 1.72 | 1.80 | |
-| flex | 2.5.35 | 2.6.0 | 2.6.1 | |
-| glibc | 2.19 | 2.23 | 2.26 | |
-| libevent | 2.0.21 | 2.0.21 | 2.1 | |
-| libstdc++ | 4.8.4 | 5.4.0 | 7.2.0 | |
-| make | 3.81 | 4.1 | 4.1 | |
-| openssl | 1.0.1f | 1.0.2g | 1.0.2g | |
-| qt5 | 5.2.1 | 5.5.1 | 5.9.1 | |
+| Tool | ubuntu-xenial | ubuntu-artful | Notes |
+| :-------- | :------------ | :------------ | :---- |
+| ant | 1.9.6 | 1.9.9 | |
+| autoconf | 2.69 | 2.69 | |
+| automake | 1.15 | 1.15 | |
+| bison | 3.0.4 | 3.0.4 | |
+| boost | 1.58.0 | 1.63.0 | artful: stock boost 1.62.0 has problems running unit tests |
+| cmake | 3.5.1 | 3.9.1 | |
+| cppcheck | 1.72 | 1.80 | |
+| flex | 2.6.0 | 2.6.1 | |
+| glibc | 2.23 | 2.26 | |
+| libevent | 2.0.21 | 2.1 | |
+| libstdc++ | 5.4.0 | 7.2.0 | |
+| make | 4.1 | 4.1 | |
+| openssl | 1.0.2g | 1.0.2g | |
+| qt5 | 5.5.1 | 5.9.1 | |
## Compiler/Language Versions per Dockerfile ##
-| Language | ubuntu-trusty | ubuntu-xenial | ubuntu-artful | Notes |
-| :-------- | :------------ | :------------ | :------------ | :---- |
-| as of | Oct 01, 2017 | Jan 29, 2018 | Mar 02, 2018 | |
-| as3 | | | | Not in CI |
-| C++ gcc | 4.8.4 | 5.4.0 | 7.2.0 | |
-| C++ clang | 3.4 | 3.8 | 4.0 | |
-| C# (mono) | 3.2.8.0 | 4.2.1.0 | 4.6.2.7 | |
-| c_glib | 2.40.2 | 2.48.2 | 2.54.0 | |
-| CL (sbcl) | | | 1.4.4 | |
-| cocoa | | | | Not in CI |
-| d | 2.070.2 | 2.073.2 | 2.077.1 | |
-| dart | 1.20.1 | 1.22.1 | 1.24.3 | |
-| delphi | | | | Not in CI |
-| dotnet | | 2.1.4 | 2.1.4 | v2.1.4 SDK uses v2.0.5 Runtime |
-| 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.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.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 | |
-| python | 2.7.6 | 2.7.12 | 2.7.14 | |
-| python3 | 3.4.3 | 3.5.2 | 3.6.3 | |
-| ruby | 1.9.3p484 | 2.3.1p112 | 2.3.3p222 | |
-| rust | 1.15.1 | 1.17.0 | 1.21.0 | |
-| smalltalk | | | | Not in CI |
-| swift | | | | Not in CI |
+| Language | ubuntu-xenial | ubuntu-artful | Notes |
+| :-------- | :------------ | :------------ | :---- |
+| as of | Mar 06, 2018 | Mar 06, 2018 | |
+| as3 | | | Not in CI |
+| C++ gcc | 5.4.0 | 7.2.0 | |
+| C++ clang | 3.8 | 4.0 | |
+| C# (mono) | 4.2.1.0 | 4.6.2.7 | |
+| c_glib | 2.48.2 | 2.54.0 | |
+| CL (sbcl) | | 1.4.4 | |
+| cocoa | | | Not in CI |
+| d | 2.073.2 | 2.077.1 | |
+| dart | 1.22.1 | 1.24.3 | |
+| delphi | | | Not in CI |
+| dotnet | 2.1.4 | 2.1.4 | v2.1.4 SDK uses v2.0.5 Runtime |
+| erlang | 18.3 | 20.0.4 | |
+| go | 1.6.2 | 1.8.3 | |
+| haskell | 7.10.3 | 8.0.2 | |
+| haxe | 3.2.1 | 3.4.4 | THRIFT-4352: avoid 3.4.2 |
+| java | 1.8.0_151 | 1.8.0_151 | |
+| js | | | Unsure how to look for version info? |
+| lua | 5.2.4 | 5.2.4 | Lua 5.3: see THRIFT-4386 |
+| nodejs | 6.13.0 | 8.9.4 | |
+| ocaml | 4.02.3 | 4.04.0 | |
+| perl | 5.22.1 | 5.26.0 | |
+| php | 7.0.22 | 7.1.11 | |
+| python | 2.7.12 | 2.7.14 | |
+| python3 | 3.5.2 | 3.6.3 | |
+| ruby | 2.3.1p112 | 2.3.3p222 | |
+| rust | 1.17.0 | 1.21.0 | |
+| smalltalk | | | Not in CI |
+| swift | | | Not in CI |
diff --git a/build/docker/ubuntu-artful/Dockerfile b/build/docker/ubuntu-artful/Dockerfile
index 0b5b8ed44..416d75e6c 100644
--- a/build/docker/ubuntu-artful/Dockerfile
+++ b/build/docker/ubuntu-artful/Dockerfile
@@ -19,6 +19,7 @@
# - 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>
diff --git a/build/docker/ubuntu-xenial/Dockerfile b/build/docker/ubuntu-xenial/Dockerfile
index b37434bb7..b69d7ea86 100644
--- a/build/docker/ubuntu-xenial/Dockerfile
+++ b/build/docker/ubuntu-xenial/Dockerfile
@@ -15,12 +15,9 @@
# Using all stock Ubuntu Xenial packaging except for:
# - d: does not come with Ubuntu so we're installing 2.073.2 for coverage
# - dart: does not come with Ubuntu so we're installing 1.22.1 for coverage
+# - nodejs: Ubuntu comes with 4.2.6 which exits LTS April 2018, so we're installing 6.x
#
-#
-# Known missing or disabled libraries:
-# - d: deimos for libevent and openssl omitted - not compatible / build errors
-
FROM buildpack-deps:xenial-scm
MAINTAINER Apache Thrift <dev@thrift.apache.org>
ENV DEBIAN_FRONTEND noninteractive
@@ -58,6 +55,10 @@ RUN curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /et
echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod xenial 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_6.x xenial 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` \
@@ -173,9 +174,7 @@ RUN apt-get install -y --no-install-recommends \
RUN apt-get install -y --no-install-recommends \
`# Node.js dependencies` \
- nodejs \
- npm && \
- ln -s /usr/bin/nodejs /usr/bin/node
+ nodejs
RUN apt-get install -y --no-install-recommends \
`# OCaml dependencies` \
diff --git a/lib/nodejs/README.md b/lib/nodejs/README.md
index 8c25380d1..5b15ce647 100644
--- a/lib/nodejs/README.md
+++ b/lib/nodejs/README.md
@@ -22,7 +22,7 @@ under the License.
## Compatibility
-node version 4 or later is required
+node version 6 or later is required
## Install
diff --git a/package.json b/package.json
index cd6c7106c..11e76a214 100644
--- a/package.json
+++ b/package.json
@@ -37,19 +37,19 @@
"dependencies": {
"node-int64": "^0.4.0",
"q": "^1.5.0",
- "ws": ">= 2.2.3"
+ "ws": "^5.0.0"
},
"devDependencies": {
"buffer-equals": "^1.0.4",
- "commander": "^2.11.0",
- "connect": "^3.6.4",
+ "commander": "^2.14.1",
+ "connect": "^3.6.6",
"istanbul": "^0.4.5",
- "jsdoc": ">=3.5.5",
+ "jsdoc": "^3.5.5",
"minimatch": "^3.0.4",
- "phantomjs-prebuilt": "^2.1.7",
+ "phantomjs-prebuilt": "^2.1.16",
"run-browser": "^2.0.2",
- "tape": "^4.8.0",
- "utf-8-validate": "^3.0.0"
+ "tape": "^4.9.0",
+ "utf-8-validate": "^4.0.0"
},
"scripts": {
"cover": "lib/nodejs/test/testAll.sh COVER",