guestfs-release-notes-1.42 - Man Page

libguestfs Release Notes

Release Notes for Libguestfs 1.42

Please note that virt-v2v, virt-p2v and the boot analysis tools were moved out of the libguestfs package / repository into separate projects.  See:

Those projects are now on a separate release cycle.  Release notes are published separately.

New features

Add support for the Vala language (Corentin Noël).

Add support for the Rust language (Hiroyuki Katsura, sponsored by Google Summer of Code).

Reproducible builds (Chris Lamb).

Advanced Format disks (which use 4K sectors) can now be processed by libguestfs.  Use the new optional blocksize parameter to guestfs_add_drive_opts, and the --blocksize option added to several tools (Nikolay Ivanets).

Windows CompactOS (NTFS file compression) is now supported.

New features in existing tools

Advanced machine readable output in various virt tools now supports JSON output, and writing logs to a numbered file descriptor (Pino Toscano).

virt-filesystems tool now more accurately reports filesystem total size, in the case where for example the filesystem does not occupy the whole of its containing device (Pino Toscano).

Language bindings

Python ≥ 2.7 is required.

Python bindings are now more extensively tested (Hiroyuki Katsura).

Python bindings should now work with Python ≥ 3.8.

Multiple fixes to avoid crashes in the Python bindings (Sam Eiderman).

OCaml bindings are compiled with -DCAML_NAME_SPACE to ensure no non-caml_-namespaced symbols are used (Pino Toscano).

OCaml bindings should now work with OCaml 4.09 and 4.10.

Erlang has deprecated the old erl_interface library which we use for Erlang bindings.  It will be removed in OTP 22, which will permanently break Erlang support unless someone steps forward to update the Erlang bindings in libguestfs.

Fix compatibility with newer cgo for Go bindings (Tomáš Golembiovský).

Go API error handling is now more idiomatic (Csaba Henk).

Update documentation about how to handle boolean parameters in Ruby bindings (Csaba Henk).

Inspection

Libguestfs can now extract icons for Gentoo, newer SUSE and OpenMandriva guests.  Improved extraction of RHEL icons. (Pino Toscano).

Inspection returns the osinfo IDs of newer Windows versions, and rolling Linux distros (Pino Toscano).

OpenMandriva is now detected (Bernhard Rosenkränzer).

Arch Linux detection improvements (Pino Toscano).

Architectures and platforms

Libguestfs can now be compiled on OpenMandriva (Bernhard Rosenkränzer).

Ubuntu fix for enabling network support (Ioanna Alifieraki).

Other

Use of deprecated libguestfs APIs will now cause compiler deprecation warnings by default, whereas previously you have to enable these warnings.  To turn off these warnings use -DGUESTFS_NO_WARN_DEPRECATED=1.  A new feature is that you can now disable deprecated APIs completely if you want, using -DGUESTFS_NO_DEPRECATED=1 (Pino Toscano).

Fix hostname in virt-builder templates (Pino Toscano).

The single large release notes file is now split into multiple documents organized by version.

The --key option of several tools was broken, especially if you tried to use the option to pass multiple keys.  This has been fixed and a regression test added.

Augeas exceptions occurring in daemon (eg. during inspection) will now produced detailed errors (Pino Toscano).

Security

No security issues were found in this release.

API

New APIs

luks_uuid returns the UUID of a LUKS device (Pino Toscano).

Other API changes

Cope with new output from the btrfs scrub command.  There is no visible change at the API level.

New optional parameter blocksize added to guestfs_add_drive_opts to support Advanced Format disks (Nikolay Ivanets).

Build changes

Minimum version of Augeas required is 1.2.0 (Pino Toscano).

common/ subdirectory is now a git submodule shared with the virt-v2v project.

Supermin ≥ 5.1.18 is required.

There were several bugs in libvirt 5.10.0 and 6.0 which affected libguestfs.  It is highly advisable to use libvirt 6.1 where these bugs are fixed (versions of libvirt < 5.10.0 are also fine).

Many gnulib modules which we were not using or which we used in only a few places have been removed (Pino Toscano).

Multiple fixes for builddir != sourcedir builds (Pino Toscano).

A new bundled/ subdirectory contains one bundled library that we currently use, ocaml-augeas (Pino Toscano).

Fix compatibility issues when being compiled with GCC 10.

Internals

When linking OCaml programs, automake silent rules and the V=1 flag are both now obeyed (Pino Toscano).

The guestfs_device_index API was reimplemented in library code instead of in the daemon.  There should be no observable effect of this change.

Since Linux 5.6 enumerates /dev/sdX devices in parallel, libguestfs was changed to map API device names to appliance device names, and then do the reverse mapping when returning names from the appliance. Hopefully this should have no observable effect, but can produce somewhat confusing debugging messages since device names in the debug might not match device names passed in to APIs.  Furthermore the root=UUID=... option is always passed to the appliance (instead of naming the device containing the root filesystem).

We expect to move from the Zanata service to the Weblate service for translated strings.  For more information see https://bugzilla.redhat.com/1787301

Bugs fixed

https://bugzilla.redhat.com/1773520

Segfault in python bindings for guestfs_int_py_event_callback_wrapper

https://bugzilla.redhat.com/1746699

Can't import guest from export domain to data domain on rhv4.3 due to error “Invalid parameter: 'DiskType=1”'

https://bugzilla.redhat.com/1733168

virt-v2v: Use scp -T in -i vmx -it ssh mode

https://bugzilla.redhat.com/1723305

Delete info“export PATH=/path/to/nbdkit-1.1.x:$PATH” in virt-v2v-input-vmware manual page

https://bugzilla.redhat.com/1705482

python 3.8 requires using -embed variant of pkgconf file, causing libguestfs to fail to build Python 3.8 bindings

https://bugzilla.redhat.com/1703463

libguestfs cannot inspect disks using WIndows 10 NTFS compression, error “unsupported reparse point”

https://bugzilla.redhat.com/1694268

[PATCH] Add OpenMandriva support

https://bugzilla.redhat.com/1691659

virt-v2v should show a message when qemu-guest-agent is installed in guest successfully during conversion

https://bugzilla.redhat.com/1690574

virt-v2v fails to import a guest while cannot find `file_architecture` for a file

https://bugzilla.redhat.com/1680361

[v2v][RHV][Scale] v2v Migration to RHV failed on timed out waiting for transfer to finalize

https://bugzilla.redhat.com/1661871

python bindings wrongly using str for APIs with RBufferOut/FBuffer on Python 3

https://bugzilla.redhat.com/1626503

Unable to maintain static IP address configuration post VM migration

https://bugzilla.redhat.com/1612653

Guest has no disk after rhv-upload converting if target data domain has similar name with other data domain on rhv4.2

https://bugzilla.redhat.com/1605242

Update nbdkit info for vddk in v2v man page

https://bugzilla.redhat.com/1584678

On W2K12r2 rhev-apt does not run non-interactively, causing race when starting rhev-apt service from the command line

https://bugzilla.redhat.com/1518539

Macvtap network will be lost during v2v conversion

https://bugzilla.redhat.com/1351000

virt-customize --commands-from-file will fail if there is an extra blank in the file

See Also

guestfs-examples(1), guestfs-faq(1), guestfs-performance(1), guestfs-recipes(1), guestfs-testing(1), guestfs(3), guestfish(1), http://libguestfs.org/

Authors

Ioanna Alifieraki

Sam Eiderman

Tomáš Golembiovský

Csaba Henk

Nikolay Ivanets

Richard W.M. Jones

Hiroyuki Katsura

Chris Lamb

Corentin Noël

Bernhard Rosenkränzer

Pino Toscano

License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

Bugs

To get a list of bugs against libguestfs, use this link: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools

To report a new bug against libguestfs, use this link: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools

When reporting a bug, please supply:

Info

2020-03-09 libguestfs-1.42.0 Virtualization Support