Skip to content

add cchdo.hydro entry point in project.scripts #318

add cchdo.hydro entry point in project.scripts

add cchdo.hydro entry point in project.scripts #318

Workflow file for this run

# This workflow will install Python dependencies, run tests and lint with a single version of Python
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
name: Build
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
lint:
name: Lint and Style
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
- name: Lint with ruff
run: |
uvx ruff check
- name: Test code style with ruff
run: |
uvx ruff format --check
pytest:
name: Pytest
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
- name: "Set up Python"
uses: actions/setup-python@v5
with:
python-version-file: ".python-version"
- name: Install dependencies
run: uv sync
- name: Test with pytest
run: uv run pytest --pyargs cchdo.hydro -n 4 --cov-report xml --cov=src
- name: Upload coverage to Coveralls
uses: coverallsapp/github-action@v2.3.0
if: ${{matrix.dep}} != "selftest"
continue-on-error: true
with:
file: ./coverage.xml
selftest:
name: Selftest
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
- name: "Set up Python"
uses: actions/setup-python@v5
with:
python-version-file: ".python-version"
- name: Install dependencies
run: |
uv venv
uv pip install .[selftest]
- name: Test with pytest
run: uv run --no-default-groups pytest --pyargs cchdo.hydro
typing:
name: Typing with mypy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
- name: "Set up Python"
uses: actions/setup-python@v5
with:
python-version-file: ".python-version"
- name: Install dependencies
run: uv sync
- name: Test typing
env:
MYPYPATH: src
run: uv run mypy --namespace-packages --explicit-package-bases src