Migrate from poetry to uv #106
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 | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
workflow_dispatch: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
VERSION_UV: '0.4.7' | |
jobs: | |
lint: | |
timeout-minutes: 5 | |
runs-on: ubuntu-latest | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Install uv | |
uses: astral-sh/setup-uv@v2 | |
- name: setup uv | |
uses: eifinger/[email protected] | |
with: | |
version: ${{ env.VERSION_UV }} | |
enable-cache: true | |
- name: setup python | |
run: uv python install 3.8 | |
- name: uv sync | |
run: uv sync --frozen --dev | |
- name: codespell | |
run: uv run codespell . | |
- name: ruff check | |
run: uv run ruff check --output-format=github | |
- name: markdownlint | |
uses: DavidAnson/markdownlint-cli2-action@v16 | |
with: | |
config: ".markdownlint.yaml" | |
globs: "*.md" | |
- name: repo-review | |
uses: scientific-python/[email protected] | |
with: | |
plugins: sp-repo-review | |
- name: basedpyright | |
run: uv run basedpyright | |
- name: basedpyright --verifytypes | |
run: uv run basedpyright --ignoreexternal --verifytypes mainpy | |
test: | |
timeout-minutes: 5 | |
strategy: | |
matrix: | |
os: [ubuntu-latest, windows-latest] | |
# TODO: https://github.com/astral-sh/uv/issues/6697 | |
# python-version: ["3.8", "3.12", "3.13"] | |
python-version: ["3.8", "3.12",] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: setup uv | |
uses: astral-sh/setup-uv@v2 | |
with: | |
version: ${{ env.VERSION_UV }} | |
enable-cache: true | |
- name: setup python | |
run: uv python install ${{ matrix.python-version }} | |
- name: uv sync | |
run: uv sync --frozen --dev | |
- name: pytest | |
run: uv run pytest |