.travis.yml 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. language: python
  2. python:
  3. - 3.5
  4. - 3.6
  5. - 3.7
  6. - 3.7-dev
  7. - 3.8
  8. - 3.8-dev
  9. # required for python >= 3.7
  10. dist: xenial
  11. env:
  12. # https://pypi.org/project/pandas/#history
  13. - PANDAS_VERSION=
  14. - PANDAS_VERSION=1.*
  15. - PANDAS_VERSION=0.25.*
  16. - PANDAS_VERSION=0.24.*
  17. - PANDAS_VERSION=0.23.*
  18. - PANDAS_VERSION=0.22.*
  19. - PANDAS_VERSION=0.21.*
  20. # https://travis-ci.org/fphammerle/freesurfer-volume-reader/builds/525556257
  21. matrix:
  22. exclude:
  23. # https://travis-ci.org/github/fphammerle/freesurfer-stats/jobs/683777317#L208
  24. # https://github.com/pandas-dev/pandas/commit/18efcb27361478daa3118079ecb166c733691ecb#diff-2eeaed663bd0d25b7e608891384b7298R814
  25. - python: 3.5
  26. env: PANDAS_VERSION=1.*
  27. - python: 3.7
  28. env: PANDAS_VERSION=0.21.*
  29. - python: 3.7
  30. env: PANDAS_VERSION=0.22.*
  31. - python: 3.7-dev
  32. env: PANDAS_VERSION=0.21.*
  33. - python: 3.7-dev
  34. env: PANDAS_VERSION=0.22.*
  35. # >/tmp/pip-install-g4jx0np4/numpy/_configtest.c:6: undefined reference to `exp'
  36. # https://travis-ci.org/github/fphammerle/freesurfer-stats/jobs/683704331#L437
  37. - python: 3.8
  38. env: PANDAS_VERSION=0.21.*
  39. # https://travis-ci.org/github/fphammerle/freesurfer-stats/jobs/683704330#L437
  40. - python: 3.8
  41. env: PANDAS_VERSION=0.22.*
  42. - python: 3.8-dev
  43. env: PANDAS_VERSION=0.21.*
  44. - python: 3.8-dev
  45. env: PANDAS_VERSION=0.22.*
  46. # no python3.8 wheels for pandas v0.24.2 & v0.23.4 available
  47. # https://travis-ci.org/github/fphammerle/freesurfer-stats/builds/701952350
  48. # build takes longer than 10min
  49. # https://travis-ci.org/github/fphammerle/freesurfer-stats/jobs/702077404#L199
  50. - python: 3.8
  51. env: PANDAS_VERSION=0.23.*
  52. - python: 3.8
  53. env: PANDAS_VERSION=0.24.*
  54. - python: 3.8-dev
  55. env: PANDAS_VERSION=0.23.*
  56. - python: 3.8-dev
  57. env: PANDAS_VERSION=0.24.*
  58. install:
  59. - pip install pipenv
  60. - pipenv sync --dev
  61. # ModuleNotFoundError: No module named 'importlib_metadata'
  62. # https://github.com/WanzenBug/pylint-import-requirements/issues/17
  63. - if python3 -c 'import sys; sys.exit(sys.version_info < (3, 8))'; then
  64. pipenv graph;
  65. pipenv install --dev importlib-metadata;
  66. fi
  67. - if [ ! -z "$PANDAS_VERSION" ]; then
  68. pipenv install --selective-upgrade "pandas==$PANDAS_VERSION";
  69. fi
  70. - pipenv graph
  71. script:
  72. - pipenv run pylint --load-plugins=pylint_import_requirements freesurfer_stats
  73. - pipenv run pylint tests/*
  74. - pipenv run pytest --cov=freesurfer_stats --cov-report=term-missing --cov-fail-under=100
  75. after_success:
  76. - pip install coveralls
  77. - coveralls