Skip to content

chore(deps): update actions/checkout action to v4.3.1 #99

chore(deps): update actions/checkout action to v4.3.1

chore(deps): update actions/checkout action to v4.3.1 #99

Workflow file for this run

name: Python CI
on:
push:
branches:
- main
paths:
- "python/**"
- "crates/nblm-python/**"
- "crates/nblm-core/**"
- ".github/workflows/python-ci.yml"
- "Makefile.toml"
pull_request:
branches:
- main
paths:
- "python/**"
- "crates/nblm-python/**"
- "crates/nblm-core/**"
- ".github/workflows/python-ci.yml"
- "Makefile.toml"
env:
CARGO_TERM_COLOR: always
jobs:
python-checks:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
python-version: ["3.12", "3.13", "3.14"]
steps:
- name: Checkout
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
- name: Install uv
uses: astral-sh/setup-uv@38f3f104447c67c051c4a08e39b64a148898af3a # v4.2.0
with:
enable-cache: true
cache-dependency-glob: "python/uv.lock"
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python-version }}
- name: Cache cargo registry
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
with:
path: |
~/.cargo/registry
~/.cargo/git
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
restore-keys: ${{ runner.os }}-cargo-
- name: Cache target
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
with:
path: target
key: ${{ runner.os }}-python-ci-${{ hashFiles('**/Cargo.lock') }}
restore-keys: ${{ runner.os }}-python-ci-
- name: Install cargo-make
uses: taiki-e/install-action@e43a5023a747770bfcb71ae048541a681714b951 # v2.62.33
with:
tool: cargo-make
- name: Build Python package
run: cargo make py-build
- name: Format check
run: cargo make py-fmt-check
- name: Lint
run: cargo make py-lint
- name: Type check
run: cargo make py-type
- name: Run tests
run: cargo make py-test