[PATCH] python: mkvenv: fix messages printed by mkvenv

Paolo Bonzini posted 1 patch 2 months, 3 weeks ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20250822134652.1366100-1-pbonzini@redhat.com
Maintainers: John Snow <jsnow@redhat.com>, Cleber Rosa <crosa@redhat.com>
python/scripts/mkvenv.py | 4 ++++
1 file changed, 4 insertions(+)
[PATCH] python: mkvenv: fix messages printed by mkvenv
Posted by Paolo Bonzini 2 months, 3 weeks ago
The new Matcher class does not have a __str__ implementation, and therefore
it prints the debugging representation of the internal object:

  $ ../configure --enable-rust && make qemu-system-arm --enable-download
  python determined to be '/usr/bin/python3'
  python version: Python 3.13.6
  mkvenv: Creating non-isolated virtual environment at 'pyvenv'
  mkvenv: checking for LegacyMatcher('meson>=1.5.0')
  mkvenv: checking for LegacyMatcher('pycotap>=1.1.0')

Add the method to print the nicer

  mkvenv: checking for meson>=1.5.0
  mkvenv: checking for pycotap>=1.1.0

Cc: qemu-stable@nongnu.org
Cc: John Snow <jsnow@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 python/scripts/mkvenv.py | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/python/scripts/mkvenv.py b/python/scripts/mkvenv.py
index f102527c4de..9aed266df1b 100644
--- a/python/scripts/mkvenv.py
+++ b/python/scripts/mkvenv.py
@@ -184,6 +184,10 @@ def match(self, version_str: str) -> bool:
             )
         )
 
+    def __str__(self) -> str:
+        """String representation delegated to the backend."""
+        return str(self._m)
+
     def __repr__(self) -> str:
         """Stable debug representation delegated to the backend."""
         return repr(self._m)
-- 
2.50.1
Re: [PATCH] python: mkvenv: fix messages printed by mkvenv
Posted by Philippe Mathieu-Daudé 2 months, 3 weeks ago
On 22/8/25 15:46, Paolo Bonzini wrote:
> The new Matcher class does not have a __str__ implementation, and therefore
> it prints the debugging representation of the internal object:
> 
>    $ ../configure --enable-rust && make qemu-system-arm --enable-download
>    python determined to be '/usr/bin/python3'
>    python version: Python 3.13.6
>    mkvenv: Creating non-isolated virtual environment at 'pyvenv'
>    mkvenv: checking for LegacyMatcher('meson>=1.5.0')
>    mkvenv: checking for LegacyMatcher('pycotap>=1.1.0')
> 
> Add the method to print the nicer
> 
>    mkvenv: checking for meson>=1.5.0
>    mkvenv: checking for pycotap>=1.1.0
> 
> Cc: qemu-stable@nongnu.org
> Cc: John Snow <jsnow@redhat.com>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>   python/scripts/mkvenv.py | 4 ++++
>   1 file changed, 4 insertions(+)

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>


Re: [PATCH] python: mkvenv: fix messages printed by mkvenv
Posted by Manos Pitsidianakis 2 months, 3 weeks ago
On Fri, Aug 22, 2025 at 4:48 PM Paolo Bonzini <pbonzini@redhat.com> wrote:
>
> The new Matcher class does not have a __str__ implementation, and therefore
> it prints the debugging representation of the internal object:
>
>   $ ../configure --enable-rust && make qemu-system-arm --enable-download
>   python determined to be '/usr/bin/python3'
>   python version: Python 3.13.6
>   mkvenv: Creating non-isolated virtual environment at 'pyvenv'
>   mkvenv: checking for LegacyMatcher('meson>=1.5.0')
>   mkvenv: checking for LegacyMatcher('pycotap>=1.1.0')
>
> Add the method to print the nicer
>
>   mkvenv: checking for meson>=1.5.0
>   mkvenv: checking for pycotap>=1.1.0
>
> Cc: qemu-stable@nongnu.org
> Cc: John Snow <jsnow@redhat.com>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---

Reviewed-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>

>  python/scripts/mkvenv.py | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/python/scripts/mkvenv.py b/python/scripts/mkvenv.py
> index f102527c4de..9aed266df1b 100644
> --- a/python/scripts/mkvenv.py
> +++ b/python/scripts/mkvenv.py
> @@ -184,6 +184,10 @@ def match(self, version_str: str) -> bool:
>              )
>          )
>
> +    def __str__(self) -> str:
> +        """String representation delegated to the backend."""
> +        return str(self._m)
> +
>      def __repr__(self) -> str:
>          """Stable debug representation delegated to the backend."""
>          return repr(self._m)
> --
> 2.50.1
>
>