64.0 The man who would be king¶
The Avocado team is proud to present another release: Avocado version 64.0, AKA “The man who would be king”, is now available!
Release documentation: Avocado 64.0
The major changes introduced on this version are listed below, roughly categorized into major topics and intended audience:
- A new varianter plugin, the CIT Varianter Plugin. This plugin implements a “Pair-Wise”, also known as “Combinatorial Independent Testing” algorithm, in pure Python. This exciting new functionality is provided thanks to a collaboration with the Czech Technical University in Prague.
avocado.utils.distromodule has dropped the probe that depended on the Python standard library
platform.dist(). The reason is the
platform.dist()has been deprecated since Python 2.6, and has been removed on the upcoming Python 3.8.
- All optional plugins available on Python 2 RPM packages are now also available on Python 3 based RPM packages.
avocado.utils.iso9660module gained a pycdlib based backend, which is very capable, and pure Python ISO9660 library. This allows us to have a working
avocado.utils.iso9660backend on environments in which other backends may not be easily installable.
avocado.utils.iso9660.iso9660()function gained a capabilities mechanism, in which users may request a backend that implement a given set of features.
avocado.utils.iso9660module, gained “create” and “write” capabilities, currently implemented on the pycdlib based backend. This allows users of the
avocado.utils.iso9660module to create ISO images programmatically - a task that was previously done by running
mkisofsand similar tools.
avocado.utils.vmimage.get()function now provides a directory in which to put the snapshot file, which is usually discarded. Previously, the snapshot file would always be kept in the cache directory, resulting in its pollution.
avocado.utils.downloadmodule, and the various utility functions that use it, will have extended logging, including the file size, time stamp information, etc.
- A brand new module,
avocado.utils.cloudinit, that aides in the creation of ISO files containing configuration for the virtual machines compatible with cloudinit. Besides authentication credentials, it’s also possible to define a “phone home” address, which is complemented by a simple phone home server implementation. On top of that, a very easy to use function to wait on the phone home is available as
- The Human UI plugin, will now show the “reason” behind test failures, cancellations and others right along the test result status. This hopefully will give more information to users without requiring them to resort to logs every single time.
avocado.utils.partitionnow behaves better when the system is missing the
- Fixes generators on Python 3.7, according to PEP479.
- Other enablements for Python 3.7 environments were added, including RPM build fixes for Fedora 29.
- A large number of warnings checks have been enabled in the “lint” check, making the Avocado source code better now, and avoiding best practices regressions.
For more information, please check out the complete Avocado changelog.
The Avocado release meetings are now open to the community via Hangouts on Air. The meetings are recorded and made available on the Avocado Test Framework YouTube channel.
For this release, you can watch the meeting on this link.