name: examples on: push: branches: - master - develop pull_request: workflow_dispatch: schedule: - cron: '0 4 1 * *' permissions: contents: read jobs: examples: runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [ubuntu-latest] python-version: ["3.10", "3.12"] steps: - name: Checkout source uses: actions/checkout@v6 - name: Setup python uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: uv uses: astral-sh/setup-uv@v5 - name: Install LaTeX run: | sudo apt-get update sudo apt-get install -y --no-install-recommends \ dvipng texlive-latex-extra texlive-fonts-recommended cm-super - name: Install run: | uv pip install wheel --system uv pip install . --system uv pip install pytest pytest-xdist nbmake --system uv pip install -U matplotlib!=3.7.0 --system # Exclude version 3.7.0 of matplotlib as this breaks local imports of style files. # The notebooks are independent (only 07 writes to disk), so execute them in # parallel instead of serially. - name: Run tests run: pytest -vv -n auto --nbmake examples/*.ipynb