@@ -22,10 +22,10 @@ jobs:
2222 fail-fast : false
2323 steps :
2424 - uses : actions/checkout@v3
25- - name : Set up Python 3.9
25+ - name : Set up Python 3.11
2626 uses : actions/setup-python@v4
2727 with :
28- python-version : 3.9
28+ python-version : 3.11
2929 - name : Install llvmpipe and lavapipe for offscreen canvas, and git lfs
3030 run : |
3131 sudo apt-get update -y -qq
3636 sudo apt-get install ./pandoc-3.1.4-1-amd64.deb
3737 - name : Install dev dependencies
3838 run : |
39- python -m pip install --upgrade pip
40- # remove pygfx from requirements , we install a specific commit of pygfx since both fpl and pygfx are fast evolving
39+ python -m pip install --upgrade pip setuptools
40+ # remove pygfx from install_requires , we install using pygfx@main
4141 sed -i "/pygfx/d" ./setup.py
4242 pip install git+https://github.com/pygfx/pygfx.git@main
4343 pip install -e ".[notebook,docs,tests]"
4646 cd docs
4747 make html SPHINXOPTS="-W --keep-going"
4848
49- test-build :
50- name : Test examples
49+ test-build-full :
50+ name : Test examples, env with notebook and glfw
5151 runs-on : ubuntu-latest
5252 if : ${{ !github.event.pull_request.draft }}
5353 strategy :
6060 pyversion : ' 3.10'
6161 - name : Test py311
6262 pyversion : ' 3.11'
63+ - name : Test py312
64+ pyversion : ' 3.12'
6365 steps :
6466 - name : Install git-lfs
6567 run : |
7577 sudo apt-get install --no-install-recommends -y libegl1-mesa libgl1-mesa-dri libxcb-xfixes0-dev mesa-vulkan-drivers git-lfs
7678 - name : Install dev dependencies
7779 run : |
78- python -m pip install --upgrade pip
79- # remove pygfx from requirements , we install a specific commit of pygfx since both fpl and pygfx are fast evolving
80+ python -m pip install --upgrade pip setuptools
81+ # remove pygfx from install_requires , we install using pygfx@main
8082 sed -i "/pygfx/d" ./setup.py
8183 pip install git+https://github.com/pygfx/pygfx.git@main
8284 pip install -e ".["tests"]"
@@ -100,3 +102,58 @@ jobs:
100102 path : |
101103 examples/desktop/diffs
102104 examples/notebooks/diffs
105+
106+ test-build-desktop :
107+ name : Test examples, env with only glfw
108+ runs-on : ubuntu-latest
109+ if : ${{ !github.event.pull_request.draft }}
110+ strategy :
111+ fail-fast : false
112+ matrix :
113+ include :
114+ - name : Test py39
115+ pyversion : ' 3.9'
116+ - name : Test py310
117+ pyversion : ' 3.10'
118+ - name : Test py311
119+ pyversion : ' 3.11'
120+ - name : Test py312
121+ pyversion : ' 3.12'
122+ steps :
123+ - name : Install git-lfs
124+ run : |
125+ sudo apt install --no-install-recommends -y git-lfs
126+ - uses : actions/checkout@v3
127+ - name : Set up Python
128+ uses : actions/setup-python@v3
129+ with :
130+ python-version : ${{ matrix.pyversion }}
131+ - name : Install llvmpipe and lavapipe for offscreen canvas
132+ run : |
133+ sudo apt-get update -y -qq
134+ sudo apt-get install --no-install-recommends -y libegl1-mesa libgl1-mesa-dri libxcb-xfixes0-dev mesa-vulkan-drivers git-lfs
135+ - name : Install dev dependencies
136+ run : |
137+ python -m pip install --upgrade pip setuptools
138+ # remove pygfx from install_requires, we install using pygfx@main
139+ sed -i "/pygfx/d" ./setup.py
140+ pip install git+https://github.com/pygfx/pygfx.git@main
141+ pip install -e ".["tests-desktop"]"
142+ - name : Show wgpu backend
143+ run :
144+ python -c "from examples.tests.testutils import wgpu_backend; print(wgpu_backend)"
145+ - name : fetch git lfs files
146+ run : |
147+ git lfs fetch --all
148+ git lfs pull
149+ - name : Test examples
150+ env :
151+ PYGFX_EXPECT_LAVAPIPE : true
152+ run : |
153+ pytest -v examples
154+ - uses : actions/upload-artifact@v3
155+ if : ${{ failure() }}
156+ with :
157+ name : screenshot-diffs
158+ path : |
159+ examples/desktop/diffs
0 commit comments