qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: John Snow <jsnow@redhat.com>
Cc: Gustavo Romero <gustavo.romero@linaro.org>,
	Paolo Bonzini <pbonzini@redhat.com>,
	qemu-devel@nongnu.org, alex.bennee@linaro.org,
	berrange@redhat.com, qemu-arm@nongnu.org
Subject: Re: [PATCH v5 2/9] python: Install pygdbmi in meson's venv
Date: Tue, 14 Oct 2025 21:19:36 +0200	[thread overview]
Message-ID: <e6bf49c3-b115-4359-a27c-8ff574aed005@redhat.com> (raw)
In-Reply-To: <CAFn=p-aYSo15pW+wBKsAOFdf9PyniZf4R2TcvMNJaRPULxVL9w@mail.gmail.com>

On 14/10/2025 21.05, John Snow wrote:
> On Tue, Oct 14, 2025 at 2:59 PM Thomas Huth <thuth@redhat.com> wrote:
>>
>> On 14/10/2025 20.55, John Snow wrote:
>>> On Tue, Oct 14, 2025 at 2:21 PM Thomas Huth <thuth@redhat.com> wrote:
>>>>
>>>> On 14/10/2025 19.39, John Snow wrote:
>>>>> On Wed, Oct 1, 2025 at 10:09 PM Gustavo Romero
>>>>> <gustavo.romero@linaro.org> wrote:
>>>>>>
>>>>>> The upcoming changes in the reverse_debugging functional test to remove
>>>>>> Avocado as a dependency will require pygdbmi for interacting with GDB,
>>>>>> so install it in meson's venv (located in the build dir's pyvenv/).
>>>>>>
>>>>>> Reviewed-by: Thomas Huth <thuth@redhat.com>
>>>>>> Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org>
>>>>>> ---
>>>>>>     pythondeps.toml | 1 +
>>>>>>     1 file changed, 1 insertion(+)
>>>>>>
>>>>>> diff --git a/pythondeps.toml b/pythondeps.toml
>>>>>> index 16fb2a989c..98e99e7900 100644
>>>>>> --- a/pythondeps.toml
>>>>>> +++ b/pythondeps.toml
>>>>>> @@ -33,3 +33,4 @@ sphinx_rtd_theme = { accepted = ">=0.5", installed = "1.2.2" }
>>>>>>
>>>>>>     [testdeps]
>>>>>>     qemu.qmp = { accepted = ">=0.0.3", installed = "0.0.3" }
>>>>>> +pygdbmi = { accepted = ">=0.11.0.0", installed = "0.11.0.0" }
>>>>>> --
>>>>>> 2.34.1
>>>>>>
>>>>>
>>>>> Do we need to vendor pygdbmi? Currently, mkvenv does not consult
>>>>> online sources and so if this package is missing, pulling in testdeps
>>>>> will fail.
>>>>
>>>> This is handled by the "check-venv" target which is called now when you do a
>>>> "make check-functional". See:
>>>>
>>>>     https://gitlab.com/qemu-project/qemu/-/commit/75b1786996c422878d09bd12f166004a7d32e459
>>>>
>>>> Works fine for me, did you hit any issues here?
>>>>
>>>>     Thomas
>>>
>>> Ah-ha. I am working on dropping qemu.qmp from the tree and had moved
>>> this machinery into mkvenv.py - I didn't realize that the Makefile
>>> invocation here passes `--online`. The core groups for mkvenv still
>>> operate offline only, I didn't realize we let it go online for tests.
>>>
>>> Before these dependencies get more numerous: do we accept that "make
>>> check" might only work if you are online, or do we want to enforce the
>>> idea that "make check" should always work offline only?
>>>
>>> (like "make check" works offline and "make check-extras" may require
>>> internet for deps?)
>>
>> "make check" works offline (it does not include "check-functional"). It's
>> only "make check-functional" that requires an internet connection. It
>> required this for downloading the assets for the functional tests already,
>> so adding "check-venv" here did not hurt.
>>
>>    Thomas
> 
> OK, got it. For *my* purposes (and this has nothing to do with this
> patch anymore, I see that it's fine as-is) I need to pull qemu.qmp
> into the testing venv /offline/ for the default "make check"
> invocation and I intended to vendor qemu.qmp to accomplish that.

Makes sense. I did the same for pycotap a year ago.

> With this dep here, installing "testdeps" offline now fails, so either:
> 
> (1) I vendor pygdbmi so it can be installed offline, or
> (2) I split the test deps into two groups; offline and online.

Please go with option (2). We likely should add more deps for the functional 
tests one day (e.g. a bunch of tests are using "numpy" and "cv2" - and 
currently these need to be installed in the host env manually), so adding 
all these via option (1) won't scale in the long run.

  Thomas



  reply	other threads:[~2025-10-14 19:20 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-02  2:04 [PATCH v5 0/9] tests/functional: Adapt reverse_debugging to run w/o Avocado Gustavo Romero
2025-10-02  2:04 ` [PATCH v5 1/9] tests/functional: Re-activate the check-venv target Gustavo Romero
2025-10-02 13:06   ` Daniel P. Berrangé
2025-10-02 16:08   ` Thomas Huth
2025-10-02  2:04 ` [PATCH v5 2/9] python: Install pygdbmi in meson's venv Gustavo Romero
2025-10-02 13:06   ` Daniel P. Berrangé
2025-10-14 17:39   ` John Snow
2025-10-14 18:21     ` Thomas Huth
2025-10-14 18:55       ` John Snow
2025-10-14 18:59         ` Thomas Huth
2025-10-14 19:05           ` John Snow
2025-10-14 19:19             ` Thomas Huth [this message]
2025-10-02  2:04 ` [PATCH v5 3/9] tests/functional: Provide GDB to the functional tests Gustavo Romero
2025-10-02 13:08   ` Daniel P. Berrangé
2025-10-02  2:04 ` [PATCH v5 4/9] tests/functional: Add GDB class Gustavo Romero
2025-10-02 13:11   ` Daniel P. Berrangé
2025-10-02 16:24     ` Alex Bennée
2025-10-02  2:04 ` [PATCH v5 5/9] tests/functional: replace avocado process with subprocess Gustavo Romero
2025-10-02  2:04 ` [PATCH v5 6/9] tests/functional: drop datadrainer class in reverse debugging Gustavo Romero
2025-10-02  2:04 ` [PATCH v5 7/9] tests/functional: Add decorator to skip test on missing env vars Gustavo Romero
2025-10-02 13:12   ` Daniel P. Berrangé
2025-10-02  2:04 ` [PATCH v5 8/9] tests/functional: Adapt reverse_debugging to run w/o Avocado Gustavo Romero
2025-10-02 13:13   ` Daniel P. Berrangé
2025-10-02  2:04 ` [PATCH v5 9/9] tests/functional: Adapt arches to reverse_debugging " Gustavo Romero
2025-10-02 13:14   ` Daniel P. Berrangé
2025-10-02 16:53 ` [PATCH v5 0/9] tests/functional: Adapt reverse_debugging to run " Thomas Huth
2025-10-02 17:52   ` Thomas Huth
2025-10-03 13:30     ` Gustavo Romero
2025-10-03 14:38       ` Gustavo Romero
2025-10-03 15:07         ` Gustavo Romero
2025-10-06  7:24           ` Thomas Huth
2025-10-06  9:58             ` Alex Bennée
2025-10-06 10:07               ` Thomas Huth

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=e6bf49c3-b115-4359-a27c-8ff574aed005@redhat.com \
    --to=thuth@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=berrange@redhat.com \
    --cc=gustavo.romero@linaro.org \
    --cc=jsnow@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-arm@nongnu.org \
    --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).