The Next LTS

The Long Term Stability releases of Avocado are the result of the accumulated changes on regular (non-LTS) releases.

This section tracks the changes introduced on each regular (non-LTS) Avocado release, and gives a sneak preview of what will make into the next LTS release.

What’s new?

When compared to the last LTS (52.x), the main changes to be introduced by the next LTS version are:

  • A new loader implementation, that reuses (and resembles) the YAML input used for the varianter yaml_to_mux plugin. It allows the definition of test suite based on a YAML file, including different variants for different tests. For more information refer to YAML Loader (yaml_loader).
  • A better handling of interruption related signals, such as SIGINT and SIGTERM. Avocado will now try harder to not leave test processes that don’t respond to those signals, and will itself behave better when it receives them. For a complete description refer to Signal Handlers.
  • The output generated by tests on stdout and stderr are now properly prefixed with [stdout] and [stderr] in the job.log. The prefix is not applied in the case of $test_result/stdout and $test_result/stderr files, as one would expect.
  • Test writers will get better protection against mistakes when trying to overwrite avocado.core.test.Test “properties”. Some of those were previously implemented using avocado.utils.data_structures.LazyProperty() which did not prevent test writers from overwriting them.
  • Avocado can now run list and run standard Python unittests, that is, tests written in Python that use the unittest library alone.
  • The Test ID format Avocado has been using for a while received a minor tweak: the character that precedes the variant name, a separator, used to be ;, which is not allowed on some filesystems, and is now a + character instead.
  • The complete output of tests, that is the combination of STDOUT and STDERR is now also recorded in the test result directory as a file named output.

Complete list of changes

For a complete list of changes between the last LTS release (52.0) and this release, please check out the Avocado commit changelog.