From 9f4464e8570f1dca02b689330cf83d345e3cf7a1 Mon Sep 17 00:00:00 2001 From: Paul Sanders Date: Mon, 25 Nov 2024 10:01:47 -0500 Subject: [PATCH] Bump setup-uv action v3 -> v4 --- src/github_actions.rs | 20 +++++++++---------- ..._save_ci_testing_linux_only_file_pyo3.snap | 2 +- ...s__save_ci_testing_multi_os_file_pyo3.snap | 2 +- ...s__tests__save_docs_publish_file_pyo3.snap | 2 +- ...ons__tests__save_docs_publish_file_uv.snap | 2 +- ...ons__tests__save_pypi_publish_file_uv.snap | 2 +- ...s__save_uv_ci_testing_linux_only_file.snap | 3 ++- ...sts__save_uv_ci_testing_multi_os_file.snap | 3 ++- 8 files changed, 19 insertions(+), 17 deletions(-) diff --git a/src/github_actions.rs b/src/github_actions.rs index 88680cb..e584b30 100644 --- a/src/github_actions.rs +++ b/src/github_actions.rs @@ -164,7 +164,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install uv - uses: astral-sh/setup-uv@v3 + uses: astral-sh/setup-uv@v4 with: enable-cache: true - name: Set up Python @@ -188,7 +188,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install uv - uses: astral-sh/setup-uv@v3 + uses: astral-sh/setup-uv@v4 with: enable-cache: true - name: Set up Python ${{{{ matrix.python-version }}}} @@ -307,7 +307,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install uv - uses: astral-sh/setup-uv@v3 + uses: astral-sh/setup-uv@v4 with: enable-cache: true - name: Set up Python @@ -333,7 +333,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install uv - uses: astral-sh/setup-uv@v3 + uses: astral-sh/setup-uv@v4 with: enable-cache: true - name: Set up Python ${{{{ matrix.python-version }}}} @@ -657,7 +657,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install uv - uses: astral-sh/setup-uv@v3 + uses: astral-sh/setup-uv@v4 with: enable-cache: true - name: Set up Python @@ -684,7 +684,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install uv - uses: astral-sh/setup-uv@v3 + uses: astral-sh/setup-uv@v4 with: enable-cache: true - name: Set up Python ${{{{ matrix.python-version }}}} @@ -809,7 +809,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install uv - uses: astral-sh/setup-uv@v3 + uses: astral-sh/setup-uv@v4 with: enable-cache: true - name: Set up Python @@ -834,7 +834,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install uv - uses: astral-sh/setup-uv@v3 + uses: astral-sh/setup-uv@v4 with: enable-cache: true - name: Set up Python ${{{{ matrix.python-version }}}} @@ -1268,7 +1268,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install uv - uses: astral-sh/setup-uv@v3 + uses: astral-sh/setup-uv@v4 with: enable-cache: true - name: Set up Python @@ -1425,7 +1425,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Install uv - uses: astral-sh/setup-uv@v3 + uses: astral-sh/setup-uv@v4 with: enable-cache: true - name: Set up Python diff --git a/src/snapshots/python_project__github_actions__tests__save_ci_testing_linux_only_file_pyo3.snap b/src/snapshots/python_project__github_actions__tests__save_ci_testing_linux_only_file_pyo3.snap index 9ac0526..f065173 100644 --- a/src/snapshots/python_project__github_actions__tests__save_ci_testing_linux_only_file_pyo3.snap +++ b/src/snapshots/python_project__github_actions__tests__save_ci_testing_linux_only_file_pyo3.snap @@ -3,4 +3,4 @@ source: src/github_actions.rs expression: content snapshot_kind: text --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n CARGO_TERM_COLOR: always\n RUST_BACKTRACE: 1\n RUSTFLAGS: \"-D warnings\"\n PYTHON_VERSION: \"3.9\"\njobs:\n clippy:\n name: Clippy\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install Rust\n run: |\n curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo clippy\n run: cargo clippy --all-targets -- --deny warnings\n fmt:\n name: Rustfmt\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install Rust\n run: |\n curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo fmt\n run: cargo fmt --all -- --check\n python-linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v3\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy my_project tests\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v3\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v5\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Test with pytest\n run: uv run pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n CARGO_TERM_COLOR: always\n RUST_BACKTRACE: 1\n RUSTFLAGS: \"-D warnings\"\n PYTHON_VERSION: \"3.9\"\njobs:\n clippy:\n name: Clippy\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install Rust\n run: |\n curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo clippy\n run: cargo clippy --all-targets -- --deny warnings\n fmt:\n name: Rustfmt\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install Rust\n run: |\n curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo fmt\n run: cargo fmt --all -- --check\n python-linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v4\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy my_project tests\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v4\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v5\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Test with pytest\n run: uv run pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_ci_testing_multi_os_file_pyo3.snap b/src/snapshots/python_project__github_actions__tests__save_ci_testing_multi_os_file_pyo3.snap index 80af568..b270f88 100644 --- a/src/snapshots/python_project__github_actions__tests__save_ci_testing_multi_os_file_pyo3.snap +++ b/src/snapshots/python_project__github_actions__tests__save_ci_testing_multi_os_file_pyo3.snap @@ -3,4 +3,4 @@ source: src/github_actions.rs expression: content snapshot_kind: text --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n CARGO_TERM_COLOR: always\n RUST_BACKTRACE: 1\n RUSTFLAGS: \"-D warnings\"\n PYTHON_VERSION: \"3.9\"\njobs:\n clippy:\n name: Clippy\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install Rust\n run: |\n curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo clippy\n run: cargo clippy --all-targets -- --deny warnings\n fmt:\n name: Rustfmt\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install Rust\n run: |\n curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo fmt\n run: cargo fmt --all -- --check\n python-linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v3\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy my_project tests\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v3\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v5\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Test with pytest\n run: uv run pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n CARGO_TERM_COLOR: always\n RUST_BACKTRACE: 1\n RUSTFLAGS: \"-D warnings\"\n PYTHON_VERSION: \"3.9\"\njobs:\n clippy:\n name: Clippy\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install Rust\n run: |\n curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo clippy\n run: cargo clippy --all-targets -- --deny warnings\n fmt:\n name: Rustfmt\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install Rust\n run: |\n curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo fmt\n run: cargo fmt --all -- --check\n python-linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v4\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy my_project tests\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v4\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v5\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Test with pytest\n run: uv run pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_docs_publish_file_pyo3.snap b/src/snapshots/python_project__github_actions__tests__save_docs_publish_file_pyo3.snap index 489c9c9..b9bdef1 100644 --- a/src/snapshots/python_project__github_actions__tests__save_docs_publish_file_pyo3.snap +++ b/src/snapshots/python_project__github_actions__tests__save_docs_publish_file_pyo3.snap @@ -3,4 +3,4 @@ source: src/github_actions.rs expression: content snapshot_kind: text --- -"name: Docs Publish\non:\n release:\n types:\n - published\njobs:\n deploy:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v3\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.12\"\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Deploy Docs\n run: uv run mkdocs gh-deploy --force\n" +"name: Docs Publish\non:\n release:\n types:\n - published\njobs:\n deploy:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v4\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.12\"\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Deploy Docs\n run: uv run mkdocs gh-deploy --force\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_docs_publish_file_uv.snap b/src/snapshots/python_project__github_actions__tests__save_docs_publish_file_uv.snap index 489c9c9..b9bdef1 100644 --- a/src/snapshots/python_project__github_actions__tests__save_docs_publish_file_uv.snap +++ b/src/snapshots/python_project__github_actions__tests__save_docs_publish_file_uv.snap @@ -3,4 +3,4 @@ source: src/github_actions.rs expression: content snapshot_kind: text --- -"name: Docs Publish\non:\n release:\n types:\n - published\njobs:\n deploy:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v3\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.12\"\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Deploy Docs\n run: uv run mkdocs gh-deploy --force\n" +"name: Docs Publish\non:\n release:\n types:\n - published\njobs:\n deploy:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v4\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.12\"\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Deploy Docs\n run: uv run mkdocs gh-deploy --force\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_pypi_publish_file_uv.snap b/src/snapshots/python_project__github_actions__tests__save_pypi_publish_file_uv.snap index 1a84bd9..8478fd3 100644 --- a/src/snapshots/python_project__github_actions__tests__save_pypi_publish_file_uv.snap +++ b/src/snapshots/python_project__github_actions__tests__save_pypi_publish_file_uv.snap @@ -3,4 +3,4 @@ source: src/github_actions.rs expression: content snapshot_kind: text --- -"name: PyPi Publish\non:\n release:\n types:\n - published\njobs:\n deploy:\n runs-on: ubuntu-latest\n permissions:\n # For PyPI's trusted publishing.\n id-token: write\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v3\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.12\"\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Build package\n run: uv build\n - name: Publish package\n run: uv publish\n" +"name: PyPi Publish\non:\n release:\n types:\n - published\njobs:\n deploy:\n runs-on: ubuntu-latest\n permissions:\n # For PyPI's trusted publishing.\n id-token: write\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v4\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.12\"\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Build package\n run: uv build\n - name: Publish package\n run: uv publish\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_linux_only_file.snap b/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_linux_only_file.snap index d07e5b5..8859de2 100644 --- a/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_linux_only_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_linux_only_file.snap @@ -1,5 +1,6 @@ --- source: src/github_actions.rs expression: content +snapshot_kind: text --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v3\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v3\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v5\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Test with pytest\n run: uv run pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v4\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v4\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v5\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Test with pytest\n run: uv run pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_multi_os_file.snap b/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_multi_os_file.snap index af80600..d99d7aa 100644 --- a/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_multi_os_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_multi_os_file.snap @@ -1,5 +1,6 @@ --- source: src/github_actions.rs expression: content +snapshot_kind: text --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n UV_CACHE_DIR: /tmp/.uv-cache\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v3\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v3\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v5\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Test with pytest\n run: uv run pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n UV_CACHE_DIR: /tmp/.uv-cache\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v4\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v4\n - name: Install uv\n uses: astral-sh/setup-uv@v4\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v5\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Test with pytest\n run: uv run pytest\n"