Skip to content

Commit 245e586

Browse files
committed
feat(ci): add workflow for testing with latest Python version and dependencies
1 parent 5113326 commit 245e586

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

.github/workflows/test_pyqt5.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ on:
1010
branches: [ "main", "develop", "release" ]
1111
pull_request:
1212
branches: [ "main", "develop", "release" ]
13+
workflow_dispatch:
14+
schedule:
15+
- cron: "0 5 * * 1"
1316

1417
jobs:
1518
build:
@@ -86,3 +89,47 @@ jobs:
8689
run: ruff check --output-format=github datalab
8790
- name: Test with pytest
8891
run: pytest -v --tb=long
92+
93+
build_latest:
94+
if: ${{ github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' }}
95+
continue-on-error: true
96+
env:
97+
DISPLAY: ':99.0'
98+
runs-on: ubuntu-latest
99+
100+
steps:
101+
- uses: actions/checkout@v4
102+
103+
- name: Set up Python 3.13
104+
uses: actions/setup-python@v5
105+
with:
106+
python-version: "3.13"
107+
108+
- name: Install dependencies (latest)
109+
run: |
110+
set -euxo pipefail
111+
sudo apt-get update
112+
sudo apt-get install -y \
113+
libxkbcommon-x11-0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 \
114+
libxcb-randr0 libxcb-render-util0 libxcb-xinerama0 libxcb-xfixes0 x11-utils
115+
116+
/sbin/start-stop-daemon --start --quiet \
117+
--pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background \
118+
--exec /usr/bin/Xvfb -- :99 -screen 0 1920x1200x24 -ac +extension GLX
119+
120+
python -m pip install --upgrade pip
121+
python -m pip install ruff pytest
122+
python -m pip install PyQt5
123+
124+
# Install DataLab itself, but do NOT install its pinned deps
125+
python -m pip install -e . --no-deps
126+
127+
# Upgrade the core scientific stack to the newest pip can install
128+
python -m pip install -U --upgrade-strategy eager \
129+
numpy scipy h5py scikit-image pillow imageio tifffile pandas
130+
131+
- name: Lint with Ruff (latest)
132+
run: ruff check --output-format=github datalab
133+
134+
- name: Test with pytest (latest)
135+
run: pytest -v --tb=long

0 commit comments

Comments
 (0)