99.0 The Chosen
The Avocado team is proud to present another release: Avocado 99.0, AKA “The Chosen”, is now available!
Release documentation: Avocado 99.0
Ansible modules can now be used as dependencies. For instance, instead of asking test writers to write code to say, create user accounts that will be used during a test, a developer can simply use ansible’s
Likewise, if a test needs a service installed or up and running: instead of writing all that code, the test writer can describe that dependency using the
A Podman image can now be treated as a dependency. This is currently mostly useful to tests that will manually create containers, but it’s expected to also be leveraged by the podman spawner and suite and job level dependencies in the near future.
A new type of plugin,
Cache, has been introduced and is responsible for manipulating with cache, and it’s representation through the Avocado interface. It is currently implemented for the
All nrunner functionality that is activated through the command line by means of an option like
--nrunner-are deprecated. Options without the
--nrunner-prefix are already available. In the next Avocado version, only the command line options without the
--nrunnerprefix will be available. The same deprecation was applied to the
--test-runneroption, and users are encouraged to use
Updates to the nrunner documentation, fixing a number of outdated and incorrect information.
A problem caused by times when a test is interrupted by timeout before it even starts has been fixed.
Under specific versions of podman, when querying for information on the available containers, while other container operations are running will result in a “Failed getting information about container” error. A workaround for that behavior has been applied.
The HTML report now contains an “ALL” selection for test types, instead of an empty value.
avocado.utils.data_factory.make_dir_and_populate()would crash because it used a string instead of bytes when writing to files.
avocado.utils.software_manager.backends.dpkg.list_files()assumed having a string instead of bytes when splitting lines.
The independence of
--nrunner-status-server-listenwas not being respected. Because Tasks are being created with whatever is the current status server URI (either determined automatically, or with the “listen” config), the “uri” config went unused. These issues are now fixed.
A situation where the
PYTHONPATHenvironment variable would grow for each test executed was fixed.
A major performance regression has been fixed, under which a
avocado.core.nrunner.runnable.Runnableinstantiation would many times imply the execution of an
avocado-runner-$kindcommand, was fixed.
Testing for s390x and ppc64le were migrated from Travis-CI to Packit (which runs tests during the package builds) because of reliability issues.
Some nrunner related tests that were dropped because of the input URI format for unittests changed, were adapted and reintroduced because they are valid in covering some functionality.
The “exec-like” runners (
robot) were all refactored and now share a lot more code.
Some skip conditions for tests related to
disk(because of issues in other projects and CI limitations) have been lifted.
The static syntax checks, based on
black, will now print the differences and use color output.
The version of macOS used on GitHub Actions was bumped from
For more information, please check out the complete Avocado changelog.