contrib: More trace visualization.
[libguestfs.git] / RELEASE-NOTES
1 Release notes for libguestfs 1.6.0
2 ----------------------------------
3 [updated to commit d75a2bff1264828f02b68a9c8bc7eb2521bd6684]
4
5 These release notes only cover the differences from the previous
6 stable/dev branch split (1.4.0).  For detailed changelogs, please see
7 the git repository, or the ChangeLog file distributed in the tarball.
8
9 New features
10
11  - Use a new method for creating and caching the appliance.  This
12    greatly improves the performance of libguestfs.
13
14  - Support for guest inspection (like virt-inspector) via the ordinary
15    API and all language bindings.  'guestfish -i' option is as a side-
16    effect much quicker.
17
18  - Support for LUKS-encrypted guests.
19
20  - PHP bindings.
21
22  - Progress messages (and progress bars in guestfish and virt-resize)
23    for certain long-running operations.
24
25  - virt-df is now much more efficient.  Use '--one-per-guest' to restore
26    the old per-guest isolation behaviour.
27
28  - guestfish 'copy-in' and 'copy-out' commands for copying files and
29    directories recursively in and out of the guest.
30
31  - guestfish 'hexedit' command for doing binary edits to devices and
32    files.
33
34  - Change guestfish -i syntax slightly to allow commands to be specified.
35
36  - guestfish '-d <domain>' for adding disks from libvirt domains.
37
38  - guestfish '-N' option supports several new prepared disk image types:
39          lvfs : disk with LV formatted with filesystem
40            lv : disk with LV
41      bootroot : boot+root
42    bootrootlv : boot and root on LV
43
44  - guestfish 'more' and 'edit' commands now work with arbitrary files.
45
46  - guestfish '--echo-keys' option allows you to echo keys/passphrases
47    while typing them.
48
49  - Use virtio-serial for communications with the appliance.  This
50    also has a major performance benefit.
51
52  - virt-edit '-b' option to create a backup of edited files.
53
54  - virt-edit '-e' option for non-interactive edits to files.
55
56  - Ability to capture core dumps from the appliance (thanks Matthew Booth).
57
58  - virt-rescue now shuts down cleanly (thanks Matthew Booth).
59
60  - Translations of manual pages.
61
62 Security
63
64 New APIs
65
66  - download-offset
67  - file-architecture
68  - findfs-label
69  - findfs-uuid
70  - inspect-os
71  - inspect-get-arch
72  - inspect-get-distro
73  - inspect-get-filesystems
74  - inspect-get-major-version
75  - inspect-get-minor-version
76  - inspect-get-mountpoints
77  - inspect-get-product-name
78  - inspect-get-type
79  - is-blockdev
80  - is-chardev
81  - is-fifo
82  - is-lv
83  - is-socket
84  - is-symlink
85  - list-filesystems
86  - luks-add-key
87  - luks-close
88  - luks-format
89  - luks-format-cipher
90  - luks-kill-slot
91  - luks-open
92  - luks-open-ro
93  - lvm-clear-filter
94  - lvm-set-filter
95  - part-to-dev
96  - upload-offset
97
98 Internals
99
100  - Use size_t for loop iterators.
101  - Refactor the library code into separate files.
102  - Refactor the generator code into separate files.
103  - Generate guestfish commands.
104  - Protocol changes:
105      error message size increased to 64K
106      send errno to library
107  - Add 'make bindist' to make a binary distribution.
108
109 Bugs fixed
110
111  - 633357 Updates to Spanish translation
112  - 629593 Dutch translation added
113  - 627556 Updates to Spanish translations of libguestfs
114  - 626843 Updates to Spanish translations
115  - 619793 [RFE] Need a way to determine if a particular block device is a logical volume
116  - 618556 virt-rescue return none zero value when exit
117  - 617200 mount operation failed and hung on some images which running in read-only mode
118  - 610880 libguestfs should set broader read perms on tmpdir, so works in some situations when executed with umask 077
119  - 571714 Running virt-df on disk image relabels it, so qemu can no longer write to it.
120  - 502533 Updated Polish translation of libguestfs
121
122 Release notes for libguestfs 1.4.0
123 ----------------------------------
124
125 These release notes only cover the differences from the previous
126 stable/dev branch split (1.2.0).  For detailed changelogs, please see
127 the git repository, or the ChangeLog file distributed in the tarball.
128
129 New features
130
131  - guestfish lets you choose a prepared disk image, eg:
132      guestfish -N fs:ext4
133
134  - Add write support to guestmount (FUSE) module.
135
136  - virt-resize can now resize the content of partitions and logical
137    volumes in the guest, and we have better support for shrinking guests.
138
139  - Bash tab-completion script for guestfish.
140
141  - Add ZFS support to virt-rescue.
142
143  - New tool 'virt-make-fs' for creating filesystems with content.
144
145  - Allow suffixes on any guestfish number parameter, eg. "1M".
146
147  - guestfish 'man' command opens the manual page.
148
149  - guestfish supports a "heredoc" syntax for uploading files:
150      upload -<<_end_ /foo
151      content
152      _end_
153
154  - Some guestfish commands now print their output in octal or hex
155    where appropriate (RHBZ#583242).
156
157  - Allow dash prefix on guestfish command line.  This ignores any
158    error from the second command:                   (RHBZ#578407)
159      guestfish -- cmd1 : -cmd2 : cmd3
160
161  - guestfish -h / help command now returns an error for non-existent
162    commands (RHBZ#597145).
163
164  - New 'supported' command in guestfish to list optional groups of
165    commands which are supported by the daemon / configuration.
166
167  - virt-inspector and guestfish -i now work for filenames which
168    contain spaces (RHBZ#507810).
169
170  - Change the protocol to use link-local addresses, to avoid
171    conflicting with any address that the host might be using
172    (RHBZ#588763).
173
174  - libguestfs now sets the correct time and timezone on filesystem
175    modifications.
176
177  - Sort the domains into alphabetical order in virt-df.
178
179  - Make mkfs-b command work for FAT and NTFS by mapping the blocksize
180    parameter to the cluster size (RHBZ#599464).
181
182  - Add version numbers to Perl modules (RHBZ#521674).
183
184  - Localization now works for all the libguestfs tools (RHBZ#559963).
185
186  - Tools now support filesystem-on-image VMs (RHBZ#590167).
187
188  - virt-list-partitions has a '-t' option to show the total size of disks.
189
190  - Include extra Augeas lenses in the supermin appliance (Matthew Booth).
191
192  - Add error and close callbacks.
193
194  - Add explicit close method in the Perl API.
195
196  - Multiple fixes for RHEL 5 compatibility.
197
198  - Multiple fixes for Debian/Ubuntu compatibility.
199
200  - Multiple revisions to improve the documentation.
201
202 Security
203
204  - Fix a potential DoS in virt-inspector and virt-v2v if a specially
205    crafted disk image contained a char device in place of one of the
206    configuration files that we read under /etc (RHBZ#582484).
207
208 New APIs
209
210  - aug-clear - clear Augeas path
211  - available-all-groups - return a list of all optional groups
212  - base64-in - upload base64-encoded data to file
213  - base64-out - download file and encode as base64
214  - checksum-device - compute checksums on the contents of a device
215  - checksums-out - compute checksums of multiple files in a directory
216  - debug-upload - upload a file to the appliance
217  - fallocate64 - preallocate a file in the guest filesystem
218  - fill-pattern - fill a file with a repeating pattern of bytes
219  - get-umask - get the current umask
220  - lvresize-free - expand an LV to fill free space
221  - ntfsresize - resize an NTFS filesystem
222  - ntfsresize-size - resize an NTFS filesystem (with size)
223  - part-del - delete a partition
224  - part-get-bootable - get the bootable flag of a partition
225  - part-get-mbr-id - get the MBR type byte of a partition
226  - part-set-mbr-id - set the MBR type byte of a partition
227  - pvresize-size - resize a physical volume (with size)
228  - pwrite - write to part of a file
229  - resize2fs-size - resize an ext2/3/4 filesystem (with size)
230  - txz-in - unpack compressed tarball to directory (RHBZ#580556)
231  - txz-out - pack directory into compressed tarball (RHBZ#580556)
232  - vfs-label - get the filesystem label
233  - vfs-uuid - get the filesystem UUID
234  - vgscan - rescan for LVM physical volumes, volume groups and logical volumes
235  - write - create a new file
236  - zero-device - write zeroes to an entire device
237
238 Internals
239
240  - Extend the generator to support testing optional features.
241  - Stricter checks on input parameters to many calls (RHBZ#501893 RHBZ#501894)
242  - Extend the protocol to support sending arbitrary 8 bit data buffers.
243  - Ship 'BUGS' file with releases.  This is a summary of the bugs in
244    the Red Hat Bugzilla database.
245  - Ship 'RELEASE-NOTES' file with releases, containing release notes.
246  - Unify supermin appliance building into one place, in febootstrap 2.7.
247  - Fix the protocol code to handle the case where both ends send cancel
248    messages at the same time.
249
250 Bugs fixed
251
252  - 612178 guestfish: using -m option in conjunction with --listen option causes appliance to die
253  - 610880 libguestfs should set broader read perms on tmpdir, so works in some situations when executed with umask 077
254  - 604691 OCaml bindings are not thread safe
255  - 603870 Updates to Spanish translation
256  - 602592 [RFE] expose guestfs_close in perl bindings
257  - 600977 virt-df -h --csv "Argument .. isn't numeric in printf"
258  - 599464 mkfs-b does not support vfat/ntfs
259  - 598807 add_cdrom does not work in RHEL 6
260  - 598309 part-list and several other cmd failed on libguestfs on RHEL5
261  - 597145 guestfish 'help' command should indicate error in exit status with an unknown command
262  - 597135 guestfish write-file cmd does not check "size" parameter
263  - 597118 A warning should be given in the help of mke2journal-L for the length of label
264  - 597112 get-e2uuid should use blkid instead of "tune2fs -l" to get filesystem UUID
265  - 596776 virt-inspector doesn't discover modprobe aliases on RHEL 3 guests
266  - 596763 Updates to Spanish translation
267  - 593292 Updates to Spanish translation
268  - 592883 can not edit files on  images mounted with guestmount cmd
269  - 592360 Updates to Spanish translation
270  - 591250 virt-tar prints "tar_in: tar subcommand failed on directory" if the archive is compressed or not in the right format
271  - 591155 virt-tar prints "tar_in: tar subcommand failed on directory" if a disk image is not writable
272  - 591142 virt-inspector should give an error for unrecognized disk images
273  - 590167 virt-inspector and other virt tools should be able to handle filesystem-on-image VMs
274  - 589039 guestfish read-file cmd will cause daemon hang when read large files
275  - 588851 guestfs_launch() returns -1, but guestfs_last_error() == NULL
276  - 588763 libguestfs should use non-public or link-local addresses for appliance network
277  - 588733 Updates to Spanish translation
278  - 588651 guestfish 'strings-e' cmd does not give proper error message or hint
279  - 587484 lvresize can't reduce size of a volumn
280  - 585961 Updates to Spanish translation
281  - 585223 ntfsresize should support shrinking filesystems
282  - 585222 pvresize should support shrinking PVs
283  - 585221 resize2fs should support shrinking filesystems
284  - 584038 Updates to Spanish translation
285  - 583554 [FEAT] mknod-mode command is needed to set mode explicitly
286  - 583242 [RFE] guestfish should print outputs in a suitable base (eg. octal for modes)
287  - 582993 guestfish eats words when tab completing case (in)sensitive paths
288  - 582953 Misleading help information about lvcreate command
289  - 582948 mknod command doesn't make block, character or FIFO devices
290  - 582929 mknod doesn't check for invalid mode
291  - 582901 guestfish chmod/umask commands do not check invalid mode value
292  - 582899 guestfish:sparse is missed from command autocomplete list
293  - 582891 [Feature Request] behavior and return value of guestfish umask cmd should be changed
294  - 582548 [mknod] umask shouldn't take effect when mode is set explicitly
295  - 582484 some guestfish sub commands can not handle special files properly
296  - 582252 Updates to Spanish translation
297  - 581501 Updates to Spanish translation
298  - 580650 virt-inspector warns "No grub default specified at /usr/lib/perl5/Sys/Guestfs/Lib.pm at [...]"
299  - 580556 request for libguestfs to support .txz tarballs
300  - 580246 tar-in command hangs if uploading more than available space
301  - 580016 aug-ls in guestfish does not take augeas variable as argument
302  - 579664 guestfish doesn't report error when there is not enough space for image allocation
303  - 579608 multiple commands in guestfish can not work for symbol links
304  - 579155 libguestfs hangs if qemu doesn't start (in null vmchannel mode)
305  - 578407 the prefix '-' in sub-command isn't handled by guestfish in remote control mode
306  - 576879 libguestfs protocol loses synchronization if you 'upload' before mounting disks
307  - 559963 libguestfs Perl programs do set locale, but still localization doesn't work
308  - 521674 Perl modules are unversioned, but should carry version numbers
309  - 516096 Race condition in test_swapon_label_0: /sbin/blockdev: BLKRRPART: Device or resource busy
310  - 507810 guestfish -i / virt-inspector cannot handle spaces in filenames
311  - 502533 Updated Polish translation of libguestfs
312  - 501894 Some String parameters should be OptString
313  - 501893 String parameters should be checked for != NULL
314  - 501889 write-file does not support strings containing ASCII NUL
315  - 484986 grub-install fails on virtio disk
316
317 Release notes for previous versions of libguestfs
318 -------------------------------------------------
319
320 2009-11-10 : 1.0.78
321 https://www.redhat.com/archives/libguestfs/2009-November/msg00095.html
322
323 2009-09-13 : 1.0.67
324 https://www.redhat.com/archives/libguestfs/2009-August/msg00281.html
325
326 2009-07-23 : 1.0.64
327 https://www.redhat.com/archives/libguestfs/2009-July/msg00059.html
328
329 2009-07-14 : 1.0.59
330 https://www.redhat.com/archives/libguestfs/2009-July/msg00023.html