GUESTFS-RELEASE-NOTES-1.42(1)

πŸ’… NAME

guestfs-release-notes β€” the libguestfs Release Notes, bestie πŸ’–


πŸŽ€ RELEASE NOTES FOR LIBGUESTFS 1.42

Okay so first things first, big news: virt-v2v, virt-p2v and the boot analysis tools got MOVED OUT of the libguestfs package / repository into their own separate projects. Glow-up era, they have their own lives now ✨. Peep these:

Those projects run on a separate release cycle now, so their release notes get published separately too. Not us, not our problem, iykyk 🫢.


🌸 New features

  • Support for the Vala language got added (Corentin NoΓ«l). Slay.
  • Support for the Rust language got added (Hiroyuki Katsura, sponsored by Google Summer of Code). Iconic behaviour fr fr.
  • Reproducible builds, yes ma'am (Chris Lamb) πŸŽ€
  • Advanced Format disks (the ones using 4K sectors) can now be processed by libguestfs. Use the new optional blocksize parameter to guestfs_add_drive_opts, plus the --blocksize option that got added to several tools (Nikolay Ivanets).
  • Windows CompactOS (that's NTFS file compression, bestie) 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). The way that just works now 😭
  • The virt-filesystems tool now reports filesystem total size more accurately β€” specifically in the case where, for example, the filesystem does not occupy the whole of its containing device (Pino Toscano). Accurate queen.

πŸ¦‹ 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.
  • Heads up 🚨: 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. Like... someone please?
  • Compatibility with newer cgo for Go bindings is fixed (TomΓ‘Ε‘ GolembiovskΓ½).
  • Go API error handling is now more idiomatic (Csaba Henk).
  • Documentation about how to handle boolean parameters in Ruby bindings got updated (Csaba Henk).

🧚 Inspection

  • Libguestfs can now extract icons for Gentoo, newer SUSE and OpenMandriva guests. Improved extraction of RHEL icons. (Pino Toscano). Icons!! πŸŽ€
  • 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 had to enable these warnings. To turn off these warnings use -DGUESTFS_NO_WARN_DEPRECATED=1. And a new feature: you can now disable deprecated APIs completely if you want, using -DGUESTFS_NO_DEPRECATED=1 (Pino Toscano). Choose your fighter πŸ’…
  • Fix hostname in virt-builder templates (Pino Toscano).
  • The single large release notes file is now split into multiple documents organized by version. Honestly? Cleaner. We ate.
  • 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. Not me forgetting that one πŸ™ˆ
  • Augeas exceptions occurring in the daemon (eg. during inspection) will now produce detailed errors (Pino Toscano).

πŸ”₯ Security

No security issues were found in this release. Vibe check: passed ✨


πŸ‘‘ 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 it 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


πŸ’– 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

Shoutout to the whole squad, no cap πŸ‘‘:

  • 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

Copyright (C) 2009-2025 Red Hat Inc.


πŸ“œ 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 (this part matters, bestie, don't skip it πŸ™):

  • The version of libguestfs.
  • Where you got libguestfs (eg. which Linux distro, compiled from source, etc)
  • Describe the bug accurately and give a way to reproduce it.
  • Run libguestfs-test-tool(1) and paste the complete, unedited output into the bug report.

Okay that's the whole thing!! This page is libguestfs-1.61.3, dated 2026-09-16, and the manpage title is guestfs-rel...-notes-1.42(1) β€” mwah, go fix some bugs πŸ’‹βœ¨
πŸ“¦ where this page comes from