The Avocado team is proud to present another release: Avocado 87.0, AKA “Braveheart”, is now available!
Release documentation: Avocado 87.0
avocado assetscommand has been expanded and now can purge the cache based on its overall size. To keep 4 GiB of the most recently accessed files, you can run
avocado assets purge --by-overall-limit=4g. For more information, please refer to the documentation: Removing by overall cache limit.
avocado.skipUnless()now allow the condition to be a callable, to be evaluate much later, and also gives them access to the test class. For more information, please refer to the documentation: Advanced Conditionals.
- The presentation of SIMPLE tests have been improved in the sense
that they’re are now much more configurable. One can now set the
simpletests.status.failure_fieldsto configure how the status line shown just after a failed test will look like, and
job.output.testlogs.logfilesto determine the files that will be shown at the end of the job for failed tests.
avocaod.core.safeloadernow supports relative imports with names, meaning that syntax such as
from ..upper import foois not properly parsed.
- The nrunner TAP runner now supports/parses large amounts of data, where it would previously crash when buffers were overrun.
- The assets plugin (
avocado assetscommand) now returns meaningful exit code on some failures and success situations.
avocado.utils.partitionutility module now properly keeps track of loop devices and multiple mounts per device.
- The nrunner message handling code was mostly rewritten, with specific handlers for specific message types. Also, the expected (mandatory and optional) is now documented.
avocado.core.nrunner.Taskidentifier is now automatically assigned if one is not explicitly provided.
selftests/check.pyJob API-based script now prints a list of the failed tests at the end of the job.
- The nrunner standalone runners are now on their own directory on the
source code tree (
- The nrunner base class runner is now an abtract base class.
- The Job’s Test suite for the nrunner architecture now contains Runnables instead of Tasks, which are a better fit at that stage. Tasks will be created closer to the execution of the Job. This solves the dilemma of changing a Task identifier, which should be avoided if possible.
- The CI jobs on Cirrus have been expanded to run the selftests in a Fedora based container environment, and a simple smokecheck on Windows.
- A GitHub actions based job was added to the overall CI systems, initially doing the static style/lint checks.
- The selftests have been reorganized into directories for utility modules and plugins. This should, besides making it easier to find the test file for a particular featured based on its type, also facilitate the repo split.
- A number of test status which are not being used were removed, and the current definitions now better match the general style and are documented.
- COPR RPM package check not attempts to install a specific package NVR (name-version-release).
- Many Python code lint improvements, with new checks added.