Skip to content

Make CI fail if interactive toolkits can't be tested #11497

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 3 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 9 additions & 18 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ before_install: |
export PATH=/usr/lib/ccache:$PATH
else
ci/silence brew update
brew upgrade python
brew upgrade python3.6
brew install ffmpeg imagemagick mplayer ccache
hash -r
which python
Expand All @@ -124,25 +124,16 @@ install:
- |
# Install dependencies from PyPI.
python -mpip install --upgrade $PRE -r requirements/testing/travis_all.txt $EXTRAREQS $PINNEDVERS
# GUI toolkits are pip-installable only for some versions of Python so
# don't fail if we can't install them. Make it easier to check whether the
# install was successful by trying to import the toolkit (sometimes, the
# Check for the successful installation of GUI toolkits (sometimes, the
# install appears to be successful but shared libraries cannot be loaded at
# runtime, so an actual import is a better check).
python -mpip install cairocffi pgi &&
python -c 'import pgi as gi; gi.require_version("Gtk", "3.0"); from pgi.repository import Gtk' &&
echo 'pgi is available' ||
echo 'pgi is not available'
python -mpip install pyqt5 &&
python -c 'import PyQt5.QtCore' &&
echo 'PyQt5 is available' ||
echo 'PyQt5 is not available'
python -mpip install -U \
-f https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-14.04 \
wxPython &&
python -c 'import wx' &&
echo 'wxPython is available' ||
echo 'wxPython is not available'
if [[ $TRAVIS_OS_NAME = linux ]]; then
# pgi is only installable on Linux.
python -mpip install --upgrade $PRE cairocffi pgi
python -c 'import pgi as gi; gi.require_version("Gtk", "3.0"); from pgi.repository import Gtk'
fi
python -c 'import PyQt5.QtCore'
python -c 'import wx'

- |
# Install matplotlib
Expand Down
15 changes: 12 additions & 3 deletions requirements/testing/travis_all.txt
Original file line number Diff line number Diff line change
@@ -1,13 +1,22 @@
# pip requirements for all the travis builds

--find-links https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-14.04

codecov
coverage
cycler
numpy
pillow
pyparsing

# GUI toolkits

# pgi is only installable on Linux.
pyqt5
# wxpython 4.0.2 and 4.0.3 are broken on OSX.
wxpython!=4.0.2,!=4.0.3

# pytest-timeout master depends on pytest>=3.6. Testing with pytest 3.4 is
# still supported; this is tested by the first travis python 3.5 build
# still supported; this is tested by the first travis python 3.5 build.

pytest>=3.6
pytest-cov
pytest-faulthandler
Expand Down