From b84dd5aadac7affdbd948da806e14faa4ce70e49 Mon Sep 17 00:00:00 2001 From: Felix Soubelet Date: Tue, 24 Jun 2025 15:08:35 +0200 Subject: [PATCH] update workflows to use uv only --- .github/workflows/README.md | 1 - .github/workflows/coverage.yml | 10 ++++------ .github/workflows/cron.yml | 13 ++++++------- .github/workflows/documentation.yml | 12 +++++------- .github/workflows/publish.yml | 10 ++++------ .github/workflows/tests.yml | 14 ++++++++------ 6 files changed, 27 insertions(+), 33 deletions(-) diff --git a/.github/workflows/README.md b/.github/workflows/README.md index f18725151..57d1f1913 100644 --- a/.github/workflows/README.md +++ b/.github/workflows/README.md @@ -23,7 +23,6 @@ It runs on `ubuntu-latest` and our latest supported Python version, and reports ## Regular Testing A `cron` workflow triggers every Saturday at 12:00 (UTC time) and runs the full testing suite, on all supported operating systems and supported Python versions. -It is very similar to the normal Testing Suite, but in addition also runs on `Python 3.x` so that newly released Python versions that would break tests are automatically included. ## Publishing diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index 4ad0af3ae..c3b06cb90 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -15,20 +15,18 @@ jobs: coverage: runs-on: ubuntu-latest env: - python-version: 3.12 + python-version: "3.13" steps: - uses: actions/checkout@v4 - - name: Install uv - uses: astral-sh/setup-uv@v3 + - name: Install uv and Python ${{ env.python-version }} + uses: astral-sh/setup-uv@v5 with: + python-version: ${{ env.python-version }} enable-cache: true cache-dependency-glob: pyproject.toml - - name: Set up Python ${{ env.python-version }} - run: uv python install ${{ env.python-version }} - - name: Install package with test dependencies run: uv sync --all-extras --dev diff --git a/.github/workflows/cron.yml b/.github/workflows/cron.yml index 89e9c652d..4ed079f71 100644 --- a/.github/workflows/cron.yml +++ b/.github/workflows/cron.yml @@ -16,21 +16,20 @@ jobs: strategy: matrix: os: [ubuntu-22.04, ubuntu-24.04, macos-latest, windows-latest] - python-version: ["3.10", 3.11, 3.12, 3.13] # crons should always run latest python hence 3.x + # We escape with quotes so it doesn't get interpreted as float (e.g. 3.10 -> 3.1 by GA's parser) + python-version: ["3.10", "3.11", "3.12", "3.13"] # add new versions when they are released fail-fast: false steps: - uses: actions/checkout@v4 - - name: Install uv - uses: astral-sh/setup-uv@v3 + - name: Install uv and Python ${{ env.python-version }} + uses: astral-sh/setup-uv@v5 with: + python-version: ${{ matrix.python-version }} enable-cache: true cache-dependency-glob: pyproject.toml - - - name: Set up Python ${{ matrix.python-version }} - run: uv python install ${{ matrix.python-version }} - + - name: Install package with test dependencies run: uv sync --all-extras --dev diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 8a04192a9..007c4450a 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -15,7 +15,7 @@ jobs: documentation: runs-on: ubuntu-latest env: - python-version: 3.12 + python-version: "3.12" steps: - uses: actions/checkout@v4 @@ -29,15 +29,13 @@ jobs: - name: Install optipng, dvipng and cm-super run: sudo apt-get install -y optipng dvipng cm-super - - name: Install uv - uses: astral-sh/setup-uv@v3 + - name: Install uv and Python ${{ env.python-version }} + uses: astral-sh/setup-uv@v5 with: + python-version: ${{ env.python-version }} enable-cache: true cache-dependency-glob: pyproject.toml - - - name: Set up Python ${{ env.python-version }} - run: uv python install ${{ env.python-version }} - + - name: Install package with test dependencies run: uv sync --all-extras --dev diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index a5a2c5349..cb94148bf 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -13,21 +13,19 @@ jobs: deploy: runs-on: ubuntu-latest env: - python-version: 3.13 + python-version: "3.13" steps: - uses: actions/checkout@v4 - - name: Install uv - uses: astral-sh/setup-uv@v3 + - name: Install uv and Python ${{ env.python-version }} + uses: astral-sh/setup-uv@v5 with: + python-version: ${{ env.python-version }} enable-cache: true cache-dependency-glob: pyproject.toml - - name: Set up Python ${{ env.python-version }} - run: uv python install ${{ env.python-version }} - - name: Build wheels and sdist run: make build diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index ee7aae436..07da5768b 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -16,23 +16,25 @@ jobs: strategy: matrix: os: [ubuntu-22.04, ubuntu-24.04, macos-latest, windows-latest] - python-version: ["3.10", 3.11, 3.12, 3.13] + # We escape with quotes so it doesn't get interpreted as float (e.g. 3.10 -> 3.1 by GA's parser) + python-version: ["3.10", "3.11", "3.12", "3.13"] # add new versions when they are released fail-fast: false steps: - uses: actions/checkout@v4 - - name: Install uv - uses: astral-sh/setup-uv@v3 + - name: Install uv and Python ${{ env.python-version }} + uses: astral-sh/setup-uv@v5 with: + python-version: ${{ matrix.python-version }} enable-cache: true cache-dependency-glob: pyproject.toml - - name: Set up Python ${{ matrix.python-version }} - run: uv python install ${{ matrix.python-version }} - - name: Install package with test dependencies run: uv sync --all-extras --dev + - name: Get acc-models-lhc + run: git clone -b 2022 https://gitlab.cern.ch/acc-models/acc-models-lhc.git --depth 1 + - name: Run Tests run: make tests