Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 13 additions & 12 deletions .github/workflows/cicd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,26 +17,27 @@ jobs:
fail-fast: true
matrix:
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
python-version: ["3.9", "3.10", "3.11", "3.12"]
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
defaults:
run:
shell: bash
runs-on: ${{ matrix.os }}
steps:
# Checkout repo
- name: Checkout
uses: actions/checkout@v3
# Install uv with cache
- name: Install the latest version of uv
uses: astral-sh/setup-uv@v3
uses: actions/checkout@v4
# Install uv and set Python version
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
python-version: ${{ matrix.python-version }}
# Sync dependencies
- name: Sync dependencies
run: uv sync
# Run tests without updating uv.lock
run: uv sync --python ${{ matrix.python-version }}
# Run tests
- name: Run tests
run: uv run --frozen pytest
run: uv run --frozen --python ${{ matrix.python-version }} pytest
# Code coverage to codecov.io
- name: Upload results to Codecov
uses: codecov/codecov-action@v4
Expand All @@ -60,10 +61,10 @@ jobs:
steps:
# Checkout repo
- name: Checkout
uses: actions/checkout@v3
# Install uv with cache
- name: Install the latest version of uv
uses: astral-sh/setup-uv@v3
uses: actions/checkout@v4
# Install uv
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
# Sync dependencies
Expand Down
8 changes: 8 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,14 @@ Ready to contribute? Here's how to set up `isp-trace-parser` for local developme

- Run tests by running `uv run --frozen pytest`

- Optionally, run tests across python versions with nox
Install `nox` (once, system wide, as a tool):
```bash
uv tool install nox
```

Then run `nox` from project directory

7. Commit your changes and open a pull request.

## Pull Request Guidelines
Expand Down
18 changes: 18 additions & 0 deletions noxfile.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import nox

nox.options.default_venv_backend = "uv"

PYTHON_VERSIONS = [
"3.10",
"3.11",
"3.12",
"3.13",
"3.14",
]


@nox.session(python=PYTHON_VERSIONS)
def tests(session: nox.Session) -> None:
"""Run the test suite."""
session.install("-e", ".", "--group", "dev")
session.run("pytest")
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ dependencies = [
"pyarrow>=18.1.0",
]
readme = "README.md"
requires-python = ">= 3.9"
requires-python = ">= 3.10"

[build-system]
requires = ["setuptools>=61.0", "wheel"]
Expand Down
Loading