|
From: | Paolo Bonzini |
Subject: | Re: [RFC PATCH v3 00/20] configure: create a python venv and ensure meson, sphinx |
Date: | Wed, 26 Apr 2023 10:35:47 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.1 |
On 4/26/23 10:21, Daniel P. Berrangé wrote:
So if you already have Sphinx, this should perform an upgrade to the latest version?Essentially I meant 'force' to mean*never* use the host python installation packages. Always install all the deps in the venv, even if they exist in the host with sufficient version met.
I think this is essentially --enable-isolated-venv. I don't think there is a usecase for "let the venv use system packages, but override them with pip right away".
--python=... # runtime used to create venv --enable-pip-groups=testing,devel,avocado,meson,sphinx --enable-pip=now # install all python deps now --enable-pip=on-demand # install qemu.git/meson/sphinx, delay the rest --enable-pip=no # offline --{enable,disable}-isolated-venv # let venv use system/distro if disableThis feels like a bit of overkill to me, and would create a hell of a lot of combinations to test if you expand the matrix of options.
Yeah, this is a bit overkill. I think we can reduce it to three cases, corresponding to:
- --enable-pypi --enable-isolated-venv - use pip to install everything, including for options in "auto" state (e.g. would install sphinx without --enable-docs)
- --enable-pypi --disable-isolated-venv - use pip to install missing packages. TBD whether to do so for options in "auto" state or only for "enabled" (i.e., TBD whether to install sphinx without --enable-docs).
- --disable-pypi (only meaningful for --disable-isolated-venv) - apart from vendored wheels, just use system site packages (same as QEMU <= 8.0)
I think we want to hash out this detail first, and thus we should leave online mode out of the non-RFC version. It can be implemented together with isolated mode.
Paolo
[Prev in Thread] | Current Thread | [Next in Thread] |