1010 branches : [ "main", "develop", "release" ]
1111 pull_request :
1212 branches : [ "main", "develop", "release" ]
13+ workflow_dispatch :
14+ schedule :
15+ - cron : " 0 5 * * 1"
1316
1417jobs :
1518 build :
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