Fix job skip condition by interpreting Python version as int #154
Workflow file for this run
This file contains 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
name: Lint and test nanobind-bazel | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
buildifier: | |
name: Lint Bazel files with buildifier | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install uv | |
uses: astral-sh/setup-uv@v4 | |
- name: Run pre-commit checks | |
run: uvx pre-commit run --all-files --verbose --show-diff-on-failure | |
test: | |
name: Test nanobind_example on ${{ matrix.os }} w/ Python ${{ matrix.python-version }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, macos-latest, windows-latest] | |
python-version: [3.8, 3.9, "3.10", 3.11, 3.12, 3.13] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install uv | |
uses: astral-sh/setup-uv@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Check out nanobind example repo | |
uses: actions/checkout@v4 | |
with: | |
repository: wjakob/nanobind_example | |
path: nanobind_example | |
ref: bazel | |
- name: Patch nanobind_example stubgen target | |
run: git apply ${{github.workspace }}/stubgen.patch | |
working-directory: ${{ github.workspace }}/nanobind_example | |
- name: Override nanobind_bazel pin in MODULE.bazel | |
run: python fixup_module_bazel.py ${{ github.workspace}}/nanobind_example | |
- name: Build and test nanobind_example on ${{ matrix.os }} | |
run: | | |
uv sync --no-editable | |
uv run python -c "import nanobind_example; assert nanobind_example.add(1, 2) == 3" | |
working-directory: ${{ github.workspace }}/nanobind_example | |
- name: Check ${{ matrix.os }} CPython>=3.12 wheels for stable ABI violations | |
if: matrix.python-version >= 3.12 | |
run: | | |
uv pip install abi3audit | |
uv build --wheel -o dist | |
uv run -m abi3audit dist/*.whl --verbose --summary | |
shell: bash | |
working-directory: ${{ github.workspace }}/nanobind_example |