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

Utility APIs

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.