From 4c947dff1370d15267b300566a19f47c4a25cfdb Mon Sep 17 00:00:00 2001 From: Mehmet Salih Yavuz Date: Thu, 18 Jun 2026 14:00:54 +0300 Subject: [PATCH] =?UTF-8?q?chore(deps):=20finish=20pip=E2=86=92uv=20swap?= =?UTF-8?q?=20in=20Makefile=20and=20CI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use uv pip install at the remaining raw-pip call sites: the Makefile local-dev targets (superset, update-py, pre-commit) and the CI steps that build the editable package (bashlib.sh testdata/playwright_testdata, superset-app-cli, superset-python-presto-hive). uv already drives dependency compilation (uv pip compile via scripts/uv-pip-compile.sh) and every other install site (setup-backend, Dockerfile, docker/pip-install.sh). These were the last stragglers. The pinned requirements/*.txt and pyproject.toml are unchanged; this is the drop-in uv pip compatibility interface only. The Makefile bootstraps uv into the active venv first; CI sites already have uv installed system-wide via setup-backend. Intentional command -v uv fallbacks in docker-bootstrap.sh (older images) are left in place. --- .github/workflows/bashlib.sh | 4 ++-- .github/workflows/superset-app-cli.yml | 2 +- .../workflows/superset-python-presto-hive.yml | 2 +- Makefile | 17 ++++++++++++----- 4 files changed, 16 insertions(+), 9 deletions(-) diff --git a/.github/workflows/bashlib.sh b/.github/workflows/bashlib.sh index b7be35f7585f..e1b622b6afa0 100644 --- a/.github/workflows/bashlib.sh +++ b/.github/workflows/bashlib.sh @@ -114,7 +114,7 @@ testdata() { say "::group::Load test data" # must specify PYTHONPATH to make `tests.superset_test_config` importable export PYTHONPATH="$GITHUB_WORKSPACE" - pip install -e . + uv pip install --system -e . superset db upgrade superset load_test_users superset load_examples --load-test-data @@ -127,7 +127,7 @@ playwright_testdata() { say "::group::Load all examples for Playwright tests" # must specify PYTHONPATH to make `tests.superset_test_config` importable export PYTHONPATH="$GITHUB_WORKSPACE" - pip install -e . + uv pip install --system -e . superset db upgrade superset load_test_users superset load_examples diff --git a/.github/workflows/superset-app-cli.yml b/.github/workflows/superset-app-cli.yml index 8ebb2e6539cd..e08cea4a4fb8 100644 --- a/.github/workflows/superset-app-cli.yml +++ b/.github/workflows/superset-app-cli.yml @@ -61,7 +61,7 @@ jobs: - name: superset init if: steps.check.outputs.python run: | - pip install -e . + uv pip install --system -e . superset db upgrade superset load_test_users - name: superset load_examples diff --git a/.github/workflows/superset-python-presto-hive.yml b/.github/workflows/superset-python-presto-hive.yml index ee797119866c..b91122e6b167 100644 --- a/.github/workflows/superset-python-presto-hive.yml +++ b/.github/workflows/superset-python-presto-hive.yml @@ -149,7 +149,7 @@ jobs: run: celery-worker - name: Python unit tests (PostgreSQL) run: | - pip install -e .[hive] + uv pip install --system -e .[hive] ./scripts/python_tests.sh -m 'chart_data_flow or sql_json_flow' - name: Upload code coverage uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v7.0.0 diff --git a/Makefile b/Makefile index 3c35fb4c60d1..b1db1d6bf9c1 100644 --- a/Makefile +++ b/Makefile @@ -23,11 +23,14 @@ PYTHON=`command -v python3.11 || command -v python3.10` install: superset pre-commit superset: + # Bootstrap uv (the project's installer) into the active environment + pip install uv + # Install external dependencies - pip install -r requirements/development.txt + uv pip install -r requirements/development.txt # Install Superset in editable (development) mode - pip install -e . + uv pip install -e . # Create an admin user in your metadata database superset fab create-admin \ @@ -52,11 +55,14 @@ superset: update: update-py update-js update-py: + # Bootstrap uv (the project's installer) into the active environment + pip install uv + # Install external dependencies - pip install -r requirements/development.txt + uv pip install -r requirements/development.txt # Install Superset in editable (development) mode - pip install -e . + uv pip install -e . # Initialize the database superset db upgrade @@ -79,7 +85,8 @@ activate: pre-commit: # setup pre commit dependencies - pip3 install -r requirements/development.txt + pip install uv + uv pip install -r requirements/development.txt pre-commit install format: py-format js-format