TST: speed up env resolution with uv #1125
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: CI (bleeding edge) | |
# this workflow is heavily inspired from pandas, see | |
# https://github.com/pandas-dev/pandas/blob/master/.github/workflows/python-dev.yml | |
# goals: check stability against | |
# - dev version of Python, numpy, and matplotlib | |
# - building with future pip default options | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
paths: | |
- .github/workflows/bleeding-edge.yaml | |
schedule: | |
# run this every Wednesday at 3 am UTC | |
- cron: 0 3 * * 3 | |
workflow_dispatch: | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
name: Dev upstream | |
timeout-minutes: 60 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up Python Dev Version | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3.12-dev | |
- uses: yezz123/setup-uv@v4 | |
with: | |
uv-version: 0.2.18 | |
uv-venv: .venv | |
- name: Install dependencies | |
run: | | |
uv pip install --upgrade setuptools wheel | |
uv pip install --pre --only-binary ":all:" numpy matplotlib \ | |
--extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple | |
- name: Build library | |
run: | | |
uv pip install . --no-build-isolation | |
uv pip install --requirement requirements/tests.txt | |
- name: Run test suite | |
run: | | |
pytest --color yes --mpl-results-path=test_results | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: test_results | |
path: test_results/ |