From 133b529d8c48ed2d41ce46e2c9e81793bb2c03ce Mon Sep 17 00:00:00 2001 From: Lukas Turcani Date: Thu, 31 Oct 2024 20:10:22 +0000 Subject: [PATCH] Use uv --- .github/workflows/publish_release.yaml | 14 +++----- .github/workflows/tests.yaml | 48 ++++++++++++++++---------- justfile | 2 +- pyproject.toml | 2 +- 4 files changed, 36 insertions(+), 30 deletions(-) diff --git a/.github/workflows/publish_release.yaml b/.github/workflows/publish_release.yaml index 20a9e10..f09bf77 100644 --- a/.github/workflows/publish_release.yaml +++ b/.github/workflows/publish_release.yaml @@ -10,14 +10,10 @@ jobs: VERSION: ${{ github.ref_name }} steps: - uses: actions/checkout@v4 + - uses: astral-sh/setup-uv@v3 + with: + enable-cache: true - uses: actions/setup-python@v5 with: - python-version: "3.12" - cache: "pip" - - run: pip install -e '.[dev]' - - run: python -m build - - run: - twine upload - -u __token__ - -p ${{ secrets.PYPI_API_TOKEN }} - dist/* + python-version-file: "pyproject.toml" + - run: uv publish diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 7e3b81e..ed203ba 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -10,49 +10,59 @@ jobs: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 + - uses: astral-sh/setup-uv@v3 + with: + enable-cache: true - uses: actions/setup-python@v5 with: - python-version: "3.12" - cache: "pip" - - run: pip install -e '.[dev]' - - run: ruff check src/ tests/ docs/source/ examples/ + python-version-file: "pyproject.toml" + - run: uv sync --all-extras --dev + - run: uv run ruff check src/ tests/ docs/source/ examples/ mypy: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 + - uses: astral-sh/setup-uv@v3 + with: + enable-cache: true - uses: actions/setup-python@v5 with: - python-version: "3.12" - cache: "pip" - - run: pip install -e '.[dev]' - - run: mypy src/ tests/ docs/source/ examples/ + python-version-file: "pyproject.toml" + - run: uv sync --all-extras --dev + - run: uv run mypy src/ tests/ docs/source/ examples/ ruff-format: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 + - uses: astral-sh/setup-uv@v3 + with: + enable-cache: true - uses: actions/setup-python@v5 with: - python-version: "3.12" - cache: "pip" - - run: pip install -e '.[dev]' - - run: ruff format --check src/ tests/ docs/source/ examples/ + python-version-file: "pyproject.toml" + - run: uv sync --all-extras --dev + - run: uv run ruff format --check src/ tests/ docs/source/ examples/ pytest: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 + - uses: astral-sh/setup-uv@v3 + with: + enable-cache: true - uses: actions/setup-python@v5 with: - python-version: "3.12" - cache: "pip" - - run: pip install -e '.[dev]' - - run: pytest --cov=src --cov-report term-missing + python-version-file: "pyproject.toml" + - run: uv sync --all-extras --dev + - run: uv run pytest --cov=src --cov-report term-missing doctest: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 + - uses: astral-sh/setup-uv@v3 + with: + enable-cache: true - uses: actions/setup-python@v5 with: - python-version: "3.12" - cache: "pip" - - run: pip install -e '.[dev]' + python-version-file: "pyproject.toml" + - run: uv sync --all-extras --dev - run: make -C docs doctest diff --git a/justfile b/justfile index 7e2924f..6eabc38 100644 --- a/justfile +++ b/justfile @@ -48,4 +48,4 @@ fix: # Build a release. build: - python -m build + uv build diff --git a/pyproject.toml b/pyproject.toml index 42b72d9..e635200 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,7 +9,7 @@ maintainers = [ ] dependencies = [] -requires-python = ">=3.11" +requires-python = ">=3.13" dynamic = ["version"] readme = "README.rst" description = "Does things for you."