Skip to content

Latest commit

 

History

History
127 lines (94 loc) · 4.85 KB

83_0.rst

File metadata and controls

127 lines (94 loc) · 4.85 KB

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

Users/Test Writers

  • 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.
  • The exec-test runner now accepts a configuration (runner.exectest.exitcodes.skip) that will determine valid exit codes to be treated as SKIP test results.
  • 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 --enable-paginator.
  • The nrunner status server now has two different options regarding its URI. The first one, --nrunner-status-server-listen determines the URI in which a status server will listen to. The second one, --nrunner-status-server-uri determines where the results will be sent to. This allows status server to be on a different network location than the tasks reporting to it.
  • The avocado-software-manager command 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 avocado invocation.
  • Command line options related to results, such as --json-job-result, --tap-job-result, --xunit-job-result and --html-job-result currently take a on or off parameter. That is now deprecated and a warning has been added. Those options will soon become "proper boolean" options (such as --enable-$type-job-result and/or --disable-$type-job-result).

Bug Fixes

  • avocado.utils.network.interfaces.NetworkInterface.is_admin_link_up and 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.process utilities that use sudo would check for executable permissions on the binary. Many systems will have sudo with 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 avocado command line invocation, that is, when used in a script based on the Job APIs.

Utility APIs

  • A new module avocado.utils.dmesg with 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.
  • The avocado.utils.network.interfaces now 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.
  • The avocado.utils.cpu library now properly handles s390x z13 family of CPUs.
  • The avocado.utils.pmem library introduced a number of new utility methods, adding support for daxctl operations such as offline-memory, online-memory and reconfigure-device.

Internal Changes

  • The safeloader has been migrated from using imp (deprecated) to the more modern importlib.
  • Instead of using hardcoded .. to refer to the parent directory, portability was improved by switching to os.path.pardir.
  • Runners based on the avocado.core.nrunner module, when called on the command line, can now omit the --kind parameter, if information can be gathered from the executable name.
  • Avocado's make check is 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.