Merge pull request #304 from jonnymaserati/chore/security-policy #640
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # This workflow will install Python dependencies, run tests and lint with a variety of Python versions | |
| # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions | |
| name: welleng-tests | |
| on: | |
| push: | |
| branches: [ 'main', 'dev' ] | |
| pull_request: | |
| branches: [ 'main', 'dev' ] | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: ['3.10', '3.11', '3.12'] | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.2.0 | |
| with: | |
| enable-cache: true | |
| - name: Set up Python ${{ matrix.python-version }} | |
| run: uv python install ${{ matrix.python-version }} | |
| - name: Install APT dependencies | |
| run: | | |
| sudo apt-get update -qq -y | |
| sudo apt-get install -qq -y build-essential libspatialindex-dev | |
| - name: Lint with ruff | |
| # Config lives in pyproject [tool.ruff]: E/W/F at line-length 88; legacy | |
| # files carry an explicit per-file baseline (burn-down list) so this gate | |
| # holds NEW code to the full standard without a mass legacy refactor. | |
| run: uvx ruff check welleng/ tests/ | |
| - name: Test a minimal install | |
| run: | | |
| uv run --isolated --no-dev -p ${{ matrix.python-version }} python tests/test_minimal.py | |
| - name: Install welleng with all extras and run tests | |
| run: | | |
| uv sync --extra all | |
| uv run pytest tests -n auto |