Skip to content

ci: replace legacy tox workflow with uv-based CI pipeline#7

Merged
jcardozo-eth merged 1 commit intomasterfrom
ci/github-actions
Feb 26, 2026
Merged

ci: replace legacy tox workflow with uv-based CI pipeline#7
jcardozo-eth merged 1 commit intomasterfrom
ci/github-actions

Conversation

@jcardozo-eth
Copy link
Member

Summary

The repository inherited a run_tests.yml workflow from the upstream infrae/pyoai that targeted Python 2.7 and 3.6–3.8 using tox as the test runner, with outdated action versions (actions/checkout@v1, actions/setup-python@v1). This workflow has been non-functional since the modernization effort began — the project now requires Python 3.10+ and no longer ships a tox.ini.

This PR removes the legacy workflow entirely and replaces it with a modern ci.yml built around uv, matching the same toolchain used for local development. By using uv sync and uv run pytest in CI, the test environment is resolved from the same pyproject.toml and uv.lock that developers use locally, ensuring reproducible builds across local machines and CI runners.

Changes

  • Deleted run_tests.yml — obsolete tox-based workflow for Python 2.7/3.6–3.8
  • New ci.yml — modern uv-based CI pipeline
  • Test matrix: Python 3.10, 3.11, 3.12, 3.13 running in parallel on pinned ubuntu-24.04
  • Triggers: push to any branch (catch issues early) and pull requests to master
  • Pinned action versions: actions/checkout@v6.0.2, astral-sh/setup-uv@v7.3.0
  • Minimal pipeline: uv sync --extra test for dependency installation, uv run pytest for test execution — no caching or extra complexity

The old run_tests.yml targeted Python 2.7 and 3.6-3.8 using tox and
outdated action versions (checkout@v1, setup-python@v1). Remove it
entirely and add a modern ci.yml that uses uv as the sole toolchain.

- Test matrix: Python 3.10, 3.11, 3.12, 3.13 in parallel on ubuntu-24.04
- Triggers on push to any branch and pull requests to master
- Pinned actions: checkout@v6.0.2, setup-uv@v7.3.0
- Steps: uv sync --extra test, uv run pytest
@jcardozo-eth jcardozo-eth merged commit 5085a76 into master Feb 26, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant