62.0 Farewell¶
The Avocado team is proud to present another release: Avocado version 62.0, AKA “Farewell”, is now available!
Release documentation: Avocado 62.0
The major changes introduced on this version are listed below, roughly categorized into major topics and intended audience:
Users/Test Writers¶
The
avocado.Test.srcdirattribute has been removed, and with it, theAVOCADO_TEST_SRCDIRenvironment variable set by Avocado. This was done after a deprecation period, so tests should have been modified by now to make use of theavocado.Test.workdirinstead.The
avocado.Test.datadirattribute has been removed, and with it, theAVOCADO_TEST_DATADIRenvironment variable set by Avocado. This was done after a deprecation period, so tests should have been modified by now to make use of theavocado.Test.get_data()instead.The
avocado.utils.cpu.set_cpuidle_state()function now takes a boolean value for itsdisableparameter (while still allowing the previous integer (0/1) values to be used). The goal is to have a more Pythonic interface, and to drop support legacy integer (0/1) use in the upcoming releases.avocado.utils.astring.ENCODINGis a new addition, and holds the encoding used on many other Avocado utilities. If your test needs to convert between binary data and text, we recommend you use it as the default encoding (unless your test knows better).avocado.utils.astring.to_text()now supports setting the error handler. This means that when a perfect decoding is not possible, users can choose how to handle it, like, for example, ignoring the offending characters.When running a process by means of the
avocado.utils.processmodule utilities, the output of such a process is captured and can be logged in astdout/stderr(or combinedoutput) file. The logging is now more resilient to decode errors, and will use thereplaceerror handler by default. Please note that the downside is that this may produce different content in those files, from what was actually output by the processes if decoding error conditions happen.The
avocado.utils.astring.tabular_output()will now properly strip trailing whitespace from lines that don’t contain data for all “columns”. This is also reflected in the (tabular) output of commands such asavocado list -v.
Bug Fixes¶
Users of the
avocado.utils.servicemodule can now safely instantiate the service manager multiple times. It was previously limited to a single instance per interpreter.The
avocado.utils.vmimagelibrary default usage broke with the release of Fedora 28, which added a different directory layout for its cloud images. This has now been fixed and should allow for a successfulimage = avocado.utils.vmimage()usage.
Internal Changes¶
Refactor of the
avocado.utils.assetmodule, in preparation for new functionality.The
avocado.utils.cpumodule now treats reads/writes to/from/proc/*and/sys/*as binary data.The selftests for the
avocado.utils.cpumodule will now run under Python 3 (>= 3.6), due to more detailed checks of capable mock versions.The test that serves as the example for the whiteboard feature has been simplified, and the more complex test moved to
selftests.Package builds with
make rpmare now done with the systemd-nspawn based chroot implementation formock.
For more information, please check out the complete Avocado changelog.
Release Meeting¶
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.