Skip to content

build(deps): bump actions/upload-artifact from 5 to 6 (#88) #301

build(deps): bump actions/upload-artifact from 5 to 6 (#88)

build(deps): bump actions/upload-artifact from 5 to 6 (#88) #301

Workflow file for this run

name: CI
on:
push:
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref_name }}
cancel-in-progress: true
env:
UV_VERSION: "0.9.4"
jobs:
pre-commit:
runs-on: ubuntu-latest
name: Pre-commit hooks (lint/format/spell/type, all files)
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version-file: "pyproject.toml"
- name: Install uv
uses: astral-sh/setup-uv@v7
with:
enable-cache: true
version: ${{ env.UV_VERSION }}
- name: Install dependencies
run: uv sync --all-groups
- name: Run pre-commit
run: uv run pre-commit run --show-diff-on-failure --color=always --all-files --hook-stage push
pytest:
name: Tests ${{ matrix.os }} / py${{ matrix.python }}
needs: pre-commit
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
python: ["3.11", "3.12", "3.13", "3.14"]
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v6
- name: Install uv
uses: astral-sh/setup-uv@v7
with:
enable-cache: true
version: ${{ env.UV_VERSION }}
- name: Set up Python ${{ matrix.python }}
run: uv python install ${{ matrix.python }}
- name: Install dependencies
run: uv sync --all-groups
- name: Running package tests
run: |
uv run pytest --cov --cov-report=xml
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
package:
name: Package smoke test
needs: pytest
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version-file: "pyproject.toml"
- name: Install uv
uses: astral-sh/setup-uv@v7
with:
version: ${{ env.UV_VERSION }}
enable-cache: true
- name: Install dependencies
run: uv sync --all-groups
- name: Build and install wheel
run: |
uv build
python -m venv pkgtest
source pkgtest/bin/activate
python -m pip install --upgrade pip
python -m pip install dist/*.whl
python -c "import plexosdb as m; print(getattr(m, '__version__', 'OK'))"