Version 1.11.17.
[libguestfs.git] / RELEASE-NOTES
index 2f7f8f2..84e6c52 100644 (file)
@@ -1,3 +1,251 @@
+Release notes for libguestfs 1.12.0
+-----------------------------------
+
+LAST UPDATED TO COMMIT f91c6f217facc88b60225769c61604a8b8c7169b
+
+These release notes only cover the differences from the previous
+stable/dev branch split (1.10.0).  For detailed changelogs, please see
+the git repository, or the ChangeLog file distributed in the tarball.
+
+New features
+
+ - virt-ls -lR option allows complex file iteration and guest analysis.
+
+ - virt-win-reg supports HKEY_USERS\<SID> and HKEY_USERS\<username>.
+
+ - virt-win-reg new option --unsafe-printable-strings allows printable
+   strings to be displayed in the output (unsafely: read the documentation
+   before using).
+
+ - Inspection API can get an icon or logo for certain guests.
+
+ - virt-inspector includes the logo and hostname for certain guests.
+
+ - virt-inspector can now get the version and release numbers for RPM
+   packages.
+
+ - virt-edit has been rewritten in C.
+
+ - guestfish, guestmount, virt-cat, virt-df, virt-edit, virt-filesystems,
+   virt-inspector, virt-ls and virt-rescue now allow you to use
+   "-d UUID" option to specify a guest by UUID.  This makes them more
+   robust to use from other programs.
+
+ - guestfs_close now appears in trace messages.
+
+ - Python binding adds explicit g.close() method.
+
+ - Python programs can now use the new event API.
+
+ - Python GIL is released during libguestfs calls, allowing multithreaded
+   Python programs to work properly.
+
+ - New guestfish "display" command for displaying graphical files
+   inside guests.
+
+ - 9pfs (Plan 9 filesystems exported from the host) are now supported.
+
+ - Add -DGUESTFS_WARN_DEPRECATED=1 to warn about use of deprecated API
+   functions in C programs.
+
+ - New manual page guestfs-recipes(1) with recipes.
+
+ - CentOS and Scientific Linux are now treated as separate distros by
+   the inspection API.
+
+ - mkfs-opts can now set inode size and sector size on created filesystems
+   (thanks Nikita Menkovich).
+
+ - In guestfish, tab completion now works on /dev/mapper devices.
+
+ - New virt-resize --ntfsresize-force option allows Windows VMs to be
+   resized multiple times.
+
+Security
+
+ - optargs_bitmask is checked even for calls that have no optional
+   arguments.  This closes a possible exploit in the daemon from
+   untrusted callers.
+
+New APIs
+
+  inspect-get-icon
+  is-zero
+  is-zero-device
+  list-9p
+  list-dm-devices
+  mount-9p
+  ntfsresize-opts
+
+Internals
+
+ - Coverity (a static analysis tool) was run across the codebase and
+   many fixes were made.
+
+ - Generator can handle functions that return RBufferOut and have
+   optional arguments.
+
+ - Compatible with Perl 5.14.
+
+ - Compatible with gcc 4.6.
+
+ - Perform safety checks on QEMU.
+
+ - C API tests can now fully test calls that have optional arguments.
+
+Bugs fixed
+
+  ./bugs-in-changelog.sh 1.10.0.. | sort -n
+
+ - 602997 part-get-bootable gives wrong result with an unordered part layout
+ - 661280 virt-rescue: panic when shutting down: "/sbin/reboot: No such file or directory"
+ - 700369 qemu-system-x86_64 says 'KVM not supported for this target'
+ - 705200 guestmount attempt results in access denied
+ - 714981 'list-filesystems' does not know about virtio 9p filesystems or detect existing mounts
+ - 717786 libguestfs python bindings should have an explicit close call
+
+
+Release notes for libguestfs 1.10.0
+-----------------------------------
+
+These release notes only cover the differences from the previous
+stable/dev branch split (1.8.0).  For detailed changelogs, please see
+the git repository, or the ChangeLog file distributed in the tarball.
+
+New features
+
+ - libguestfs and tools can be used against live virtual machines.
+   See the 'guestfish --live' and 'guestmount --live' options, and (for
+   the low-level interface) the new APIs set-attach-method and
+   get-attach-method.
+
+ - New virt tools:
+   virt-copy-in, virt-copy-out, virt-tar-in, virt-tar-out.
+
+ - libguestfs can get the drive letter mappings for Windows guests.
+
+ - virt-inspector displays drive letter mappings for Windows guests.
+
+ - Drive letters can now be used in virt-edit and guestfish programs
+   when operating on Windows guests.
+
+ - virt-resize now works on 32 bit hosts.
+
+ - You can now inspect the install disks and live CDs of many different
+   operating systems.
+
+ - guestfish <! cmd which executes a shell cmd and inlines the result.
+
+ - guestfish, guestmount, virt-rescue now all support --ro and --rw
+   options, and the default for this can be chosen via a configuration
+   file (/etc/libguestfs-tools.conf).
+
+ - New event API allows more than one callback to be registered for
+   each event, makes it possible to call the API from other languages,
+   and allows nearly all log, debug and trace messages to be rerouted
+   from stderr.
+
+ - Greater FHS compliance for temporary files, including using /var/tmp
+   for large cached files that should survive reboot (instead of /tmp).
+
+ - guestfish, guestmount -m option allows mount options to be passed
+   through to the underlying filesystem.
+
+ - mkfs-opts allows filesystem features to be specified.
+
+ - More intelligent handling of mountpoints, allowing mkmountpoint, mount
+   and umount-all commands to work together properly.
+
+ - Trace messages are prefixed with a distinct string, allowing them to
+   be easily 'grepped' out from debug output.
+
+ - guestfs_launch (guestfish 'run' command) now produces progress
+   messages (a guestfish progress bar) if it takes longer than 5
+   seconds to run.
+
+ - Several long-running commands where we are unable to estimate time
+   to completion generate "pulse mode" progress events.  Progress bar
+   in guestfish has been updated to display these.
+
+ - Publish new example code in: C, Perl, Python, OCaml, Ruby.
+
+ - New virt-dhcp-address example program.
+
+ - The Java and Ruby bindings have been improved greatly.
+
+ - Perl includes a way to get the errno of the last error.
+
+ - Python bindings now compatible with rpyc (thanks Erez Shinan).
+
+ - Transifex is now being used to manage translations.
+   http://www.transifex.net/projects/p/libguestfs/
+
+ - Inspection now supports Red Hat Desktop, Slackware distributions.
+
+ - Inspection no longer fails for Windows guests that have two or
+   more disks.
+
+ - Inspection can now tell the difference between Windows 2008 Server
+   and Windows 7.
+
+ - Inspection can detect 32 bit applications installed in 64 bit
+   Windows, running on the WOW64 emulator.
+
+ - A series of protocol fixes has fixed the old bug RHBZ#576879
+   which used to cause errors during the upload command to lose
+   protocol synchronization.
+
+ - New logo!
+
+Security
+
+  [none]
+
+New APIs
+
+  first-private, get-attach-method, inspect-get-drive-mappings,
+  inspect-get-product-variant,
+  inspect-get-windows-current-control-set, next-private, resize2fs-M,
+  set-attach-method.
+
+Internals
+
+ - The 'HACKING' file is obsolete.  The contents have been moved into
+   a section of the guestfs(3) manual page.
+
+ - libguestfs-test-tool simplified.  It no longer needs the static
+   binary or tries to construct an ISO.
+
+ - rpcgen-generated files are compiled with -fno-strict-aliasing
+   which should be safer (thanks Matt Booth).
+
+ - virt-resize was rewritten in OCaml.
+
+ - guestfish and other tools tested with valgrind; some memory leaks
+   were fixed.
+
+Bugs fixed
+
+ - 502533 Updated Polish translation of libguestfs
+ - 576879 libguestfs protocol loses synchronization if you 'upload' before mounting disks
+ - 599503 document that mkmountpoint and umount-all cannot be mixed
+ - 617440 guestfish: fails to tilde expand '~' when the $HOME env is unset
+ - 664558 RFE: Allow to set log callback in Ruby bindings
+ - 665358 Punjabi Translation Completed (pa_IN)
+ - 666577 libguestfs: unknown filesystem /dev/fd0
+ - 667610 Multiple bugs, memory leaks in libguestfs ruby bindings
+ - 668112 virt-filesystems command fails on guest with corrupt filesystem label
+ - 668574 guestfish -i is trying to mount all mounts from /etc/fstab and fails with an error when device doesn't exists
+ - 673479 Add a grep-friendly string to LIBGUESTFS_TRACE output
+ - 674130 Inspection code fails for Windows guest with two disks
+ - 682756 libguestfs trace segfaults when list-filesystems returns error
+ - 682979 libguestfs incorrectly detects Red Hat desktop as 'redhat-based' instead of 'redhat'
+ - 690819 mkfs fails creating a filesytem on a disk device when using a disk with 'ide' interface
+ - 691389 Extended attributes don't work over guestmount (FUSE)
+ - 691724 virt-inspector reports unknown filesystem /dev/vda1
+ - 692545 inspect-list-applications fails to detect 32 bit apps installed under WOW64 emulator on 64 bit Windows
+ - 693324 sfdisk's python interface only accepts lists of type 'list' for the lines parameter
+
 Release notes for libguestfs 1.8.0
 ----------------------------------