qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 1/2] tests/requirements.txt: bump up avocado-framework versio


From: Cleber Rosa
Subject: Re: [PATCH 1/2] tests/requirements.txt: bump up avocado-framework version to 101.0
Date: Thu, 20 Apr 2023 23:42:57 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0


On 3/27/23 07:50, Kautuk Consul wrote:
Avocado version 101.0 has a fix to re-compute the checksum
of an asset file if the algorithm used in the *-CHECKSUM
file isn't the same as the one being passed to it by the
avocado user (i.e. the avocado_qemu python module).
In the earlier avocado versions this fix wasn't there due
to which if the checksum wouldn't match the earlier
checksum (calculated by a different algorithm), the avocado
code would start downloading a fresh image from the internet
URL thus making the test-cases take longer to execute.

Bump up the avocado-framework version to 101.0.

Hi Kautuk,

First of all, thanks for working on this, and thanks to Hariharan for testing it.

I'd like to give some context which not everyone may be aware of.  Avocado 101.0 is a very different when compared with 88.1. Everything related to the execution of tests is brand new.  To be more precise, on version 91.0[1], this new runner[2] became the default. On version 97.0, the old runner implementation (currently in use in QEMU) was finally removed.

On most releases since then, I've been running the QEMU tests with the latest Avocado, and finding issues that are (as resources allow) addressed in later versions.   As you probably noticed, Avocado 101.0 runs the QEMU tests without much (or any) visible issues for most people.  But, I'm aware of two pending issues that may or may not be a big deal to users:

I) The logging behavior is a bit different since Avocado 88.1. At a given point it was considered that Avocado should not mess around inadvertently with Python's root logger, and should be more picky about it includes in logs.  For most cases, a simple workaround[4] does the trick.  But, for some other use cases (say for 3rd party libraries' logs you want logged alongside Avocado's logs) there's a pending PR[5] that will take care of all known limitations.

II) The support for killing tests (internally in Avocado represented as more generic "tasks") and all its children is a bit lacking.  This is an issue I'm actively working on[6].  This may leave some processes (such as "qemu-system-*") running even after a test was interrupted.

Fixes for both of these issues are due to be in version 102.0. The ETA for version 102.0 is 1-2 weeks.

With that being said, I'm more than OK with this patch (alongside PATCH 2, without which havoc ensues :) provided people understand the two pending issues above.  If this patch is taken before Avocado 102.0 is released, the delta from 101.0 would be much smaller, so it should be an easier change to test.

Cheers,

- Cleber.


[1] - https://avocado-framework.readthedocs.io/en/101.0/releases/91_0.html

[2] - The new runner is called "nrunner" and I am to be blamed for the naming lacking any originality

[3] - https://avocado-framework.readthedocs.io/en/101.0/releases/97_0.html#users-test-writers

[4] - https://gitlab.com/cleber.gnu/qemu/-/commit/a9f39c4f6671b756196a185c7275eb7ebd13e588

[5] - https://github.com/avocado-framework/avocado/pull/5645

[6] - https://github.com/avocado-framework/avocado/issues/4994





reply via email to

[Prev in Thread] Current Thread [Next in Thread]