These are the release notes for libguestfs stable release 1.52. This describes the major changes since
1.50.
Libguestfs 1.52.0 was released on 5January2024.
Languagebindings
The Python bindings now use "bytes" (instead of "str") for the event callback message, since it may
contain arbitrary 8 bit data (thanks Yonatan Shtarkman).
Also in the Python bindings, fix a rare crash, and avoid memory leaks in event callbacks (thanks Yonatan
Shtarkman, Laszlo Ersek, Eric Blake).
Support for OCaml 5, and OCaml ≥ 4.07 is now the minimum (thanks Guillaume Munch-Maccagnoni, Jerry James,
Josh Berdine, Jürgen Hötzel, Vincent Laviron).
The OCaml bindings now release the runtime lock around calls to "guestfs_close", since that call might be
long-running (for example it might have to shut down the appliance and synch disks).
Inspection
Support OpencloudOS (cunshunxia@tencent).
API
SELinux relabelling now runs in parallel, meaning it's a lot quicker (Andrey Drobyshev).
Add support for lzma and zstd compression methods in tar APIs (like "guestfs_tar_in") (Zixun LI).
"guestfs_pvs_full" previously didn't always return the correct device names. This has now been fixed.
"guestfs_btrfs_filesystem_balance" fixed so it now works with more modern btrfs tools (Jürgen Hötzel).
Tools
The guestfish(1) --key option now recognizes LVM names like /dev/mapper/rhel_bootp--73--75--123-root
(Laszlo Ersek).
guestfish --key option also supports a new --keyall:... selector to try the same key on all devices.
In guestmount(1) avoid calling fclose(NULL) on error paths, which might have caused a crash on some
platforms.
Buildchanges
The "RELEASES" file (which listed release dates) has been removed and replaced with a simple
"RELEASE_DATE" macro in ./configure. This should simplify builds.
Optionally passt(1) may be used for networking (Laszlo Ersek).
dhcpcd(8) is now used in preference to dh-client on Red Hat platforms.
Old Ruby "MiniTest" and "Test::Unit" dependencies replaced with new "Minitest".
Fix compatibility issues with libxml2 2.12.
Internals
On x86-64 we now use the more modern q35 machine type when running the appliance. This should perform
slightly better and has more development attention from the qemu community. The change should be
invisible to libguestfs users.
Fix a segmentation fault when "TERM" environment variable was set to "dumb" (Daisuke HATAYAMA).
Avoid a warning on modern Fedora which does not have /selinux (Andrey Drobyshev).
Fix build on OpenSUSE LEAP 15 or other distros with a file(1) command which did not understand the -S
option (thanks Olaf Hering).
Bugsfixed
https://bugzilla.redhat.com/2247057
Remove dependency on dhcp-client in libguestfs
https://bugzilla.redhat.com/2184967
RFE: support passt for appliance networking, as QEMU userspace networking backend
https://bugzilla.redhat.com/2168578
use q35 machine type for libguestfs appliance
https://bugzilla.redhat.com/1910039
virt-dib doesn't work with newer diskimage-builder version on RHEL8