Skip to content

Test minimum dependencies #84

Test minimum dependencies

Test minimum dependencies #84

# This workflow runs the test suite using the minimum supported dependency
# versions.
name: Test minimum dependencies
permissions:
contents: read
on:
schedule:
- cron: 25 4 * * 1 # every monday at 04:25 UTC
workflow_dispatch:
jobs:
test_minimum_deps:
if: ${{ github.repository == 'gboeing/osmnx' }}
name: ${{ matrix.os }}
runs-on: ${{ matrix.os }}
timeout-minutes: 20
strategy:
fail-fast: false
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
python-version: ['3.9']
defaults:
run:
shell: bash -elo pipefail {0}
steps:
- name: Checkout repo
uses: actions/checkout@v5
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
cache-dependency-glob: pyproject.toml
enable-cache: true
python-version: ${{ matrix.python-version }}
- name: Install OSMnx with minimum dependency versions
run: |
uv python pin ${{ matrix.python-version }}
uv sync --all-extras --group test --resolution=lowest-direct
- name: Test code
run: |
uv run --no-sync --with tomli ./tests/verify_min_deps.py # need tomli for python<=3.10
uv run --no-sync pytest --verbose --maxfail=1 --numprocesses=3 --dist=loadgroup