New upstream version 0.19.10
[jelmer/dulwich.git] / .travis.yml
index 498fdeda3fc2542b122338ba27e76ff9c0df5dd6..c346113b5aab4b0e20cec841d9b518525fff9152 100644 (file)
@@ -1,28 +1,47 @@
 language: python
 sudo: false
+cache: pip
+
+python:
+  - 2.7
+  - 3.4
+  - 3.5
+  - 3.6
+  - 3.6-dev
+  - pypy3.5
+
 env:
-  global: TEST_RUNNER=unittest PYTHONHASHSEED=random
+  - PYTHONHASHSEED=random
+    TEST_REQUIRE="gevent greenlet geventhttpclient fastimport"
+
 matrix:
   include:
-    - python: "2.7"
-      env: TEST_REQUIRE="gevent greenlet geventhttpclient fastimport mock"
-    - python: "pypy"
-      env: TEST_REQUIRE="fastimport mock"
-    - python: "3.4"
-      env: TEST_REQUIRE="gevent greenlet geventhttpclient fastimport"
-    - python: "3.5"
-      env: TEST_REQUIRE="gevent greenlet geventhttpclient fastimport"
-cache:
-  directories:
-    - $HOME/.cache/pip
-script:
-  - pip install pip --upgrade
-  - pip install $TEST_REQUIRE
+    - python: pypy
+      env: TEST_REQUIRE=fastimport
+    - python: 3.7
+      env: TEST_REQUIRE=fastimport
+      dist: xenial
+      sudo: true
+    # flakes checker fails on python 3.8-dev:
+    #- python: 3.8-dev
+    #  env: TEST_REQUIRE=fastimport
+    #  dist: xenial
+    #  sudo: true
 
+install:
+  - travis_retry pip install -U pip coverage codecov flake8 $TEST_REQUIRE
+
+script:
   # Test without c extensions
-  - python -m $TEST_RUNNER dulwich.tests.test_suite
+  - python -m coverage run -p -m unittest dulwich.tests.test_suite
 
   # Test with c extensions
   - python setup.py build_ext -i
-  - python -m $TEST_RUNNER dulwich.tests.test_suite
+  - python -m coverage run -p -m unittest dulwich.tests.test_suite
+
+  # Style
+  - make style
 
+after_success:
+  - python -m coverage combine
+  - codecov