summaryrefslogtreecommitdiff
path: root/.travis.yml
blob: b66d7c5d90212f16a58efd9ec77e3178ee606df8 (plain)
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
dist: xenial
language: python
group: edge
python: 3.7
os: linux

matrix:
  fast_finish: true
  allow_failures:
    # Python 3.8 issues (fixed on master)
    - env: DOCKER=archlinux
      services: docker
    # mypy issues (fixed on master)
    - env: TESTENV=mypy
  include:
    ### Archlinux QtWebKit
    - env: DOCKER=archlinux
      services: docker

    ### Archlinux QtWebEngine
    - env: DOCKER=archlinux-webengine QUTE_BDD_WEBENGINE=true
      services: docker

    ### PyQt 5.7.1 (Python 3.6)
    - python: 3.6
      env: TESTENV=py36-pyqt57

    ### PyQt 5.9
    - env: TESTENV=py37-pyqt59
    ### PyQt 5.9 (Python 3.5)
    - python: 3.5
      env: TESTENV=py35-pyqt59

    ### PyQt 5.10
    - env: TESTENV=py37-pyqt510
      addons:
        apt:
          packages:
          - xfonts-base

    ### PyQt 5.11
    - env: TESTENV=py37-pyqt511

    ### PyQt 5.12
    - env: TESTENV=py37-pyqt512
      # http://code.qt.io/cgit/qt/qtbase.git/commit/?id=c3a963da1f9e7b1d37e63eedded61da4fbdaaf9a
      addons:
        apt:
          packages:
          - libxkbcommon-x11-0

    ### PyQt 5.13 (Python 3.7, with coverage)
    - env: TESTENV=py37-pyqt513-cov
      # http://code.qt.io/cgit/qt/qtbase.git/commit/?id=c3a963da1f9e7b1d37e63eedded61da4fbdaaf9a
      addons:
        apt:
          packages:
          - libxkbcommon-x11-0

    ### macOS Mojave (10.14)
    - os: osx
      env: TESTENV=py37-pyqt513 OSX=mojave
      osx_image: xcode11.2
      language: generic
      python: 3.7

    ### macOS High Sierra (10.13)
    - os: osx
      env: TESTENV=py37-pyqt513 OSX=highsierra
      osx_image: xcode10.1
      language: generic
      python: 3.7

    ### pylint/flake8/mypy
    - env: TESTENV=pylint
    - env: TESTENV=flake8
    - env: TESTENV=mypy

    ### docs
    - env: TESTENV=docs
      addons:
         apt:
           packages:
           - asciidoc

    ### vulture/misc/pyroma/check-manifest
    - env: TESTENV=vulture
    - env: TESTENV=misc
    - env: TESTENV=pyroma
    - env: TESTENV=check-manifest

    ### eslint
    - env: TESTENV=eslint
      language: node_js
      python: null
      node_js: "lts/*"

    ### shellcheck
    - language: generic
      env: TESTENV=shellcheck
      services: docker

cache:
  directories:
    - $HOME/.cache/pip
    - $HOME/build/qutebrowser/qutebrowser/.cache

install:
  - bash scripts/dev/ci/travis_install.sh
  - ulimit -c unlimited

script:
  - bash scripts/dev/ci/travis_run.sh

after_success:
  - '[[ $TESTENV == *-cov ]] && codecov -e TESTENV -X gcov'

after_failure:
  - bash scripts/dev/ci/travis_backtrace.sh