-
Notifications
You must be signed in to change notification settings - Fork 52
/
.travis.yml
64 lines (64 loc) · 2.13 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
dist: precise
sudo: false
language: python
cache: pip
matrix:
include:
- name: "Python 2.7 on Linux"
python: "2.7"
- name: "Python 3.6 on Linux"
python: "3.6"
- name: "Python 3.7 on Linux"
python: "3.7"
- name: "Python 3.8 on Linux"
python: "3.8"
- name: "Python 3.9 on Linux"
python: "3.9"
- name: "Python 3.9-dev on Linux"
python: "3.9-dev" # 3.9 development branch
- name: "Python nightly build on Linux"
python: "nightly" # nightly build
- name: "Python pypy2.7-7.3.1 on Linux"
python: "pypy2.7-7.3.1"
- name: "Python pypy3.6-7.3.3 on Linux"
python: "pypy3.6-7.3.3"
- name: "Python pypy3.7-7.3.5 on Linux"
python: "pypy3.7-7.3.5"
- name: "Python 3 on macOS 11.3"
os: osx
osx_image: xcode12.5
language: shell
- name: "Python 3.7 on Windows"
os: windows
language: shell
before_install:
- choco install python --version=3.7.2
- python -m pip install --upgrade pip
env: PATH=/c/Python37:/c/Python37/Scripts:$PATH
allow_failures:
- python: "3.9-dev"
virtualenv:
system_site_packages: true
addons:
apt:
packages:
- lcov
homebrew:
packages:
- lcov
env:
- CFLAGS="-coverage"
install:
- pip install -U setuptools pip
- pip install -r requirements.txt -r tests/requirements.txt
- pip install .
script:
- python setup.py build_clib build_ext --inplace
- pytest -v
- pytest --benchmark-disable --cov=./ tests
- if [ "$TRAVIS_OS_NAME" != "windows" ]; then lcov --capture --directory . --output-file build/coverage.info ; fi
- if [ "$TRAVIS_OS_NAME" != "windows" ]; then lcov --remove build/coverage.info '/usr/*' "${PWD}/src/fnv/*" "${PWD}/src/lookup3/*" "${PWD}/src/SuperFastHash/*" "${PWD}/src/smhasher/*" "${PWD}/src/pybind11/*" -o build/coverage_filtered.info ; fi
- if [ "$TRAVIS_OS_NAME" != "windows" ]; then genhtml --legend --title "${TRAVIS_COMMIT} ${TRAVIS_COMMIT_MESSAGE}" --prefix src build/coverage_filtered.info --output-directory build/coverage ; fi
after_success:
- bash <(curl -s https://codecov.io/bash) || echo 'Codecov failed to upload'
- codecov