1-
21# This workflow installs dependencies from main branch
32
43name : Test with pip
@@ -14,153 +13,43 @@ jobs:
1413 fail-fast : false
1514 matrix :
1615 os : ['ubuntu-latest', 'macos-latest', 'windows-latest']
17- toolkit : ['pyside6']
16+ toolkit : ['pyside2', ' pyside6', 'pyqt5', 'wx', 'null ']
1817 kiva-backend : ['image']
19- python-version : ['3.8 ', '3.11']
20- include :
21- # Do more Python versions on linux
22- - os : ' ubuntu-latest '
23- toolkit : ' pyside6 '
24- kiva-backend : ' image '
25- python-version : ' 3.9 '
26- - os : ' ubuntu-latest '
27- toolkit : ' pyside6 '
28- kiva-backend : ' image '
29- python-version : ' 3.10 '
18+ python-version : ['3.10 ', '3.11']
19+ exclude :
20+ # No PySide2 wheels available for Python 3.11
21+ - toolkit : ' pyside2 '
22+ python-version : ' 3.11 '
23+ # No PyQt5 wheels available for Python 3.11
24+ - toolkit : ' pyqt5 '
25+ python-version : ' 3.11 '
26+ # No PySide2 wheels for macos-latest
27+ - os : ' macos-latest '
28+ toolkit : ' pyside2 '
3029 runs-on : ${{ matrix.os }}
31- env :
32- ETS_TOOLKIT : qt4.${{ matrix.kiva-backend }}
33- QT_API : ${{ matrix.toolkit }}
3430 steps :
3531 - name : Check out
36- uses : actions/checkout@v3
32+ uses : actions/checkout@v4
3733 - name : Set up Python
3834 uses : actions/setup-python@v4
3935 with :
4036 python-version : ${{ matrix.python-version }}
41- - name : Install Qt dependencies
42- uses : ./.github/actions/install-qt-support
43- if : matrix.toolkit == 'pyside6'
44- - name : Install dependencies for Linux
45- run : |
46- # needed for Celiagg
47- sudo apt-get install libfreetype-dev libharfbuzz-dev
48- # needed for Cairo
49- sudo apt-get install libcairo2-dev
50- if : matrix.os == 'ubuntu-latest'
51- - name : Install dependencies for Mac
52- run : |
53- brew install cairo
54- if : matrix.os == 'macos-latest'
55- - name : Install build dependencies
56- run : |
57- python -m pip install --upgrade pip wheel
58- - name : Install local enable main (temporary)
59- run : pip install --force "enable[celiagg,layout,svg] @ git+https://github.com/enthought/enable.git"
60- - name : Install local packages
61- run : pip install ".[tests,${{ matrix.toolkit }}]"
62- - name : Sanity check package version
63- run : pip list
64- - name : Run chaco test suite (Linux)
65- env :
66- PYTHONFAULTHANDLER : 1
67- # kiva agg requires at least 15-bit color depth.
68- run : xvfb-run -a --server-args="-screen 0 1024x768x24" python -m unittest discover -v chaco
69- if : matrix.os == 'ubuntu-latest'
70- working-directory : ${{ runner.temp }}
71- - name : Run enable test suite (not Linux)
72- env :
73- PYTHONFAULTHANDLER : 1
74- run : python -m unittest discover -v chaco
75- if : matrix.os != 'ubuntu-latest'
76- working-directory : ${{ runner.temp }}
77-
78- test-wx :
79- strategy :
80- fail-fast : false
81- matrix :
82- os : ['windows-latest']
83- toolkit : ['wx']
84- kiva-backend : ['image']
85- python-version : ['3.8', '3.10']
86- runs-on : ${{ matrix.os }}
87- env :
88- ETS_TOOLKIT : ${{ matrix.toolkit }}.${{ matrix.kiva-backend }}
89- steps :
90- - name : Check out
91- uses : actions/checkout@v3
92- - name : Set up Python
93- uses : actions/setup-python@v4
37+ cache : ' pip'
38+ - name : Set ETS_TOOLKIT
39+ uses : ./.github/actions/ets_toolkit
9440 with :
95- python-version : ${{ matrix.python-version }}
96- - name : Install dependencies for Linux
97- run : |
98- # needed for Celiagg
99- sudo apt-get install libfreetype-dev libharfbuzz-dev
100- # needed for Cairo
101- sudo apt-get install libcairo2-dev
102- if : matrix.os == 'ubuntu-latest'
103- - name : Install dependencies for Mac
104- run : |
105- brew install cairo
106- if : matrix.os == 'macos-latest'
41+ toolkit : ${{ matrix.toolkit }}
10742 - name : Install build dependencies
10843 run : |
109- python -m pip install --upgrade pip wheel
110- - name : Install local enable main (temporary)
111- run : pip install --force "enable[celiagg,layout,svg] @ git+https://github.com/enthought/enable.git"
112- - name : Install local packages
113- run : pip install ".[tests,${{ matrix.toolkit }}]"
114- - name : Sanity check package version
115- run : pip list
116- - name : Run chaco test suite (Linux)
117- env :
118- PYTHONFAULTHANDLER : 1
119- # kiva agg requires at least 15-bit color depth.
120- run : xvfb-run -a --server-args="-screen 0 1024x768x24" python -m unittest discover -v chaco
121- if : matrix.os == 'ubuntu-latest'
122- working-directory : ${{ runner.temp }}
123- - name : Run enable test suite (not Linux)
124- env :
125- PYTHONFAULTHANDLER : 1
126- run : python -m unittest discover -v chaco
127- if : matrix.os != 'ubuntu-latest'
128- working-directory : ${{ runner.temp }}
129-
130- test-null :
131- strategy :
132- fail-fast : false
133- matrix :
134- os : ['ubuntu-latest', 'macos-latest', 'windows-latest']
135- toolkit : ['null']
136- kiva-backend : ['image', 'celiagg']
137- python-version : ['3.8', '3.11']
138- runs-on : ${{ matrix.os }}
139- env :
140- ETS_TOOLKIT : ${{ matrix.toolkit }}.${{ matrix.kiva-backend }}
141- steps :
142- - name : Check out
143- uses : actions/checkout@v3
144- - name : Set up Python
145- uses : actions/setup-python@v4
146- with :
147- python-version : ${{ matrix.python-version }}
148- - name : Install dependencies for Linux
149- run : |
150- # needed for Celiagg
151- sudo apt-get install libfreetype-dev libharfbuzz-dev
152- # needed for Cairo
153- sudo apt-get install libcairo2-dev
154- if : matrix.os == 'ubuntu-latest'
155- - name : Install dependencies for Mac
156- run : |
157- brew install cairo
158- if : matrix.os == 'macos-latest'
159- - name : Install build dependencies
44+ python -m pip install --upgrade pip wheel Cython
45+ - name : Install wxdependencies for Linux
16046 run : |
161- python -m pip install --upgrade pip wheel
162- - name : Install local enable main (temporary)
163- run : pip install --force "enable[celiagg,cairo,layout,svg] @ git+https://github.com/enthought/enable.git"
47+ sudo apt-get update
48+ sudo apt-get install libgtk-3-dev
49+ if : matrix.os == 'ubuntu-latest' && matrix.toolkit == 'wx'
50+ - name : Install Qt dependencies on Linux
51+ uses : ./.github/actions/install-qt-support
52+ if : matrix.os == 'ubuntu-latest' && startsWith(matrix.toolkit, 'py')
16453 - name : Install local packages
16554 run : pip install ".[tests,${{ matrix.toolkit }}]"
16655 - name : Sanity check package version
0 commit comments