From e35805cf3a30ff4052e879746bbfc4544813706c Mon Sep 17 00:00:00 2001
From: Niels <niels.lohmann@gmail.com>
Date: Fri, 29 Apr 2016 19:29:02 +0200
Subject: [PATCH 01/10] added GCC 6 and Clang 3.8 to Travis

---
 .travis.yml | 24 ++++++++++++++++--------
 1 file changed, 16 insertions(+), 8 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 629bec87..fd405df8 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -30,6 +30,14 @@ matrix:
           packages: ['g++-5', 'valgrind']
       env: COMPILER=g++-5
 
+    - os: linux
+      compiler: gcc
+      addons:
+        apt:
+          sources: ['ubuntu-toolchain-r-test']
+          packages: ['g++-6', 'valgrind']
+      env: COMPILER=g++-6
+
     - os: linux
       compiler: clang
       addons:
@@ -45,6 +53,14 @@ matrix:
           sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.7']
           packages: ['clang-3.7', 'valgrind']
       env: COMPILER=clang++-3.7
+
+    - os: linux
+      compiler: clang
+      addons:
+        apt:
+          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.8']
+          packages: ['clang-3.8', 'valgrind']
+      env: COMPILER=clang++-3.8
      
    # - os: osx
    #   compiler: clang
@@ -57,11 +73,3 @@ script:
   - make CXX=$COMPILER CXXFLAGS="-lstdc++"
   - ./json_unit "*"
   - valgrind --error-exitcode=1 --leak-check=full ./json_unit
-
-notifications:
-  webhooks:
-    urls:
-      - https://webhooks.gitter.im/e/f1196addb0e97a5ff396
-    on_success: change
-    on_failure: always
-    on_start: never

From 86d7e3090f0e5d47626436a019149584e2d18f86 Mon Sep 17 00:00:00 2001
From: Niels <niels.lohmann@gmail.com>
Date: Fri, 29 Apr 2016 19:33:43 +0200
Subject: [PATCH 02/10] removed GCC 6, added Clang 3.5

---
 .travis.yml | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index fd405df8..49588235 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -30,13 +30,21 @@ matrix:
           packages: ['g++-5', 'valgrind']
       env: COMPILER=g++-5
 
+#    - os: linux
+#      compiler: gcc
+#      addons:
+#        apt:
+#          sources: ['ubuntu-toolchain-r-test']
+#          packages: ['g++-6', 'valgrind']
+#      env: COMPILER=g++-6
+
     - os: linux
-      compiler: gcc
+      compiler: clang
       addons:
         apt:
-          sources: ['ubuntu-toolchain-r-test']
-          packages: ['g++-6', 'valgrind']
-      env: COMPILER=g++-6
+          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.5']
+          packages: ['clang-3.5', 'valgrind']
+      env: COMPILER=clang++-3.5
 
     - os: linux
       compiler: clang

From ca604c5a2ebb751aed3156011c220bbf3f9596de Mon Sep 17 00:00:00 2001
From: Niels <niels.lohmann@gmail.com>
Date: Fri, 29 Apr 2016 19:37:52 +0200
Subject: [PATCH 03/10] trying Clang 3.9

---
 .travis.yml | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 49588235..4b3b700b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -38,13 +38,8 @@ matrix:
 #          packages: ['g++-6', 'valgrind']
 #      env: COMPILER=g++-6
 
-    - os: linux
-      compiler: clang
-      addons:
-        apt:
-          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.5']
-          packages: ['clang-3.5', 'valgrind']
-      env: COMPILER=clang++-3.5
+    # Clang 3.5 is not able to compile the code,
+    # see https://travis-ci.org/nlohmann/json/jobs/126720186
 
     - os: linux
       compiler: clang
@@ -69,6 +64,14 @@ matrix:
           sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.8']
           packages: ['clang-3.8', 'valgrind']
       env: COMPILER=clang++-3.8
+
+    - os: linux
+      compiler: clang
+      addons:
+        apt:
+          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.9']
+          packages: ['clang-3.9', 'valgrind']
+      env: COMPILER=clang++-3.9
      
    # - os: osx
    #   compiler: clang

From 68c50073a425af9fa2381d041c8e5dad240162f6 Mon Sep 17 00:00:00 2001
From: Niels <niels.lohmann@gmail.com>
Date: Fri, 29 Apr 2016 19:46:37 +0200
Subject: [PATCH 04/10] added OSX

---
 .travis.yml | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 4b3b700b..cd895759 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -69,16 +69,17 @@ matrix:
       compiler: clang
       addons:
         apt:
-          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.9']
+          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise']
           packages: ['clang-3.9', 'valgrind']
       env: COMPILER=clang++-3.9
      
-   # - os: osx
-   #   compiler: clang
-   #   env: COMPILER=clang
-   #   before_install:
-   #     - brew update
-   #     - brew install valgrind
+    - os: osx
+      osx_image: xcode7.3
+      compiler: clang
+      env: COMPILER=clang
+      before_install:
+        - brew update
+        - brew install valgrind
 
 script:
   - make CXX=$COMPILER CXXFLAGS="-lstdc++"

From 40abeb28d584dc8b7f1c3aaff1ac9c1312568051 Mon Sep 17 00:00:00 2001
From: Niels <niels.lohmann@gmail.com>
Date: Fri, 29 Apr 2016 20:00:33 +0200
Subject: [PATCH 05/10] Valgrind only for Linux

---
 .travis.yml | 26 ++++++++++++++++++++++----
 1 file changed, 22 insertions(+), 4 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index cd895759..f7c91511 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -45,7 +45,7 @@ matrix:
       compiler: clang
       addons:
         apt:
-          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.6']
+          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise']
           packages: ['clang-3.6', 'valgrind']
       env: COMPILER=clang++-3.6
 
@@ -53,7 +53,7 @@ matrix:
       compiler: clang
       addons:
         apt:
-          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.7']
+          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise']
           packages: ['clang-3.7', 'valgrind']
       env: COMPILER=clang++-3.7
 
@@ -61,7 +61,7 @@ matrix:
       compiler: clang
       addons:
         apt:
-          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.8']
+          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise']
           packages: ['clang-3.8', 'valgrind']
       env: COMPILER=clang++-3.8
 
@@ -72,7 +72,23 @@ matrix:
           sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise']
           packages: ['clang-3.9', 'valgrind']
       env: COMPILER=clang++-3.9
+
+    - os: osx
+      osx_image: xcode7.1
+      compiler: clang
+      env: COMPILER=clang
+      before_install:
+        - brew update
+        - brew install valgrind
      
+    - os: osx
+      osx_image: xcode7.2
+      compiler: clang
+      env: COMPILER=clang
+      before_install:
+        - brew update
+        - brew install valgrind
+
     - os: osx
       osx_image: xcode7.3
       compiler: clang
@@ -84,4 +100,6 @@ matrix:
 script:
   - make CXX=$COMPILER CXXFLAGS="-lstdc++"
   - ./json_unit "*"
-  - valgrind --error-exitcode=1 --leak-check=full ./json_unit
+  - if [ "${os}" = "linux" ]; then
+    valgrind --error-exitcode=1 --leak-check=full ./json_unit ;
+    fi

From a07cdb14ecfbf84c38643c23b3490a684991eb4c Mon Sep 17 00:00:00 2001
From: Niels <niels.lohmann@gmail.com>
Date: Fri, 29 Apr 2016 20:01:11 +0200
Subject: [PATCH 06/10] don't install valgrind for OSX

---
 .travis.yml | 9 ---------
 1 file changed, 9 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index f7c91511..79fad470 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -77,25 +77,16 @@ matrix:
       osx_image: xcode7.1
       compiler: clang
       env: COMPILER=clang
-      before_install:
-        - brew update
-        - brew install valgrind
      
     - os: osx
       osx_image: xcode7.2
       compiler: clang
       env: COMPILER=clang
-      before_install:
-        - brew update
-        - brew install valgrind
 
     - os: osx
       osx_image: xcode7.3
       compiler: clang
       env: COMPILER=clang
-      before_install:
-        - brew update
-        - brew install valgrind
 
 script:
   - make CXX=$COMPILER CXXFLAGS="-lstdc++"

From ddc5442c91b54837060404f91e46f27d968f60d2 Mon Sep 17 00:00:00 2001
From: Niels <niels.lohmann@gmail.com>
Date: Fri, 29 Apr 2016 20:09:41 +0200
Subject: [PATCH 07/10] cleanup

---
 .travis.yml | 28 ++++++++++++++++++++++++----
 1 file changed, 24 insertions(+), 4 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 79fad470..2133d17a 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -45,7 +45,7 @@ matrix:
       compiler: clang
       addons:
         apt:
-          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise']
+          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.6']
           packages: ['clang-3.6', 'valgrind']
       env: COMPILER=clang++-3.6
 
@@ -53,7 +53,7 @@ matrix:
       compiler: clang
       addons:
         apt:
-          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise']
+          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.7']
           packages: ['clang-3.7', 'valgrind']
       env: COMPILER=clang++-3.7
 
@@ -61,7 +61,7 @@ matrix:
       compiler: clang
       addons:
         apt:
-          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise']
+          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.8']
           packages: ['clang-3.8', 'valgrind']
       env: COMPILER=clang++-3.8
 
@@ -73,6 +73,26 @@ matrix:
           packages: ['clang-3.9', 'valgrind']
       env: COMPILER=clang++-3.9
 
+    - os: osx
+      osx_image: beta-xcode6.1
+      compiler: clang
+      env: COMPILER=clang
+
+    - os: osx
+      osx_image: beta-xcode6.2
+      compiler: clang
+      env: COMPILER=clang
+
+    - os: osx
+      osx_image: beta-xcode6.3
+      compiler: clang
+      env: COMPILER=clang
+
+    - os: osx
+      osx_image: xcode6.4
+      compiler: clang
+      env: COMPILER=clang
+
     - os: osx
       osx_image: xcode7.1
       compiler: clang
@@ -91,6 +111,6 @@ matrix:
 script:
   - make CXX=$COMPILER CXXFLAGS="-lstdc++"
   - ./json_unit "*"
-  - if [ "${os}" = "linux" ]; then
+  - if [ "${TRAVIS_OS_NAME}" = "linux" ]; then
     valgrind --error-exitcode=1 --leak-check=full ./json_unit ;
     fi

From b685737d53c4adbd5869b238c46a8782ffd3f237 Mon Sep 17 00:00:00 2001
From: Niels <niels.lohmann@gmail.com>
Date: Fri, 29 Apr 2016 20:18:20 +0200
Subject: [PATCH 08/10] added MinGW

---
 .travis.yml | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/.travis.yml b/.travis.yml
index 2133d17a..3341f823 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -30,6 +30,14 @@ matrix:
           packages: ['g++-5', 'valgrind']
       env: COMPILER=g++-5
 
+    - os: linux
+      compiler: gcc
+      addons:
+        apt:
+          sources: ['ubuntu-toolchain-r-test']
+          packages: ['g++-mingw-w64']
+      env: COMPILER=g++-mingw-w64
+
 #    - os: linux
 #      compiler: gcc
 #      addons:
@@ -111,6 +119,6 @@ matrix:
 script:
   - make CXX=$COMPILER CXXFLAGS="-lstdc++"
   - ./json_unit "*"
-  - if [ "${TRAVIS_OS_NAME}" = "linux" ]; then
+  - if [ `which valgrind` ]; then
     valgrind --error-exitcode=1 --leak-check=full ./json_unit ;
     fi

From c019088d3b750841c8565a30c564d23d438b5b0e Mon Sep 17 00:00:00 2001
From: Niels <niels.lohmann@gmail.com>
Date: Fri, 29 Apr 2016 20:35:40 +0200
Subject: [PATCH 09/10] wrong MinGW binary

---
 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.travis.yml b/.travis.yml
index 3341f823..c038866e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -36,7 +36,7 @@ matrix:
         apt:
           sources: ['ubuntu-toolchain-r-test']
           packages: ['g++-mingw-w64']
-      env: COMPILER=g++-mingw-w64
+      env: COMPILER=i686-w64-mingw32-g++
 
 #    - os: linux
 #      compiler: gcc

From 74544b42af024c1d4f1942be534859aa22947276 Mon Sep 17 00:00:00 2001
From: Niels <niels.lohmann@gmail.com>
Date: Fri, 29 Apr 2016 20:48:47 +0200
Subject: [PATCH 10/10] removed MinGW compiler (too old)

---
 .travis.yml | 8 --------
 1 file changed, 8 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index c038866e..882f98d2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -30,14 +30,6 @@ matrix:
           packages: ['g++-5', 'valgrind']
       env: COMPILER=g++-5
 
-    - os: linux
-      compiler: gcc
-      addons:
-        apt:
-          sources: ['ubuntu-toolchain-r-test']
-          packages: ['g++-mingw-w64']
-      env: COMPILER=i686-w64-mingw32-g++
-
 #    - os: linux
 #      compiler: gcc
 #      addons: