From: "Philippe Mathieu-Daudé" <philmd@linaro.org>
To: Paolo Bonzini <pbonzini@redhat.com>, qemu-devel@nongnu.org
Cc: jsnow@redhat.com, Jan Richter <jarichte@redhat.com>,
Cleber Rosa <crosa@redhat.com>
Subject: Re: [PATCH 0/9] Use known good releases when installing in pyvenv
Date: Thu, 10 Aug 2023 13:52:17 +0200 [thread overview]
Message-ID: <c8d32a26-b749-01b3-0b36-98e374947427@linaro.org> (raw)
In-Reply-To: <20230809092933.761524-1-pbonzini@redhat.com>
Hi Paolo,
On 9/8/23 11:29, Paolo Bonzini wrote:
> This series introduce a new installation command for mkvenv.py that
> retrieves the packages to be installed from a TOML file. This allows
> being more flexible in using the system version of a package, while at
> the same time using a known-good version when installing the package.
> This is important for packages that sometimes have backwards-incompatible
> changes or that depend on specific versions of their dependencies.
>
> For example, in the case of sphinx we can always use the last version
> that supports older versions of Python and especially docutils (Ubuntu
> 20.04 for example would not support sphinx 6.0), and in the case of
> Avocado we can avoid installing a package that conflicts with any
> plugins already existing in the system package path. This in turn
> enables using the same virtual environment for both the build and
> qemu-iotests. John has patches for this.
>
> For the configuration file, TOML was chosen because it was more human
> readable and easier to edit than JSON. A parser is available in the
> Python 3.11 standard library; for older versions, the API-compatible
> replacement tomli is very small (12k). I am introducing it as a vendored
> .whl file because it is not installed by default in most distros (unlike
> pip and setuptools which were introduced in 8.0) and because Debian
> 11 only has it in bullseye-backports. However, if preferred the patch
> "python: use vendored tomli" can be dropped. In that case, tomli will
> have to be installed from either PyPI or bullseye-backports.
>
> While tomli is bundled with pip, this is only true of recent versions
> of pip. Of all the supported OSes pretty much only FreeBSD has a recent
> enough version of pip while staying on Python <3.11. So we cannot use
> the same trick that is in place for distlib.
>
> In order to pick the tomli mapping, lcitool is updated to a recent
> version. As a side effect this updates from LEAP 15.4 to 15.5.
Does this fix the second point of commit eaf245becd ("Revert
"tests/requirements.txt: bump up avocado-framework version to 101.0"")
> Second, the recent changes to Python handling mean that there is
> a single virtual environment for all the build, instead of a separate
> one for testing.
?
If so, what's left to be able to run QEMU (Avocado) test suite on macOS
is the first point from the same commit:
> Avocado is not logging of command lines or terminal output, and
> not collecting Python logs outside the avocado namespace.
This seems to be fixed in Avocado 102.0:
https://avocado-framework.readthedocs.io/en/102.0/releases/102_0.html
> The root logger handler was restored. This enables all loggers
> out of avocado.* namespace by default.
Assuming this is enough for macOS, what would be the next change,
moving to 102.0 or integrate 102.0 in the current set? I.e.:
avocado-framework = { accepted = "(>=88.1, <93.0, 102.0)", ... }
? But I expect the "<93.0" filter to clash...
Thanks,
Phil.
next prev parent reply other threads:[~2023-08-10 11:52 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-09 9:29 [PATCH 0/9] Use known good releases when installing in pyvenv Paolo Bonzini
2023-08-09 9:29 ` [PATCH 1/9] python: mkvenv: tweak the matching of --diagnose to depspecs Paolo Bonzini
2023-08-09 9:29 ` [PATCH 2/9] python: mkvenv: introduce TOML-like representation of dependencies Paolo Bonzini
2023-08-09 9:29 ` [PATCH 3/9] python: mkvenv: add ensuregroup command Paolo Bonzini
2023-08-09 9:29 ` [PATCH 4/9] lcitool: bump libvirt-ci submodule and regenerate Paolo Bonzini
2023-08-09 9:29 ` [PATCH 5/9] configure: never use PyPI for Meson Paolo Bonzini
2023-08-09 9:29 ` [PATCH 6/9] python: use vendored tomli Paolo Bonzini
2023-08-09 9:29 ` [PATCH 7/9] configure: switch to ensuregroup Paolo Bonzini
2023-08-09 9:29 ` [PATCH 8/9] Revert "tests: Use separate virtual environment for avocado" Paolo Bonzini
2023-08-09 9:29 ` [PATCH 9/9] tests/docker: add python3-tomli dependency to containers Paolo Bonzini
2023-08-10 0:40 ` [PATCH 0/9] Use known good releases when installing in pyvenv John Snow
2023-08-10 11:52 ` Philippe Mathieu-Daudé [this message]
2023-08-10 11:56 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c8d32a26-b749-01b3-0b36-98e374947427@linaro.org \
--to=philmd@linaro.org \
--cc=crosa@redhat.com \
--cc=jarichte@redhat.com \
--cc=jsnow@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).