105.0 - Poor Things

The Avocado team is proud to present another release: Avocado 105.0, AKA “Poor Things”, is now available!

Release documentation: Avocado 105.0

Users/Test Writers

  • A couple of new resolvers were introduced: one that can reads from standard JSON “runnable recipe” files, and one that can read from a JSON file containing multiple occurrences of the previously mentioned runnable recipes. This allows users to “configure” in JSON what Avocado is going to resolve, and if it’s the case, run as a test.

  • Users can now define common dependency for each test inside job or with Job API inside suite. With this feature, it should be easier to create jobs with tests which have common dependencies.

  • More control over the environment variables in exec-test was introduced. It’s now possible to disable one environment variable or clear the whole environment during the test runtime so it won’t be available to the underlying executable.

Utility Modules

Bug Fixes

  • Runnables no longer ignore the configuration passed from recipes

  • Runnable (and Task) dependencies could deadlock and fail to complete if they were duplicates. Duplicates are now removed before attempting to fulfill them.

Internal Changes

  • Added a module boundary check for importing avocado plugins inside avocado core.

  • Some selftests had shebangs and main() calls removed

  • The JSON based runnable recipe now receives schema based validation when the supporting library is available, or a simplified check when it’s not.

  • The GitHub actions used on the various workflows were all updated to the latest available versions.

  • The code style is slightly changed with the update to black version 24.3.0

Additional information

For more information, please check out the complete Avocado changelog.

For more information on the actual issues addressed, please check out the milestone information.

For more information on the release codename, please refer to IMDb.