Skip to content

mach: adopt uv and avoid system python#34632

Merged
mukilan merged 1 commit intoservo:mainfrom
mukilan:switch-to-uv-python-and-stop-requiring-system-python
Dec 16, 2024
Merged

mach: adopt uv and avoid system python#34632
mukilan merged 1 commit intoservo:mainfrom
mukilan:switch-to-uv-python-and-stop-requiring-system-python

Conversation

@mukilan
Copy link
Copy Markdown
Member

@mukilan mukilan commented Dec 16, 2024

This allows us to use uv for:

  1. Installing a pinned Python version
  2. Installing the dependency packages using uv's pip compatible interface.
  3. Bootstrapping mach without a Python installion on the host, using uv run

This change also introduces a new 'composite' GitHub action to setup python in the different CI workflows. There is no support for externally managed python installations and virtual environments. These could be added in the future.

Fixes #34095, #34547


@mukilan
Copy link
Copy Markdown
Member Author

mukilan commented Dec 16, 2024

This allows us to use `uv` for:
1. Installing a pinned Python version
2. Installing the dependency packages using `uv`'s pip compatible interface.
4. Bootstrapping `mach` without a Python installion on the host, using `uv
   run`

This change also introduces a new 'composite' GitHub action to setup
python in the different CI workflows. There is no support for externally
managed python installations and virtual environments. These could be
added in the future.

Fixes servo#34095, servo#34547


Signed-off-by: Mukilan Thiyagarajan <[email protected]>
@mukilan mukilan force-pushed the switch-to-uv-python-and-stop-requiring-system-python branch from 8f57f75 to 198b128 Compare December 16, 2024 02:46
@mukilan mukilan marked this pull request as ready for review December 16, 2024 03:34
@mukilan mukilan requested a review from jschwe as a code owner December 16, 2024 03:34
@mukilan mukilan requested review from mrobinson and removed request for jschwe December 16, 2024 03:34
@mukilan mukilan added this pull request to the merge queue Dec 16, 2024
Merged via the queue into servo:main with commit 88a35b3 Dec 16, 2024
@mukilan mukilan deleted the switch-to-uv-python-and-stop-requiring-system-python branch December 16, 2024 10:05
mukilan added a commit to mukilan/book that referenced this pull request Dec 18, 2024
`mach` now [depends on `uv`][1] being already installed on the host to
bootstrap the Python environment. This change updates the `Setting up
your environment` to include the steps for installing `uv` on the host
system.

[1]: servo/servo#34632

Signed-off-by: Mukilan Thiyagarajan <[email protected]>
delan pushed a commit to servo/book that referenced this pull request Dec 18, 2024
`mach` now [depends on `uv`][1] being already installed on the host to
bootstrap the Python environment. This change updates the `Setting up
your environment` to include the steps for installing `uv` on the host
system.

[1]: servo/servo#34632

Signed-off-by: Mukilan Thiyagarajan <[email protected]>
sagudev added a commit to sagudev/servo that referenced this pull request Dec 19, 2024
{"fail_fast": false, "matrix": [{"name": "WebGPU CTS", "workflow": "linux", "wpt_layout": "2020", "profile": "production", "unit_tests": false, "bencher": false, "wpt_args": "_webgpu"}]}
@sagudev sagudev mentioned this pull request Dec 19, 2024
sagudev added a commit to sagudev/servo that referenced this pull request Dec 19, 2024
{"fail_fast": false, "matrix": [{"name": "WebGPU CTS", "workflow": "linux", "wpt_layout": "2020", "profile": "production", "unit_tests": false, "bencher": false, "wpt_args": "_webgpu"}]}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Python 3.13.0 cannot .\mach bootstrap properly

2 participants