-sudo: required
-
-language: node
-
-services:
- - docker
-
-# matrix layout based on:
-# https://github.com/libressl-portable/portable/blob/9e090286b55def5ca2c0cc375c65023a70d8796e/.travis.yml
-
-matrix:
- include:
- - env: IMPL=awk
- - env: IMPL=bash
- - env: IMPL=c
- - env: IMPL=cpp
- - env: IMPL=coffee
- - env: IMPL=cs
- - env: IMPL=clojure
- - env: IMPL=crystal
- - env: IMPL=elixir
- - env: IMPL=erlang NO_PERF=1 # perf runs out of memory
- - env: IMPL=es6
- - env: IMPL=factor
- - env: IMPL=forth
- - env: IMPL=fsharp
- - env: IMPL=go
- - env: IMPL=groovy
- - env: IMPL=guile
- - env: IMPL=haskell
- - env: IMPL=java
- - env: IMPL=js
- - env: IMPL=julia
- - env: IMPL=kotlin
- - env: IMPL=lua
- - env: IMPL=make
- - env: IMPL=mal BUILD_IMPL=js NO_PERF=1
- #- env: IMPL=matlab # licensed (until port to Octave)
- - env: IMPL=miniMAL BUILD_IMPL=js
- - env: IMPL=nim
- - env: IMPL=ocaml
- - env: IMPL=perl
- - env: IMPL=php
- - env: IMPL=ps
- - env: IMPL=python
- - env: IMPL=r
- - env: IMPL=racket
- - env: IMPL=rpython
- - env: IMPL=ruby
- - env: IMPL=rust
- - env: IMPL=scala
- - env: IMPL=swift NO_DOCKER=1
- os: osx
- osx_image: xcode7
- - env: IMPL=vimscript NO_PERF=1 # /dev/stdout not writable
- - env: IMPL=vb
-
-script:
- # Build
- - ./.travis_build.sh
-
- # Regular tests
- - ./.travis_test.sh test ${IMPL}
- - cat test.err || true
-
- # NOTE: use self-host-test branch
- # Self-hosted tests
- #- ./.travis_test.sh test mal ${IMPL}
- #- cat test.err || true; rm -f test.err
-
- # Performance tests
- - if [ -z "${NO_PERF}" ]; then ./.travis_test.sh perf ${IMPL}; fi
- - cat perf.err || true
+sudo: required
+
+# matrix layout based on:
+# https://github.com/libressl-portable/portable/blob/9e090286b55def5ca2c0cc375c65023a70d8796e/.travis.yml
+
+matrix:
+ include:
+ - {env: IMPL=ada, services: [docker]}
+ - {env: IMPL=awk, services: [docker]}
+ - {env: IMPL=bash, services: [docker]}
+ - {env: IMPL=basic, services: [docker]}
+ - {env: IMPL=c, services: [docker]}
+ - {env: IMPL=cpp, services: [docker]}
+ - {env: IMPL=coffee, services: [docker]}
+ - {env: IMPL=cs, services: [docker]}
+ - {env: IMPL=chuck, services: [docker]}
+ - {env: IMPL=clojure clojure_MODE=clj, services: [docker]}
+ - {env: IMPL=clojure clojure_MODE=cljs, services: [docker]}
+ - {env: IMPL=common-lisp, services: [docker]}
+ - {env: IMPL=crystal, services: [docker]}
+ - {env: IMPL=d, services: [docker]}
+ - {env: IMPL=dart, services: [docker]}
+ - {env: IMPL=elisp, services: [docker]}
+ - {env: IMPL=elixir, services: [docker]}
+ - {env: IMPL=elm, services: [docker]}
+ - {env: IMPL=erlang NO_PERF=1, services: [docker]} # perf runs out of memory
+ - {env: IMPL=es6, services: [docker]}
+ - {env: IMPL=factor, services: [docker]}
+ - {env: IMPL=forth, services: [docker]}
+ - {env: IMPL=fsharp, services: [docker]}
+ - {env: IMPL=go, services: [docker]}
+ - {env: IMPL=groovy, services: [docker]}
+ - {env: IMPL=gst, services: [docker]}
+ - {env: IMPL=guile, services: [docker]}
+ - {env: IMPL=haskell, services: [docker]}
+ - {env: IMPL=haxe haxe_MODE=neko, services: [docker]}
+ - {env: IMPL=haxe haxe_MODE=python, services: [docker]}
+ - {env: IMPL=haxe haxe_MODE=cpp, services: [docker]}
+ - {env: IMPL=haxe haxe_MODE=js, services: [docker]}
+ - {env: IMPL=io, services: [docker]}
+ - {env: IMPL=java, services: [docker]}
+ - {env: IMPL=js, services: [docker]}
+ - {env: IMPL=julia, services: [docker]}
+ - {env: IMPL=kotlin, services: [docker]}
+ - {env: IMPL=livescript, services: [docker]}
+ - {env: IMPL=logo, services: [docker]}
+ - {env: IMPL=lua, services: [docker]}
+ - {env: IMPL=make, services: [docker]}
+ - {env: IMPL=mal BUILD_IMPL=js NO_PERF=1, services: [docker]}
+ - {env: IMPL=matlab, services: [docker]} # Uses Octave
+ - {env: IMPL=miniMAL, services: [docker]}
+ - {env: IMPL=nim, services: [docker]}
+ - {env: IMPL=objpascal, services: [docker]}
+ - {env: IMPL=objc NO_DOCKER=1, os: osx, osx_image: xcode7}
+ - {env: IMPL=objc, services: [docker]}
+ - {env: IMPL=ocaml, services: [docker]}
+ - {env: IMPL=perl, services: [docker]}
+ - {env: IMPL=perl6, services: [docker]}
+ - {env: IMPL=php, services: [docker]}
+ - {env: IMPL=pil, services: [docker]}
+ - {env: IMPL=plpgsql, services: [docker]}
+# - {env: IMPL=plsql, services: [docker]}
+ - {env: IMPL=ps, services: [docker]}
+ - {env: IMPL=powershell, services: [docker]}
+ - {env: IMPL=python python_MODE=python2, services: [docker]}
+ - {env: IMPL=python python_MODE=python3, services: [docker]}
+ - {env: IMPL=r, services: [docker]}
+ - {env: IMPL=racket, services: [docker]}
+ - {env: IMPL=rexx, services: [docker]}
+ - {env: IMPL=rpython, services: [docker]}
+ - {env: IMPL=ruby, services: [docker]}
+ - {env: IMPL=rust, services: [docker]}
+ - {env: IMPL=scala, services: [docker]}
+ - {env: IMPL=skew, services: [docker]}
+ - {env: IMPL=swift NO_DOCKER=1, os: osx, osx_image: xcode7}
+ - {env: IMPL=swift3, services: [docker]}
+ - {env: IMPL=swift3 NO_DOCKER=1, os: osx, osx_image: xcode8}
+ - {env: IMPL=tcl, services: [docker]}
+ - {env: IMPL=ts, services: [docker]}
+ - {env: IMPL=vb, services: [docker]}
+ - {env: IMPL=vhdl, services: [docker]}
+ - {env: IMPL=vimscript, services: [docker]}
+
+script:
+ # Build
+ - ./.travis_build.sh
+
+ # Regular tests
+ - ./.travis_test.sh test ${IMPL}
+ - cat test.err || true
+
+ # NOTE: use self-host-test branch
+ # Self-hosted tests
+ #- ./.travis_test.sh test mal ${IMPL}
+ #- cat test.err || true; rm -f test.err
+
+ # Performance tests
+ - if [ -z "${NO_PERF}" ]; then ./.travis_test.sh perf ${IMPL}; fi
+ - cat perf.err || true