X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=RELEASE-NOTES;h=cba6c9bab5bbed862ad32a73742d41abffa2c715;hp=6302e75eb0ef4670e92e20c3fb05fc5ff089abbd;hb=4e196ad9a374ecef8a39af3ef028fc593d3b1a46;hpb=a54aa3caae32a029a523d293041413d35208e013 diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 6302e75..cba6c9b 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -1,6 +1,420 @@ +Release notes for libguestfs 1.12.0 +----------------------------------- + +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 + + guestfish: + + - guestfish strings can use escapes, + eg. > write /foo "line 1\nline 2\n" + + - guestfish write-append command can be used to append to files. + + - Long-running file uploads and downloads can be cancelled through the + API or by hitting ^C in guestfish. + + - New guestfish "display" command for displaying graphical files + inside guests. + + - In guestfish, tab completion now works on /dev/mapper devices. + + virt-inspector: + + - 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. + + - CentOS and Scientific Linux are now treated as separate distros by + the inspection API. + + virt-resize: + + - virt-resize can now handle btrfs. + + - New virt-resize --ntfsresize-force option allows Windows VMs to be + resized multiple times. + + other virt tools: + + - 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. + + - virt-ls -lR option allows complex file iteration and guest analysis. + + - virt-win-reg supports HKEY_USERS\ and HKEY_USERS\. + + - virt-win-reg new option --unsafe-printable-strings allows printable + strings to be displayed in the output (unsafely: read the documentation + before using). + + - virt-edit has been rewritten in C. + + API and language bindings: + + - Java is now completely supported. + See http://libguestfs.org/guestfs-java.3.html + + - JRuby is supported via the Java bindings. + + - 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. + + - 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. + + - mkfs-opts can now set inode size and sector size on created filesystems + (thanks Nikita Menkovich). + + - guestfs_last_errno is now accessible from OCaml (as g#last_errno ()). + +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 + + btrfs-filesystem-resize, get-pgroup, inspect-get-icon, is-zero, + is-zero-device, list-9p, list-dm-devices, mount-9p, ntfsresize-opts, + set-pgroup, write-append + +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. + + - Use ./configure --enable-install-daemon to install /usr/sbin/guestfsd. + + - po-docs directory now covers all man pages. + + - stderr from qemu process is now captured by the event subsystem. + +Bugs fixed + + - 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 + - 721275 virt-resize in F16 should support btrfs + + +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 is now a single file. + + - does not require XDR headers. + + - ocaml xml-light library is no longer required to build (thanks + Maxim Koltsov). + + - ./configure --disable-[...] for each language binding (thanks + Maxim Koltsov). + + - Old ocaml-viewer program removed (use guestfs-browser instead). + + - New C API test type 'InitScratchFS' makes the tests run a little + more quickly. + + - Excluded packages in the appliance are now listed in a separate + file appliance/excludelist.in, and can be customized per-distro. + +Bugs fixed + + - 663407 readlink and readlinklist returns /sysroot/ in some paths + - 661280 virt-rescue: panic when shutting down: "/sbin/reboot: No such file or directory" + - 657499 checksum: wrong check sum type causes umount to fail + - 655554 Whole disk paths are not made canonical by virt-inspector + - 654638 openssl updated to 1.0.0b libguestfs depends on exact file names + - 652796 ruby bindings not installed by 'make install', hence omitted from the binary distribution + Release notes for libguestfs 1.6.0 ---------------------------------- -[updated to commit d75a2bff1264828f02b68a9c8bc7eb2521bd6684] These release notes only cover the differences from the previous stable/dev branch split (1.4.0). For detailed changelogs, please see @@ -9,13 +423,18 @@ the git repository, or the ChangeLog file distributed in the tarball. New features - Use a new method for creating and caching the appliance. This - greatly improves the performance of libguestfs. + greatly improves the performance of libguestfs, often by a factor + of x 4 to x 5. - Support for guest inspection (like virt-inspector) via the ordinary API and all language bindings. 'guestfish -i' option is as a side- effect much quicker. - - Support for LUKS-encrypted guests. + - virt-inspector and core inspection API can now detect guests running: + Fedora, Debian, Ubuntu, Windows, Red Hat Enterprise Linux, CentOS, + Scientific Linux, Gentoo, Pardus, Arch Linux, MeeGo. + + - Support for LUKS whole-disk encryption in guests. - PHP bindings. @@ -31,7 +450,8 @@ New features - guestfish 'hexedit' command for doing binary edits to devices and files. - - Change guestfish -i syntax slightly to allow commands to be specified. + - Change guestfish -i syntax to allow commands to be specified on the + command line (retaining backwards compatibility). - guestfish '-d ' for adding disks from libvirt domains. @@ -46,6 +466,8 @@ New features - guestfish '--echo-keys' option allows you to echo keys/passphrases while typing them. + - guestmount now supports -a / -d / -i options, like guestfish. + - Use virtio-serial for communications with the appliance. This also has a major performance benefit. @@ -57,43 +479,54 @@ New features - virt-rescue now shuts down cleanly (thanks Matthew Booth). + - virt-rescue now has a --network option to enable network access. + + - virt-resize can now handle guests which use GPT partition table format. + + - virt-resize has better support for shrinking guests. + + - virt-resize supports qcow2-format guests. + + - $TMPDIR can be used to override almost all temporary directory usage. + + - OCaml users can use an alternate OO-style of coding, eg. g#launch () + + - The API supports calls which take optional parameters, eg. + $g->add_drive_opts ("disk", readonly => 1); + + - Trace output now escapes and shortens large strings (thanks + Matthew Booth). + + - Autosync is now on by default, resulting in more reliable behaviour + when the handle is closed. + + - virt-df --uuid option allows you to follow a domain across migration + and renaming. + - Translations of manual pages. Security + - CVE-2010-3851 libguestfs: missing disk format specifier when adding a disk + https://www.redhat.com/archives/libguestfs/2010-October/msg00036.html + This is comprehensively fixed in this release, and the fix will be + backported to the other stable branches after more testing. + + - virt-inspector no longer relies on untrusted guest code to list + applications in some guests. + New APIs - - download-offset - - file-architecture - - findfs-label - - findfs-uuid - - inspect-os - - inspect-get-arch - - inspect-get-distro - - inspect-get-filesystems - - inspect-get-major-version - - inspect-get-minor-version - - inspect-get-mountpoints - - inspect-get-product-name - - inspect-get-type - - is-blockdev - - is-chardev - - is-fifo - - is-lv - - is-socket - - is-symlink - - list-filesystems - - luks-add-key - - luks-close - - luks-format - - luks-format-cipher - - luks-kill-slot - - luks-open - - luks-open-ro - - lvm-clear-filter - - lvm-set-filter - - part-to-dev - - upload-offset + download-offset, file-architecture, findfs-label, findfs-uuid, + inspect-os, inspect-get-arch, inspect-get-distro, + inspect-get-filesystems, inspect-get-major-version, + inspect-get-minor-version, inspect-get-mountpoints, + inspect-get-product-name, inspect-get-type, is-blockdev, is-chardev, + is-fifo, is-lv, is-socket, is-symlink, list-filesystems, luks-add-key, + luks-close, luks-format, luks-format-cipher, luks-kill-slot, + luks-open, luks-open-ro, lvm-clear-filter, lvm-canonical-lv-name, + lvm-set-filter, part-to-dev, pread-device, pwrite-device, + upload-offset Internals @@ -101,14 +534,40 @@ Internals - Refactor the library code into separate files. - Refactor the generator code into separate files. - Generate guestfish commands. + - guestfish & guestmount options processing is unified. - Protocol changes: error message size increased to 64K send errno to library - Add 'make bindist' to make a binary distribution. + - Cleaner behaviour under valgrind. + - More testing of the guestfish command line options and libvirt + integration. + - The Perl inspection code is no longer used by any of the tools. Bugs fixed + - 646822 libguestfs trace mode should not print long binary strings + - 646821 virt-df should have --uuid option + - 646432 /dev/mapper paths should not be returned from guestfs_mountpoints + - 643624 libguestfs tools documentation should describe how to quote guest domain names from shell + - 642934 No way to specify disk format when adding a disk to libguestfs + - 642933 guestfs_list_filesystems should be used in all possible places + - 642932 guestmount options should match guestfish options + - 642930 virt-inspector (Sys::Guestfs::Lib) should use C inspection APIs + - 642929 C inspection code should ignore /dev/fd* in /etc/fstab + - 642826 virt-resize converts any other image format to raw without notifying user, instructions do not account for this + - 640961 Document that grub-install might be needed for old Linux guests after virt-resize + - 639986 virt-df --csv does not properly quote " in libvirt domain names + - 639405 Interrupted cached appliance creation leaves libguestfs unusable + - 638901 Appliance filename should not contain repository name + - 638899 /dev/mapper paths should not be returned from C inspection APIs + - 636918 Updates to Spanish translation + - 636061 [abrt] guestfish-1.2.11-1.fc12: malloc_consolidate: Process /usr/bin/guestfish was killed by signal 11 (SIGSEGV) + - 635969 glob echo mkfs ext2 /dev/vd[b-t]1 prints garbage + - 634246 guestfs_part_get_parttype returns "loop" when run against a partition, LV or filesystem + - 633766 virt-resize --shrink fails - 633357 Updates to Spanish translation + - 633096 virt-resize calculates block device size incorrectly, doesn't work with qcow2 target - 629593 Dutch translation added - 627556 Updates to Spanish translations of libguestfs - 626843 Updates to Spanish translations @@ -116,6 +575,7 @@ Bugs fixed - 618556 virt-rescue return none zero value when exit - 617200 mount operation failed and hung on some images which running in read-only mode - 610880 libguestfs should set broader read perms on tmpdir, so works in some situations when executed with umask 077 + - 599503 document that mkmountpoint and umount-all cannot be mixed - 571714 Running virt-df on disk image relabels it, so qemu can no longer write to it. - 502533 Updated Polish translation of libguestfs @@ -328,3 +788,6 @@ https://www.redhat.com/archives/libguestfs/2009-July/msg00059.html 2009-07-14 : 1.0.59 https://www.redhat.com/archives/libguestfs/2009-July/msg00023.html + +2009-04-01 : Initial announcement +http://rwmj.wordpress.com/2009/04/01/libguestfs-access-and-modify-virtual-machine-disk-images/