From c64c7da102446990092ef9a988c878443df4bdb0 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 7 Sep 2026 19:34:26 +0000 Subject: [PATCH] Switch local and CI installs to uv Co-authored-by: afeld <86842+afeld@users.noreply.github.com> --- .github/actions/setup/action.yml | 7 +++++-- .vscode/settings.json | 2 +- Makefile | 9 +++------ extras/autograder/source/setup.sh | 6 ++++-- 4 files changed, 13 insertions(+), 11 deletions(-) diff --git a/.github/actions/setup/action.yml b/.github/actions/setup/action.yml index a8ef5b68..043aedfc 100644 --- a/.github/actions/setup/action.yml +++ b/.github/actions/setup/action.yml @@ -6,9 +6,12 @@ runs: steps: - name: Set up Python uses: actions/setup-python@v6 + - name: Set up uv + uses: astral-sh/setup-uv@v6 with: - cache: pip + enable-cache: true + cache-dependency-glob: requirements.txt - name: Install packages - run: pip install -r requirements.txt + run: uv pip install --system -r requirements.txt # https://stackoverflow.com/a/71042698/358804 shell: bash diff --git a/.vscode/settings.json b/.vscode/settings.json index 7c999231..86226f58 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -15,5 +15,5 @@ }, "workbench.externalBrowser": "chrome", "python-envs.defaultEnvManager": "ms-python.python:venv", - "python-envs.defaultPackageManager": "ms-python.python:pip" + "python-envs.defaultPackageManager": "ms-python.python:uv" } diff --git a/Makefile b/Makefile index 310bfb6d..3d46b4fd 100644 --- a/Makefile +++ b/Makefile @@ -26,16 +26,13 @@ site: jupyter-book build --all -W -n --keep-going . setup: - python -m venv .venv - . .venv/bin/activate && \ - pip install \ + uv venv .venv + uv pip install --python .venv/bin/python \ -r requirements.txt \ -r extras/autograder/source/requirements.txt update_packages: - . .venv/bin/activate && \ - pip install --upgrade pip && \ - pip install --upgrade -r requirements.txt + uv pip install --python .venv/bin/python --upgrade -r requirements.txt ./extras/scripts/update_lectures.sh diff --git a/extras/autograder/source/setup.sh b/extras/autograder/source/setup.sh index eb16be20..dbbd2411 100755 --- a/extras/autograder/source/setup.sh +++ b/extras/autograder/source/setup.sh @@ -2,6 +2,8 @@ set -ex -apt-get install -y python3 python3-pip +apt-get install -y python3 curl +curl -LsSf https://astral.sh/uv/install.sh | sh +export PATH="$HOME/.local/bin:$PATH" -pip3 install -r /autograder/source/requirements.txt +uv pip install --system -r /autograder/source/requirements.txt