So I made the release, it is now available on the FTP server (the rpms
are slowly being uploaded too):
ftp://libvirt.org/libvirt/
This is mainly a stabilization release, with a lot of bugs fixes, and
portability cleanups. There is still many improvements but relatively
few new features as such (the new parallels driver being postponed to
the actual release of the hypervisor).
I would like to raise the attention to Dan patch set to implement ACL
support to the API, a very needed feature which would bring us very
close to what I would hope for a 1.0.0 release:
https://www.redhat.com/archives/libvir-list/2012-May/msg00090.html
Let's try to bring this in for the next release !
Features:
- qemu: allow snapshotting of sheepdog and rbd disks (Josh Durgin)
- blockjob: add new APIs (Eric Blake)
Documentation:
- mention migration issue of which credentials are used (Eric Blake)
- Add 'maintenance releases' link in 'News' sidebar (Cole Robinson)
- Added Snooze cloud manager to the IaaS section (Eugen Feller)
- python: Fix doc directory name for stable releases (Cole Robinson)
- virsh: Fix and clarify the --title flag for the list command in man page (Peter Krempa)
- Improve the schema for fs device (Osier Yang)
- openvz: Correct the comments for new node APIs (Osier Yang)
- fix 'omitted' typo in <cputune> doc (Christophe Fergeau)
- add missing </span> in <vcpu placement> doc (Christophe Fergeau)
- fix path to openvz network configuration file (Guido Günther)
- Fix comment about GNUTLS initialization/cleanup (Daniel P. Berrange)
- fix typo in previous patch (Eric Blake)
- news.html.in: Fix </br> void tag (Michal Privoznik)
Portability:
- qemu: fix build when !HAVE_NUMACTL (Eric Blake)
- netlink: Fix build with libnl-3 (Jiri Denemark)
- build: avoid link failure on Windows (Eric Blake)
- qemu: avoid 32-bit compiler warning (Eric Blake)
- build: fix build on cygwin (Eric Blake)
- storage: fix build with iscsi (Eric Blake)
- build: fix bootstrap on RHEL (Eric Blake)
- win32: Properly handle TlsGetValue returning NULL (Matthias Bolte)
- build: avoid type-punning in vbox (Eric Blake)
- build: fix fresh checkout on RHEL5 (Eric Blake)
- fix dependencies on DBus (Daniel P. Berrange)
- tests: Fix libvirtdconftest in VPATH build (Jiri Denemark)
- build: avoid s390 compiler warnings (Eric Blake)
- Fix compilation error on 32bit (Stefan Berger)
- test: fix build errors with gcc 4.7.0 and -O0 (Laine Stump)
- Pull in GNULIB regex module for benefit of test suite on Win32 (Daniel P. Berrange)
- Fix format specifiers in test cases on Win32 (Daniel P. Berrange)
Bug Fixes:
- esx: Fix memory leaks in error paths related to transferred ownership (Matthias Bolte)
- qemu: Don't skip detection of virtual cpu's on non KVM targets (Peter Krempa)
- qemu: Re-detect virtual cpu threads after cpu hot (un)plug. (Peter Krempa)
- build: fix stamp file name (Eric Blake)
- usb: fix crash when failing to attach a second usb device (Guannan Ren)
- build: Fix the typo in configure.ac (Osier Yang)
- conf: Fix memory leaks in virStoragePoolDefParseSource (Alex Jia)
- Report error when parsing character device target type (Jim Fehlig)
- snapshot: allow block devices past cgroup (Eric Blake)
- domain_conf: add "default" to list of valid spice channels (Alon Levy)
- domain_conf: add "usbredir" to list of valid spice channels (Alon Levy)
- virsh: avoid heap corruption leading to virsh abort (Jim Meyering)
- util: fix libvirtd startup failure due to netlink error (Laine Stump)
- qemu: call usb search function for hostdev initialization and hotplug (Guannan Ren)
- qemu: Emit compatible XML when migrating a domain (Jiri Denemark)
- qemu: don't modify domain on failed blockiotune (Eric Blake)
- node_device: fix possible non-terminated string (Stefan Berger)
- uuid: fix possible non-terminated string (Stefan Berger)
- tests: fix resource leak (Stefan Berger)
- qemu: fix resource leak (Stefan Berger)
- vmx: fix resource leak (Stefan Berger)
- Coverity: Fix resource leak in virnetlink.c (Osier Yang)
- Coverity: Fix resource leak in nodeinfo.c (Osier Yang)
- Coverity: Fix resource leak in test driver (Osier Yang)
- Coverity: Fix resource leak in xen driver (Osier Yang)
- Coverity: Fix resource leaks in phyp driver (Osier Yang)
- Coverity: Fix the forward_null error in Python binding codes (Osier Yang)
- Correct indent errors in the function qemuDomainNetsRestart (Li Zhang)
- Make lxcContainerSetStdio the last thing to be called in container startup (Daniel P.
Berrange)
- maint: avoid false positives on unmarked diagnostics (Eric Blake)
- util: Avoid libvirtd crash in virNetDevTapCreate (Alex Jia)
- storage: Break out the loop if duplicate pool is found (Osier Yang)
- qemu: Make sure qemu can access its directory in hugetlbfs (Jiri Denemark)
- More coverity findings addressed (Stefan Berger)
- blockjob: fix block-stream bandwidth race (Eric Blake)
- lxc: Fix coverity findings (Stefan Berger)
- Serialize running apibuild.py (Cole Robinson)
- macvtap: fix a typo (Stefan Berger)
- nwfilter: address more coverity findings (Stefan Berger)
- nwfilter: address coverity findings (Stefan Berger)
- util: fix error messages in virNetlinkEventServiceStart (Laine Stump)
- qemu: Avoid bogus error at the end of tunnelled migration (Jiri Denemark)
- qemu: Fix detection of failed migration (Jiri Denemark)
- rpc: Discard non-blocking calls only when necessary (Jiri Denemark)
- qemu: Preserve original error during migration (Jiri Denemark)
- util: fix crash when starting macvtap interfaces (Laine Stump)
- fix memleak in linuxParseCPUmap (Hu Tao)
- vbox: Fix passing an empty IMedium* array to IMachine::Delete (Matthias Bolte)
- esx: Fix segfault in esxConnectToHost (Ryan Woodsmall)
- virnetserver: handle sigaction correctly (Eric Blake)
- virsh: avoid uninitialized memory usage (Eric Blake)
- nwfilter: Fix support for trusted DHCP servers (Stefan Berger)
- Fix a memory leak (Stefan Berger)
- Do not enforce source type of console[0] (Jan Kiszka)
- storage: lvm: use correct lv* command parameters (Cole Robinson)
- Fix macvtap detection by also checking for IFLA_VF_MAX (Guido Günther)
- conf: Avoid double assignment in virDomainDiskRemove (Michal Privoznik)
- qemu: Fix mem leak in qemuProcessInitCpuAffinity (Michal Privoznik)
- qemu,util: fix netlink callback registration for migration (D. Herrendoerfer)
- qemuOpenFile: Don't force chown on NFS (Michal Privoznik)
- daemon: Plug memory leaks (Alex Jia)
- blockjob: allow for fast-finishing job (Eric Blake)
- qemu: Fix deadlock when qemuDomainOpenConsole cleans up a connection (Peter Krempa)
- snapshot: fix memory leak on error (Eric Blake)
- qemu_ga: Don't overwrite errors on FSThaw (Michal Privoznik)
- xen config: No vfb in HVM guest configuration (Stefan Bader)
- virURIParse: don't forget to copy the user part (Guido Günther)
- test: fix segfault in networkxml2argvtest (Laine Stump)
- conf: Plug memory leaks on virDomainDiskDefParseXML (Alex Jia)
- Fix parallel build in docs/ directory (Daniel P. Berrange)
- qemu: Don't leak temporary list of USB devices (Michal Privoznik)
Improvements:
- qemu: Refactor qemuDomainSetVcpusFlags (Peter Krempa)
- numad: Update comments in libvirt.spec.in (Osier Yang)
- numad: Check numactl-devel if compiled with numad support (Osier Yang)
- numad: Divide cur_balloon by 1024 before passing it to numad (Osier Yang)
- numad: Always output 'placement' of <vcpu> (Osier Yang)
- numad: Copy 'placement' of <numatune> to <vcpu> by default (Osier
Yang)
- numad: Set memory policy from numad advisory nodeset (Osier Yang)
- tests: add some self-documentation to tests (Alon Levy)
- util: set src_pid for virNetlinkCommand when appropriate (Laine Stump)
- util: function to get local nl_pid used by netlink event socket (Laine Stump)
- util: allow specifying both src and dst pid in virNetlinkCommand (Laine Stump)
- openvz: simplify openvzDomainDefineCmd by using virCommandPtr (Guido Günther)
- usb: create functions to search usb device accurately (Guannan Ren)
- rpm: Handle different source URLs for maint releases (Cole Robinson)
- qemu: Don't use virDomainDefFormat* directly (Jiri Denemark)
- qemu: reject blockiotune if qemu too old (Eric Blake)
- util: remove error log from stubs of virNetlinkEventServiceStart|Stop (Laine Stump)
- openvz: read vmguarpages/privvmpages to set memory tunables (Guido Günther)
- build: support libnl-3 (Serge Hallyn)
- util: add functions for interating over json object (Dmitry Guryanov)
- build: update pid_t type static check (Marc-André Lureau)
- build: fix output of pid values (Marc-André Lureau)
- virsh: output scaled values with correct units (Eric Blake)
- virsh: make -h always give help (Eric Blake)
- build: make ATTRIBUTE_NONNULL() a NOP unless STATIC_ANALYSIS is on (Laine Stump)
- Ensure logging is initialized early in libvirt_lxc (Daniel P. Berrange)
- Ensure LXC security driver is set unconditonally (Daniel P. Berrange)
- Ensure libvirt_lxc process loads the live XML config (Daniel P. Berrange)
- qemu: change rbd auth_supported separation character to ; (Josh Durgin)
- storage: Allow multiple hosts for a storage pool (Wido den Hollander)
- qemu_agent: Report error class at least (Michal Privoznik)
- configure: Use ustar format for dist tarball (Cole Robinson)
- qemu: Use common helper when probing qemu capabilities (Jiri Denemark)
- qemu: improve errors related to offline domains (Eric Blake)
- keepalive: Add ability to disable keepalive messages (Peter Krempa)
- Add new functions to virSocketAddr (Stefan Berger)
- macvtap: use embedded buffers (Stefan Berger)
- Improve on virAtomic implementation (Stefan Berger)
- build: Fix version of gettext macros (Peter Krempa)
- openvz: add network interface stats (Guido Günther)
- blockjob: enhance xml to track mirrors across libvirtd restart (Eric Blake)
- blockjob: add 'blockcopy' to virsh (Eric Blake)
- cpu: Improve error reporting on incompatible CPUs (Peter Krempa)
- openvz: wire up getHostname (Guido Günther)
- build: avoid strtol and strtod (Eric Blake)
- conf: tighten up XML integer parsing (Eric Blake)
- virsh: avoid strtol (Eric Blake)
- Support for atomic operations on integers (Stefan Berger)
- Implement virHashRemoveAll function (Stefan Berger)
- util: only register callbacks for CREATE operations in virnetdevmacvlan.c (D.
Herrendoerfer)
- blockjob: add virsh blockpull --wait (Eric Blake)
- qemu: use consistent error when qemu binary is too old (Eric Blake)
- vbox: avoid provoking assertions in VBoxSVC (Jean-Baptiste Rouault)
- conf: Do not parse cpuset only if the placement is auto (Osier Yang)
- tests: Update read-bufsiz to delete the UUID of vm XML (Osier Yang)
- test: Set the fixed uuid for the default XMLs (Osier Yang)
- qemu: Split ide-drive into ide-cd and ide-hd (Osier Yang)
- qemu: Split scsi-disk into into scsi-hd and scsi-cd (Osier Yang)
- xen: do not use ioemu type for any emulated NIC (Stefan Bader)
- qemuProcessStart: Switch to flags instead of bunch booleans (Michal Privoznik)
- qemu: Avoid the memory allocation and freeing (Osier Yang)
- numad: Ignore cpuset if placement is auto (Osier Yang)
- numad: Convert node list to cpumap before setting affinity (Osier Yang)
- openvz: wire up more node information functions (Guido Günther)
- virnetdev: Check for defined IFLA_VF_* (Philipp Hahn)
- Web placeholder for pending patches on the web site (Daniel Veillard)
- xend_internal: Use domain/status for shutdown check (Stefan Bader)
- blockjob: wire up qemu async virDomainBlockJobAbort (Eric Blake)
- blockjob: optimize JSON event handler lookup (Eric Blake)
- blockjob: add API for async virDomainBlockJobAbort (Adam Litke)
- blockjob: add qemu capabilities related to block pull jobs (Eric Blake)
- qemu: Warn on possibly incorrect usage of EnterMonitor* (Jiri Denemark)
- qemu: Track job owner for better debugging (Jiri Denemark)
- qemu: Avoid excessive calls to qemuDomainObjSaveJob() (Jiri Denemark)
- daemon: Add libvirtd-config.c to the list of files to translate (Jiri Denemark)
- Wire up <loader> to set the QEMU BIOS path (Daniel P. Berrange)
- virsh: Clean up usage of boolean flag variables (Peter Krempa)
- virsh: Clarify use of the --managed-save flag for the list command (Peter Krempa)
- Replace daemon-conf test script with a proper test case (Daniel P. Berrange)
- Switch libvirtd config loading code to use error APIs (Daniel P. Berrange)
- Add API for loading daemon config from in-memory blob (Daniel P. Berrange)
- Split libvirtd config file loading out into separate files (Daniel P. Berrange)
- UML: fix iteration over consoles (MATSUDA, Daiki)
- tests: avoid compiler warnings (Eric Blake)
- openvz: support vzctl 3.1 (Ilja Livenson)
- Don't install sysctl file on non-Linux hosts (Daniel P. Berrange)
- Add linuxNodeInfoCPUPopulate to src/libvirt_linux.syms (Daniel P. Berrange)
- qemu: Build activeUsbHostdevs list on process reconnect (Michal Privoznik)
- qemu: Delete USB devices used by domain on stop (Michal Privoznik)
- Fix initial hypervisor conditionals (Daniel P. Berrange)
- Remove bogus xen-devel dep from libvirt-devel RPM (Daniel P. Berrange)
- Introduce per-hypervisor virtual RPMs (Daniel P. Berrange)
- Split config files & daemon off from main daemon RPM (Daniel P. Berrange)
- Remove API XML files from libvirt RPM (Daniel P. Berrange)
- Move all documentation into a -docs sub-RPM (Daniel P. Berrange)
- virsh: Clarify escape sequence (Michal Privoznik)
Cleanups:
- building: remove libvirt_dbus.syms from EXTRA_DIST (Wen Congyang)
- conf: remove redundant () (Eric Blake)
- util: remove dead casts (Eric Blake)
- virsh: minor syntactic cleanups (Eric Blake)
- gitignore: Reorder alphabetically (Michal Privoznik)
Thanks everybody for helping with the release, be it with suggestion,
reports, documentation, patches or reviews !
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit
http://xmlsoft.org/
daniel(a)veillard.com | Rpmfind RPM search engine
http://rpmfind.net/
http://veillard.com/ | virtualization library
http://libvirt.org/