83.0 Crime and Punishment
The Avocado team is proud to present another release: Avocado 83.0, AKA “Crime and Punishment”, is now available!
Release documentation: Avocado 83.0
All configuration whose namespace start with the
runner.prefix will be forwarded to runners. This allows centrally managed configuration to be sent to runners executed by different types of spawners.
exec-testrunner now accepts a configuration (
runner.exectest.exitcodes.skip) that will determine valid exit codes to be treated as
The Loader based on the YAML Multiplexer has been removed. Users are advised to use Job API and multiple test suites to fulfill similar use cases.
The GLib plugin has been removed. Users are advised to use TAP test types instead, given that GLib’s GTest framework now defaults to producing TAP output.
A runner for GO, aka golang, tests, compatible with the nrunner, has been introduced.
The paginator feature is now a boolean style option. To enable it, use
The nrunner status server now has two different options regarding its URI. The first one,
--nrunner-status-server-listendetermines the URI in which a status server will listen to. The second one,
--nrunner-status-server-uridetermines where the results will be sent to. This allows status server to be on a different network location than the tasks reporting to it.
avocado-software-managercommand line application now properly returns exit status for failures.
The Podman spawner now exposes command line options to set the container image (
--spawner-podman-image) and the Podman binary (
--spawner-podman-bin) used on an
Command line options related to results, such as
--html-job-resultcurrently take a
offparameter. That is now deprecated and a warning has been added. Those options will soon become “proper boolean” options (such as
avocado.utils.network.interfaces.NetworkInterface.is_operational_link_up()now behave properly on interfaces based on bonding.
The selection of an nrunner based runner, from its Python module name/path has been fixed.
avocado.utils.processutilities that use
sudowould check for executable permissions on the binary. Many systems will have
sudowith the executable bit set, but not the readable bit. This is now accounted for.
The “external runner” feature now works properly when used outside of a
avocadocommand line invocation, that is, when used in a script based on the Job APIs.
A new module
avocado.utils.dmesgwith utilities for interacting with the kernel ring buffer messages.
A new utility
avocado.utils.linux.is_selinux_enforcing()allows quick check of SELinux enforcing status.
avocado.utils.network.interfacesnow support configuration files compatible with SuSE distros.
avocado.utils.network.interfaces.NetworkInterface.remove_link()is a new utility method that allows one to delete a virtual interface link.
avocado.utils.network.hosts.Host.get_default_route_interface()is a new utility method that allows one to get a list of default routes interfaces.
avocado.utils.cpulibrary now properly handles s390x z13 family of CPUs.
avocado.utils.pmemlibrary introduced a number of new utility methods, adding support for daxctl operations such as offline-memory, online-memory and reconfigure-device.
The safeloader has been migrated from using
imp(deprecated) to the more modern
Instead of using hardcoded
..to refer to the parent directory, portability was improved by switching to
Runners based on the
avocado.core.nrunnermodule, when called on the command line, can now omit the
--kindparameter, if information can be gathered from the executable name.
make checkis now based on a Job API script, found at
selftests/check.py. It combines previously separate set of tests described by multiple command line executions.
CI “smoke checks” for OS X and Windows have been introduced. This does not mean, however, that Avocado is supported on those platforms.
For more information, please check out the complete Avocado changelog.