summaryrefslogtreecommitdiff
blob: 7e06096e51428c4ead175f77b5d8b48a350527c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
<?xml version="1.0"?>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  </head>
  <body>
    <h1 >Releases</h1>
    <p>Here is the list of official releases, however since it is early on in the
development of libvirt, it is preferable when possible to just use the <a href="downloads.html">GIT version or snapshot</a>, contact the mailing list
and check the <a href="ChangeLog.html">ChangeLog</a> to gauge progress.</p>
    <h3>0.7.5: Dec 23 2009</h3>
    <ul>
      <li>Features:
      Add new API virDomainMemoryStats to header and drivers (Adam Litke),
      Public API and domain extension for CPU flags (Jiri Denemark),
      expose SR IOV physical/virtual function relationships (Dave Allan),
      Support for JSON mode monitor [deactivated] (Daniel P. Berrange),
      Support for interface model='netfront' (Jiri Denemark),
      vbox: Add support for version 3.1 (Pritesh Kothari),
      Support QEMU's virtual FAT block device driver (Daniel P. Berrange)
      </li>

      <li>Documentation:
      Document the dommemstat command in the virsh man page (Adam Litke),
      esx: Add more links to external documentation (Matthias Bolte),
      esx: Extend documentation about 'vcenter' and add some about 'auto_answer' (Matthias Bolte),
      Fix and improve domain xml video element description (Matthias Bolte),
      Fix owner and group in example volume XML (Matthew Booth),
      add missing doc for device <shareable/> option (Daniel Veillard),
      add AppArmor test and examples to dist (Jamie Strandboge),
      Update location of C# bindings. (Richard Jones),
      Fix typo in QEMU driver webpage (Daniel P. Berrange),
      Clarify documentation for private symbols (Wolfgang Mauerer),
      Fix news.html validation (Dan Kenigsberg)
      </li>

      <li>Portability:
      Define ATTRIBUTE_SENTINEL for GCC &lt; 4.0 too (Matthias Bolte),
      Fix compilation  with configure --disable-nls (Matthias Bolte),
      Fix configure check for SASL (Matthias Bolte),
      Fix GnuTLS pkg-config check (Matthias Bolte),
      Report an error if no XDR library can be found (Matthias Bolte),
      Fix compilation with gcrypt &lt; 1.4.2 (Matthias Bolte),
      Don't mix LDFLAGS and LIBS in the configure script (Diego Elio Pettenò),
      Don't make it possible to define HAVE_HAL but not enable it in automake (Diego Elio Pettenò),
      Fix install location for Python bindings (Matthias Bolte),
      Use AM_PATH_PYTHON and python-config to detect Python configuration (Matthias Bolte),
      Fix a compilation failure if yajl not avail (Daniel Veillard),
      Fix compilation for configure --disable-nls (Matthias Bolte)
      </li>

      <li>Bug fixes:
      cpu: Fix memory leaks in x86FeatureLoad and x86ModelLoad (Matthias Bolte),
      Make Xen VT-d PCI attach/detach work (Chris Lalancette),
      Fix detection of JSON when restarting libvirtd (Daniel P. Berrange),
      Fix reporting of TLS connection errors (Daniel P. Berrange),
      Fix typo in qemudDomainAttachHostPciDevice() (Daniel Veillard),
      esx: Destroy virtual machine on a vCenter if available (Matthias Bolte),
      esx: Undefine virtual machine on a vCenter if available (Matthias Bolte),
      Initialize gcrypt threading (Daniel P. Berrange),
      Fix bug in storage driver accessing wrong private data (Daniel P. Berrange),
      esx_vi.c: do not call through NULL function pointer (Jim Meyering),
      esx_util.c: avoid NULL deref for invalid inputs (Jim Meyering),
      esx: Don't goto failure for invalid arguments in VMX code (Matthias Bolte),
      Fix memory leak in qemudBuildCommandLine (Matthias Bolte),
      avoid malfunction when virFileResolveLink is applied to non-POSIX FS (Jim Meyering),
      libvirt.c: don't let a NULL "cpumaps" argument provoke a NULL-deref (Jim Meyering),
      qemu migration: avoid NULL-deref given an invalid input (Jim Meyering),
      qemu_driver.c: don't unlink(NULL) on OOM error path (Jim Meyering),
      remote_driver.c: also zero out ->saslDecodedOffset member (Jim Meyering),
      qemu_driver.c: avoid double free on error path (Jim Meyering),
      libvirtd: avoid a NULL dereference on error path (Jim Meyering),
      virsh: avoid double-free (Jim Meyering),
      node_device_driver.c: don't write beyond EOB for 4K-byte symlink (Jim Meyering),
      Eliminate failure to delete empty storage pools (Laine Stump),
      Fix use of virEventAddHandleImpl() (Jiri Denemark),
      Fix possible NULL pointer dereference (Paolo Bonzini),
      fix various breakages in qemu Dump command (Paolo Bonzini),
      Fix reference leak in remoteDispatchStorageVolCreateXmlFrom (Matthias Bolte),
      Fix memory leak in virStorageBackendCopyToFD (Matthias Bolte),
      retrieve paused/running state at migration start (Paolo Bonzini),
      fix migration of paused vms upon failure (Paolo Bonzini),
      qemu driver: Fix segfault in libvirt/libvirtd when uri->path is NULL. (Richard Jones),
      Fix a wellformedness problem in secret.rng (Diego Elio Pettenò),
      Fix virDomainObj ref handling in QEMU driver (Daniel P. Berrange),
      Pull code to start CPUs executing out of qemudInitCpuAffinity() (Daniel P. Berrange),
      Fix migration cancellation for QEMU (Daniel P. Berrange),
      Fix crash when deleting monitor while a command is in progress (Daniel P. Berrange),
      udev_device_get_devpath might return NULL (Guido Günther),
      Fix some locking issues (Matthias Bolte),
      Fix event test timer checks on kernels with HZ=100 (Daniel P. Berrange),
      Fix threading problems in python bindings (Daniel P. Berrange),
      Supress annoying libcap-ng errors from valgrind (Daniel P. Berrange),
      Fix two leaks in test driver (Daniel P. Berrange),
      Free cgroup device ACL list on driver shutdown (Daniel P. Berrange),
      xen: Fix unconditional freeing in xenDaemonListDefinedDomains() (Matthias Bolte),
      Fix default disk type when parsing QEMU argv (Daniel P. Berrange),
      remove port filter when network device is detached (Gerhard Stenzel)
      </li>

      <li>Improvements:
      convert missing server entry points into unsupported errors (Daniel Veillard),
      fix some error report when on remote access (Olivier Fourdan),
      Disable JSON mode monitor until QEMU is more mature (Daniel P. Berrange),
      Only probe for CPU models if required (Jiri Denemark),
      Add cpu_map.xml to libvirt.spec (Jiri Denemark),
      Install cpu_map.xml (Jiri Denemark),
      esx: Don't warn about '/' paths (Matthias Bolte),
      esx: Extend vCenter query parameter (Matthias Bolte),
      esx: Improve domain lookup by UUID (Matthias Bolte),
      build: update gnulib submodule to latest (Jim Meyering),
      Relax the allowed values for machine type in schema (Daniel Veillard),
      Implement --pool option for virsh vol-path (Dave Allan),
      nodedev: Add removable storage 'media_label' prop (Cole Robinson),
      add --live support to "virsh dump" (Paolo Bonzini),
      add --crash support to "virsh dump" (Paolo Bonzini),
      Get QEMU pty paths from the monitor (Matthew Booth),
      Extract the assigned pty device for QEmu channels (Matthew Booth),
      Make QEMU driver use -chardev everywhere if available (Matthew Booth),
      add virsh --suspend arg to migrate command (Paolo Bonzini),
      reload iptables rules on libvirtd restart (Mark McLoughlin),
      reload iptables rules simply by re-adding them (Mark McLoughlin),
      Plumb domain description tag in xend backend (Jim Fehlig),
      Make QEMU text monitor parsing more robust (Daniel P. Berrange),
      Hook up JSON monitor to emit basic lifecycle events (Daniel P. Berrange),
      Add QEMU monitor callbacks for basic lifecycle events (Daniel P. Berrange),
      Switch over to passing a callback table to QEMU monitor (Daniel P. Berrange),
      Introduce callbacks for serializing domain object private data to XML (Daniel P. Berrange),
      Switch LXC driver to use a private data blob for virDomainObj state (Daniel P. Berrange),
      Switch UML driver to use a private data blob for virDomainObj state (Daniel P. Berrange),
      Add a 'format' arg to qemuMonitorChangeMedia() since JSON will support it (Daniel P. Berrange),
      Introduce a simple API for handling JSON data (Daniel P. Berrange),
      Add --system flag to autogen.sh to make it easy to build with right prefix (Daniel P. Berrange),
      Export all symbols from xml.h for internal use (Jiri Denemark),
      vbox: Use virIndexToDiskName() in vboxGenerateMediumName() (Matthias Bolte),
      Tests for interface type/model configuration (Jiri Denemark),
      Add virIndexToDiskName and fix mapping gap (Matthias Bolte),
      Add another SENTINEL attribute (Paolo Bonzini),
      Fix help message (Wolfgang Mauerer),
      Alternate CPU affinity impl to cope with NR_CPUS > 1024 (Daniel P. Berrange)
      </li>

      <li>Cleanups:
      The secret driver is stateful, link it directly to libvirtd (Matthias Bolte),
      Remove undefined symbols from libvirt_private.syms (Matthias Bolte),
      boolean shadows a typedef in rpcndr.h when compiled with MinGW (Matthias Bolte),
      Rename DATADIR to PKGDATADIR to fix win32 build (Jiri Denemark),
      Move cpu_map.xml to -client RPM (Jiri Denemark),
      Fix undefined reference to 'close_used_without_including_unistd_h' (Matthias Bolte),
      Fix argument type of virProcessInfoSetAffinity dummy function (Matthias Bolte),
      esx: Use occurrence enum to specify expected result of a SOAP call (Matthias Bolte),
      esx: Fix occurence typo (Matthias Bolte),
      esx: Removed unused inttypes.h include (Matthias Bolte),
      esx: Replace libxml1 'xmlChildrenNode' with libxml2 'children' (Matthias Bolte),
      esx: Use more suitable error code in esxVI_LookupVirtualMachineByUuid() (Matthias Bolte),
      esx: Add automatic question handling (Matthias Bolte),
      avoid calling exit with a constant; use EXIT_* instead (Jim Meyering),
      maint: remove from VC two gnulib-provided files (Jim Meyering),
      xm_internal.c: remove misleading dead code (Jim Meyering),
      Cleanup temporary #define after use (Matthew Booth),
      Suppress cgroup error message on sucess startup (Ryota Ozaki),
      Small change of RNG syntax for domain (Diego Elio Pettenò),
      remove iptablesReloadRules() and related code (Mark McLoughlin),
      remove all traces of lokkit support (Mark McLoughlin),
      Add virBufferFreeAndReset() and replace free() (Matthias Bolte),
      Fix the news file non-ascii characters (Daniel Veillard),
      Add missing commas to the 0.7.4 news section (Matthias Bolte),
      Change generated HTML to UTF-8 encoding (Daniel Veillard),
      Avoid an type-punned pointer aliasing pbm (Daniel Veillard),
      Move qemuMonitorEscape + migrate status enum into shared monitor code (Daniel P. Berrange),
      vbox: Update IIDs from version 3.1-beta2 to 3.1-final (Matthias Bolte),
      Fix ReprotError vs ReportError typo in JSON code (Daniel P. Berrange),
      Fix inverted conditional test in configure.ac check for yajl (Daniel P. Berrange),
      Pull schedular affinity code out into a separate module (Daniel P. Berrange),
      Ignore docs/ directory for strcmp() syntax check (Daniel P. Berrange)
      </li>

    </ul>
    <h3>0.7.4: Nov 20 2009</h3>
    <ul>
      <li>Features:
      Implement a node device backend using libudev (David Allan),
      New APIs for checking some object properties (Daniel P. Berrange),
      Fully asynchronous monitor I/O processing (Daniel P. Berrange),
      add MAC address based port filtering to qemu (Gerhard Stenzel),
      Support for IPv6 / multiple addresses per interfaces (Laine Stump)
      </li>

      <li>Documentation:
      Document overriding domain interface target (Cole Robinson),
      514532 Fix man page, most operation are synchronous (Daniel Veillard),
      Fix typo in error message (Matthew Booth),
      esx: Add documentation to the website (Matthias Bolte),
      AppArmor updates of examples (Jamie Strandboge),
      Add documentation for &lt;channel&gt; domain element (Matthew Booth),
      Separate character device doc guest and host parts (Matthew Booth),
      Add a Python example that lists active ESX domains (Matthias Bolte),
      LXC fix wrong or out-of-date function descriptions (Ryota Ozaki),
      docs: &lt;clock&gt; property is 'offset', not 'sync' (Cole Robinson),
      Update the documentation for virDomainMigrateToURI (Chris Lalancette),
      fix virDomainMigrateToURI doc (Dan Kenigsberg)
      </li>

      <li>Bug fixes:
      504262 Check for duplicated UUID in XM Xen defines (Daniel Veillard),
      512069 fix domain XML schemas for backward compatibility (Daniel Veillard),
      qemu-kvm needs -enable-kvm flag for VT optimization (Steve Yarmie),
      fix deprecated iptables command syntax (Steve Yarmie),
      Ensure driver lock is released when entering QEMU monitor (Daniel P. Berrange),
      only remove masquerade roles for VIR_NETWORK_FORWARD_NAT (Guido Günther),
      esx: Fix CPU clock Hz to MHz conversion (Matthias Bolte),
      esx: Fix memory leak in esxVI_HostCpuIdInfo_Free() (Matthias Bolte),
      esx: Fix MAC address formatting (Matthias Bolte),
      Fix compilation of libvirt against xen-unstable (Jim Fehlig),
      Fix probing for libpciaccess (Daniel P. Berrange),
      Fix incorrect reference counting logic in qemu monitor open (Daniel P. Berrange),
      Don't return fatal error in HAL driver init if HAL isn't running (Daniel P. Berrange),
      Fix cleanup when state driver init fails (Daniel P. Berrange),
      AppArmor handling of accesses to readonly files (Jamie Strandboge),
      AppArmor require absolute paths (Jamie Strandboge),
      Check that domain is running when starting console (Daniel P. Berrange),
      Fix incorrect variable passed to LXC event callback (Daniel P. Berrange),
      Fix race condition in HAL driver startup (Daniel P. Berrange),
      Remove capng_lock() call when spawning LXC container init process (Daniel P. Berrange),
      Fix initscript to check daemon pidfile (Daniel P. Berrange),
      Filter out stale domains from xenstore listing (Daniel P. Berrange),
      Fix logic in xenUnifiedNumOfDomains to match xenUnifiedListDomains (Jonas Eriksson),
      Disable IPv6 socket auto-binding to IPv4 socket (Daniel P. Berrange),
      Fix save and restore with non-privileged guests and SELinux (Daniel P. Berrange),
      Prevent initializing ebtables if disabled in qemu.conf (Ryota Ozaki),
      phyp: too much timeout when polling socket (Eduardo Otubo),
      phyp: ssh authentication with public key fixed (Eduardo Otubo),
      opennebula: Fix potential memory/mutex leak in state driver startup (Matthias Bolte),
      phyp: Break potential infinite loops (Matthias Bolte),
      phyp: Fix memory/session leaks and potential invalid frees (Matthias Bolte),
      storage: conf: Fix memory leak in encryption parsing (Cole Robinson),
      Fix improper error return in virInterfaceDefParseProtoIPvX (Laine Stump),
      Fix virInterfaceIpDefPtr leak during virInterfaceIpDefFree (Laine Stump),
      give up python interpreter lock before calling cb (Dan Kenigsberg),
      ESX: Fix memory leak in list handling functions. (Matthias Bolte),
      Fix --with-init-script configure option (Matthew Booth),
      Don't let parent of daemon exit until basic initialization is done (Daniel P. Berrange),
      Fix configure detection of device mapper (Pritesh Kothari),
      Remote code caught EINTR making it ininterruptable (Daniel Veillard),
      virterror: Add a missing 'break' for VIR_ERR_INVALID_SECRET (Cole Robinson),
      Fix p2p migration without a passed uri. (Cole Robinson),
      Fix problems in the Xen inotify driver. (Matthias Bolte),
      Remove a completely bogus reference increment in the Xen driver. (Chris Lalancette),
      528575 avoid libvirtd crash on LCX domain autostart (Daniel Veillard),
      Fix SELinux linking issues (Jim Fehlig),
      node device: Fix locking issue in virNodeDeviceDestroy (Cole Robinson),
      LXC fix virCgroupGetValueStr problem with \n (Ryota Ozaki),
      Avoid crash in virBufferEscapeString (Laine Stump),
      LXC complement PATH environment variable (Ryota Ozaki)
      </li>

      <li>Improvements:
      Enable udev instead of hal on F12 / RHEL-6 or later (Daniel P. Berrange),
      python: Actually implement list*Interfaces bindings (Cole Robinson),
      esx: Handle 'vmxnet3' in esxVMX_FormatEthernet() (Matthias Bolte),
      Fix check for existance of cgroups at creation (Daniel P. Berrange),
      Fix virt-aa-helper when host and os.type arch differ (Jamie Strandboge),
      Add translation of PCI vendor and product IDs (David Allan),
      Add scsi_target device type (David Allan),
      Add several fields to node device capabilities (David Allan),
      Add virConnectGetLibvirtVersion API (Cole Robinson),
      Implement finer grained migration control for Xen (Maximilian Wilhelm),
      Support for SATA Disks in virDomainDiskBus (pritesh),
      LXC implement missing DomainInterfaceStats API (Ryota Ozaki),
      disable mac_filter config switch by default (Gerhard Stenzel),
      phyp: Reorder keyboard_interactive label in openSSHSession() (Eduardo Otubo),
      Implmentation of new APIs to checking state/persistence of objects (Daniel P. Berrange),
      Allow timeouts waiting for QEMU job lock (Daniel P. Berrange),
      Release driver and domain lock when running monitor commands (Daniel P. Berrange),
      Add reference counting on virDomainObjPtr objects (Daniel P. Berrange),
      Locking of the qemuMonitorPtr object (Daniel P. Berrange),
      Wrap text mode monitor APIs, pass qemuMonitorPtr directly to APIs (Daniel P. Berrange),
      Move encryption lookup back into qemu driver file (Daniel P. Berrange),
      Make use of private data structure for monitor state (Daniel P. Berrange),
      Add a new timed condition variable wait API (Daniel P. Berrange),
      Fix errno handling for pthreads wrappers (Daniel P. Berrange),
      524280 pass max lease option to dnsmasq (Daniel Veillard),
      Store the range size when adding a DHCP range (Daniel Veillard),
      qemu: Allow cpu pinning for all logical CPUs, not just physical (Cole Robinson),
      qemu: Use same create/define overwrite logic for migration prepare. (Cole Robinson),
      qemu: Break out function to check if we can create/define/restore (Cole Robinson),
      Add sentinel attribute for NULL terminated arg lists (Paolo Bonzini),
      test: Update inactive guest config on shutdown (Cole Robinson),
      test: Add testDomainShutdownState helper (Cole Robinson),
      Properly convert port numbers to/from network byte order (Matthew Booth),
      phyp add create() and destroy() support (Eduardo Otubo),
      Support for &lt;channel&gt; in domain and QEmu backend (Matthew Booth),
      Detect availability of QEMU -chardev CLI option (Matthew Booth),
      Allow character devices to have different target types (Matthew Booth),
      LXC allow container to have ethN interfaces (Ryota Ozaki),
      New ebtables module wrapper (Gerhard Stenzel),
      test: Implement virDomainPinVcpu (Cole Robinson),
      test: Implement virDomainGetVcpus (Cole Robinson),
      test: Update vcpu runtime info in SetVcpus (Cole Robinson),
      test: Use privateData to track running VM vcpu state (Cole Robinson),
      test: Break out wrapper for setting up started domain state. (Cole Robinson),
      test: Fixes for SetVcpus (Cole Robinson),
      Make monitor type (miimon/arpmon) optional in bond xml (Laine Stump),
      Support reporting live interface IP/netmask (Laine Stump),
      Make startmode optional in toplevel interface definition (Laine Stump),
      Move libvirtd event loop into background thread (Daniel P. Berrange),
      Allow NULL mac address in virGetInterface (Laine Stump),
      ESX: Don't automatically follow redirects. (Matthias Bolte),
      ESX: Change disk selection for datastore detection. (Matthias Bolte),
      ESX: Fallback to the preliminary name if the datastore cannot be found. (Matthias Bolte),
      Set KMEMSIZE for OpenVZ domains being defined (Yuji NISHIDA),
      Allow for a driver specific private data blob in virDomainObjPtr (Daniel P. Berrange),
      More network utility functions (Matthew Booth),
      Add symbols from new network.h module (Daniel Veillard),
      Set of new network related utilities (Daniel Veillard),
      Convert virDomainObjListPtr to use a hash of domain objects (Daniel P. Berrange),
      qemu: migrate: Don't require manual URI to specify a port (Cole Robinson),
      test: Support virStorageFindPoolSources (Cole Robinson),
      storage: Add ParseSourceString function for use with FindPoolSources. (Cole Robinson),
      Add support for an external TFTP boot server (Paolo Bonzini),
      test: Support virNodeDeviceCreate and virNodeDeviceDestroy (Cole Robinson),
      Consolidate virXPathNodeSet() (Daniel Veillard),
      Support QEMU watchdog device. (Richard Jones),
      Do not log rotate very small logs (Dan Kenigsberg),
      LXC implement missing macaddr assignment feature (Ryota Ozaki),
      tests: Initialize virRandom in for test suite. (Cole Robinson),
      tests: Add storage volume XML 2 XML tests. (Cole Robinson),
      tests: Add network XML to XML tests. (Cole Robinson),
      schema: Update network schema. (Cole Robinson),
      tests: Add XML 2 XML tests for storage pools. (Cole Robinson),
      tests: Break out duplicate schema verification functionality. (Cole Robinson),
      tests: Fix text output for interface XML 2 XML (Cole Robinson),
      Add ocfs2 to list of fs pool types (Jim Fehlig),
      Finer grained migration control (Chris Lalancette)
      </li>

      <li>Cleanups:
      remove sysfs_path and parent_sysfs_path from XML (Dave Allan),
      Removing devicePath member from dev struct (Dave Allan),
      report OOM in two places in node_device_driver.c (Dave Allan),
      Whitespace cleanup for pre-tags on the website (Matthias Bolte),
      Fix type in configure output summary (Daniel P. Berrange),
      Remove a compilation warning on uninitialized var (Daniel Veillard),
      Change DTD references to use public instead of system identifier (Matthias Bolte),
      Remove obsolete devicekit checks (Daniel P. Berrange),
      Small guestfwd code cleanup (Matthew Booth),
      Small indentation cleanup of domain schema (Matthew Booth),
      AppArmor code cleanups (Jamie Strandboge),
      Fix formatting of XML for an inactive guest (Daniel P. Berrange),
      Remove DevKit node device backend (David Allan),
      Exclude numactl on s390[x] (Daniel P. Berrange),
      Fix error handling in qemuMonitorOpen (Ryota Ozaki),
      Fix warning on make due to missing cast (int) (Ryota Ozaki),
      Various fixes following a code review part 2 (Daniel Veillard),
      Various fixes following a code review (Daniel Veillard),
      Move code for low level QEMU monitor interaction into separate file (Daniel P. Berrange),
      Make pciDeviceList struct opaque (Daniel P. Berrange),
      Add missing OOM error checks, reports and cleanups (Matthias Bolte),
      Removes the ebtablesSaveRules() function (Gerhard Stenzel),
      phyp: Use actual error code instead of 0 (Matthias Bolte),
      phyp: Don't use VIR_ALLOC if a stack variable is good enough (Matthias Bolte),
      phyp: Fix several UUID table related problems (Matthias Bolte),
      phyp: Check for exit_status &lt; 0 before parsing the result (Matthias Bolte),
      phyp: memcpy/memmove/memset can't fail, so don't check for error (Matthias Bolte),
      phyp: Make generic domain listing functions return -1 in case of error (Matthias Bolte),
      Fix configure check for libssh2 (Matthias Bolte),
      Repair getIPv4Addr after the ntohl conversion (Daniel Veillard),
      Cleanup whitespace in docs (Matthew Booth),
      Use virBuffer when building QEMU char dev command line (Matthew Booth),
      Cleanup virBuffer usage in qemdBuildCommandLine (Matthew Booth),
      Fix some cut-and-paste error in migration code (Paolo Bonzini),
      Ensure guestfwd address is IPv4 and various cleanups (Matthew Booth),
      LXC cleanup deep indentation in lxcDomainSetAutostart (Ryota Ozaki),
      LXC messages cleanup and fix lxcError (Ryota Ozaki),
      qemu: Remove compiled out localhost migration support (Cole Robinson),
      Various error reporting fixes (Cole Robinson),
      Improve error reporting for virConnectGetHostname calls (Cole Robinson),
      Fix up NLS warnings. (Chris Lalancette),
      Remove redundant virFileDeletePID() call (Chris Lalancette),
      Fix return value in virStateInitialize impl for LXC (Daniel P. Berrange),
      ESX: Unify naming of VI API utility and convenience functions. (Matthias Bolte),
      Rename internal APis (Daniel P. Berrange),
      Pull signal setup code out into separate method (Daniel P. Berrange),
      Fix duplicating logging of errors in libvirtd (Daniel P. Berrange),
      Fix initialization order bugs (Daniel P. Berrange),
      Misc cleanup to network socket init (Daniel P. Berrange),
      Annotate many methods with ATTRIBUTE_RETURN_CHECK &amp; fix problems (Daniel P. Berrange),
      Don't use private struct member names of in6_addr (Matthias Bolte),
      Fix typo in network.c function comments (Matthew Booth),
      libvirt-devel should only require libvirt-client (Mark McLoughlin),
      qemu: Fix an error message in GetVcpus (Cole Robinson),
      storage: Break out function to add pool source to a SourceList. (Cole Robinson),
      storage: Break out pool source parsing to a separate function. (Cole Robinson),
      Fix some typos in comments (Dan Kenigsberg),
      Fix error message in qemudLoadDriverConfig() (Matthias Bolte),
      Add a new syntax-check rule for gethostname. (Chris Lalancette),
      Various syntax-check fixes. (Chris Lalancette),
      Tighten up nonreentrant syntax-check. (Chris Lalancette),
      Replace a gethostname by virGetHostname in libvirtd.c (Chris Lalancette),
      Replace two strcmp() by STREQ() in qemu_driver.c (Chris Lalancette),
      Replace gethostname by virGetHostname in xend_internal.c (Chris Lalancette),
      Add a default log_level to qemudSetLogging to remove a build warning. (Chris Lalancette),
      Better error message when libvirtd fails to start. (Chris Lalancette),
      Fix potential false-positive OOM error reporting. (Matthias Bolte),
      Fix virsh.c compilation warning (Jim Fehlig),
      Fix a make dist error due to wrong EXTRA_DIST paths (Daniel Veillard),
      node device: Break out get_wwns and get_parent_node helpers (Cole Robinson),
      tests: Centralize VIR_TEST_DEBUG lookup, and document it (Cole Robinson),
      Remove bogus const annotations to hash iterator (Daniel P. Berrange),
      Remove bashisms from schema tests. (Matthias Bolte),
      Don't copy old machines from a domain which has none (Mark McLoughlin)
      </li>
    </ul>
    <h3>0.7.3: Nov 20 2009</h3>
    <p>Broken release use 0.7.4</p>

    <h3>0.7.2: Oct 14 2009</h3>
      <ul>
        <li>Features:
        sVirt AppArmor security driver (Jamie Strandboge),
        Add public API definition for data stream handling (Daniel P. Berrange),
        ESX add esxDomainDefineXML() (Matthias Bolte),
        LXC: suspend/resume support (Ryota Ozaki),
        Big code tree cleanup (Daniel P. Berrange)
        </li>

        <li>Documentation:
        Documentation and examples for SVirt Apparmor driver (Jamie Strandboge),
        Fix documentation and comment typos (Paolo Bonzini),
        Fix up a few typos in the tree. (Chris Lalancette),
        Fix a typo in virNetHasValidPciAddr() too (Mark McLoughlin),
        Fix a typo in virDiskHasValidPciAddr() (Jiri Denemark),
        Fix a number of small typos (Dan Kenigsberg),
        add doc for graphic and video elements (Florian Vichot),
        Fix up 'neccessary -&gt; necessary' in a comment. (Chris Lalancette),
        Fix up comments for domainXML{To,From}Native. (Chris Lalancette),
        Simple fix of a comment in qemuStringToArgvEnv. (Chris Lalancette),
        Add a README file to src/ explaining the directory structure (Daniel P. Berrange),
        doc: don't emit trailing blanks into generated and VC'd NEWS file (Jim Meyering)
        </li>

        <li>Portability:
        Misc win32 build fixes (Daniel P. Berrange),
        Don't require full daemon install for libvirt python bindings (Daniel P. Berrange),
        Tweak specfile to fix RHEL6 rules &amp; ESX/PHYP enablement (Daniel P. Berrange),
        Bug Fixes:,
        network: Fix printing XML 'delay' attribute (Cole Robinson),
        Fix virFileReadLimFD/virFileReadAll to handle EINTR (Daniel P. Berrange),
        storage: Fix generating iscsi 'auth' xml (Cole Robinson),
        Fix QEMU restore from file in raw format (Daniel P. Berrange),
        Take domain type into account when looking up default machine (Mark McLoughlin),
        Fix schema to allow missing machine type (Mark McLoughlin),
        Fix stream abort upon I/O failure during migration (Daniel P. Berrange),
        Create /var/log/libvirt/{lxc,uml} dirs (Mark McLoughlin),
        nodedev: Add locking in nodeNumOfDevices (Cole Robinson),
        test: Throw a proper error in GetBridgeName (Cole Robinson),
        526769 change logrotate config default to weekly (Daniel Veillard),
        Fix emission of domain events messages (Daniel P. Berrange),
        unbreak `make rpcgen' (Paolo Bonzini),
        unbreak migration (Paolo Bonzini),
        Fix USB device re-labelling (Mark McLoughlin),
        Avoid a libvirtd crash on broken input 523418 (Daniel Veillard),
        Re-label image file backing stores (Mark McLoughlin),
        Fix memory leaks in libvirtd's message processing (Matthias Bolte),
        Fix QEMU test suite with new VNC env variable (Daniel P. Berrange),
        VBox vboxDomainDestroy forgot to wait for completion (Pritesh Kothari),
        Vbox call OpenHardDisk with "" instead of NULL (Pritesh Kothari),
        Avoid double free in errors in virsh (Jim Fehlig),
        Fix crash in device hotplug cleanup code (Daniel P. Berrange),
        Maintain value of ctxt-&gt;node in virInterfaceDefParseDhcp (Laine Stump),
        Fix some XPath relative node resets (Daniel Veillard),
        Fix unitialized variable in qemudDomainDetachHostPciDevice() (Charles Duffy),
        ESX: Check if a datastore is accessible first (Matthias Bolte),
        Fix handling of Xen(ner) detection (Daniel P. Berrange),
        Fix xen driver refcounting. (Matthias Bolte),
        prevent attempt to call cat -c during virDomainSave to raw (Charles Duffy),
        Don't do virSetConnError when virDrvSupportsFeature is successful. (Chris Lalancette),
        Fix a double-free in qemudRunLoop() (Chris Lalancette),
        Fix leak in PCI hostdev hot-unplug (Mark McLoughlin),
        Fix net/disk hot-unplug segfault (Mark McLoughlin)
        </li>

        <li>Improvements:
        schema: Update storage pool schema. (Cole Robinson),
        test: Activate interfaces specified through driver config file. (Cole Robinson),
        Rewrite example domain events programm for python (Daniel P. Berrange),
        Support a new peer-to-peer migration mode &amp; public API (Daniel P. Berrange),
        LXC add augeas support for config file (Amy Griffis),
        LXC add driver config file lxc.conf (Amy Griffis),
        LXC do not truncate container log files on restart (Amy Griffis),
        LXC initialize logging configuration (Amy Griffis),
        Add debug for envp[] in virExecWithHook() (Amy Griffis),
        Add accessors for logging filters and outputs (Amy Griffis),
        Add virFileAbsPath() utility (Amy Griffis),
        LXC implement memory control APIs (Ryota Ozaki),
        Add a domain argument to SVirt *RestoreImageLabel (Jamie Strandboge),
        test: Support loading node device info from file/XML (Cole Robinson),
        test: Implement node device driver. (Cole Robinson),
        configure: Add explict --with-python option. (Cole Robinson),
        Tunnelled migration. (Chris Lalancette),
        Various monitor improvements for migration. (Chris Lalancette),
        523639 Allows a &lt;description&gt; tag for domains (Daniel Veillard),
        Add src/util/storage_file.c to the POTFILES.in. (Chris Lalancette),
        Add a qemu feature flag for unix socket migration. (Chris Lalancette),
        Let remoteClientStream only do RX if requested. (Chris Lalancette),
        Introduce virStorageFileMetadata structure (Mark McLoughlin),
        Allow control over QEMU audio backend (Daniel P. Berrange),
        Handle data streams in remote client (Daniel P. Berrange),
        Handle outgoing data streams in libvirtd (Daniel P. Berrange),
        Handle incoming data streams in libvirtd (Daniel P. Berrange),
        Lots of cleanups and improvement on QEmu monitor code (Daniel P. Berrange),
        ESX add esxVI_Occurence enum to for occurences (Matthias Bolte),
        ESX add x86_64 detection based on the CPUID (Matthias Bolte),
        ESX add tests for the VMX to/from domain XML mapping (Matthias Bolte),
        ESX Add esxDomainXMLToNative() (Matthias Bolte),
        ESX Set challenge for auth callback to hostname (Matthias Bolte),
        ESX Add esxNodeGetFreeMemory() (Matthias Bolte),
        network: add 'bootp' and 'tftp' config (Paolo Bonzini),
        OpenVZ Fix a restriction about domain names (Yuji NISHIDA),
        Make pki_check.sh into an installed &amp; supported tool (Daniel P. Berrange),
        ESX add support for vmxnet3 virtual device (Shahar Klein)
        </li>

        <li>Cleanups:
        remote: Don't print a warning every time a remote call fails (Cole Robinson),
        storage: Report errors in FindPoolSources (Cole Robinson),
        LXC fix return code handling in lxcVmStart (Ryota Ozaki),
        Add a target for libvirt.devhelp (Daniel Veillard),
        Remove some auto-generated files (Daniel P. Berrange),
        Re-arrange doTunnelMigrate to simplify cleanup code (Daniel P. Berrange),
        Separate out code for sending tunnelled data (Daniel P. Berrange),
        Pull connection handling code out of doTunnelMigrate (Daniel P. Berrange),
        Refactor native QEMU migration code (Daniel P. Berrange),
        Don't force dconn to be NULL in virDomainMigrate (Daniel P. Berrange),
        Remove unneccessary uri_in parameter from virMigratePrepareTunnel (Daniel P. Berrange),
        Move the VIR_DRV_FEATURE* constants (Daniel P. Berrange),
        Fix configure.ac message vertical alignment (Daniel P. Berrange),
        cgroup: Fix -Werror breakage (Cole Robinson),
        Fix handling return value of qemuMonitorSetBalloon (Ryota Ozaki),
        Fix up "make check" (Chris Lalancette),
        Fix rebuilding of devhelp files (Daniel P. Berrange),
        Fix ordering of &lt;exports&gt; in API description file (Daniel P. Berrange),
        node conf: Make parsing routines consistent with other drivers (Cole Robinson),
        nodedev: Break out virNodeDeviceHasCap to node_conf (Cole Robinson),
        python: Add a newline after custom classes (Cole Robinson),
        python: Fix generated virInterface method names (Cole Robinson),
        python: Use a pure python implementation of 'vir*GetConnect' (Cole Robinson),
        python: Don't generate bindings for vir*Ref (Cole Robinson),
        python: Don't generate conflicting conn.createXML functions. (Cole Robinson),
        python: Remove use of xmllib in generator.py (Cole Robinson),
        python: Remove FastParser from generator. (Cole Robinson),
        Fix typo in Makefile.am breaking NEWS file generation (Daniel P. Berrange),
        Fix build in separate build directory (Jiri Denemark),
        Incorrect error message in virDomainNetDefParseXML (Florian Vichot),
        Fix a few 'make rpm' breakages (Daniel Veillard),
        Pass remote_message_header to the dispatch functions. (Chris Lalancette),
        Fix up some warnings from stream DEBUG statements. (Chris Lalancette),
        Fix apibuild.py warnings (Matthias Bolte),
        Change signature of remoteSendStreamData() to fix compile warning (Matthias Bolte),
        Add virStorageFileGetMetadata() helper (Mark McLoughlin),
        Move virStorageGetMetadataFromFD() to libvirt_util (Mark McLoughlin),
        Split virStorageGetMetadataFromFD() from virStorageBackendProbeTarget() (Mark McLoughlin),
        Move file format enum to libvirt_util (Mark McLoughlin),
        Remove hand-crafted UUID parsers (Daniel P. Berrange),
        Helper functions for processing data streams in libvirtd (Daniel P. Berrange),
        Standardize debugging messages in QEMU monitor code (Daniel P. Berrange),
        Remove low level monitor APIs from header file (Daniel P. Berrange),
        Rename qemudMonitorSendCont to qemuMonitorStartCPUs (Daniel P. Berrange),
        Pull QEMU monitor interaction out to separate file (Daniel P. Berrange),
        util.h needs libvirt.h for virConnectPtr (Mark McLoughlin),
        Fix API doc extractor to stop munging comment formatting (Daniel P. Berrange),
        Fix secret_driver compile warning, bug. (Charles Duffy),
        ESX remove phantom mode (Matthias Bolte),
        ESX replace esxUtil_EqualSuffix() with virFileHasSuffix() (Matthias Bolte),
        ESX Whitespace cleanup (Matthias Bolte),
        Fix up "make syntax-check" after the tree restructuring. (Chris Lalancette),
        Introduce virStrncpy. (Chris Lalancette),
        Ignore auto-generated header file (Daniel P. Berrange),
        Remove an unnecessary variable from remoteIOReadMessage(). (Chris Lalancette),
        Remove auto-generated header file from repo (Daniel P. Berrange),
        Move example XML files into examples/xml (Daniel P. Berrange),
        Remove all generated docs from source control (Daniel P. Berrange),
        Fix missing data file in qemuhelpdata (Daniel P. Berrange),
        Misc syntax-check fixes (Daniel P. Berrange),
        Move remote protocol definition into src/remote/ (Daniel P. Berrange),
        Move all shared utility files to src/util/ (Daniel P. Berrange),
        Move all XML configuration handling to src/conf/ (Daniel P. Berrange),
        Re-arrange python generator to make it clear what's auto-generated (Daniel P. Berrange),
        Remove obsolete files (Daniel P. Berrange),
        Move docs/examples into examples/ (Daniel P. Berrange),
        Remove unused images from docs/ directory (Daniel P. Berrange),
        Rename daemon main code (Daniel P. Berrange),
        Move config files to align with driver sources (Daniel P. Berrange),
        Move virsh into tools/ directory (Daniel P. Berrange),
        Move security drivers to src/security/ (Daniel P. Berrange),
        Move secret driver into src/secret/ (Daniel P. Berrange),
        Move netcf interface driver into src/interface/ (Daniel P. Berrange),
        Move network driver into src/network (Daniel P. Berrange),
        Move remote driver to src/remote/ (Daniel P. Berrange),
        Move test driver into src/test/ (Daniel P. Berrange),
        Move node device drivers to src/node_device/ (Daniel P. Berrange),
        Move storage drivers into src/storage/ (Daniel P. Berrange),
        Move OpenVZ driver to src/openvz/ (Daniel P. Berrange),
        Move UML driver to src/uml/ (Daniel P. Berrange),
        Move QEMU driver to src/qemu/ (Daniel P. Berrange),
        Move LXC driver into src/lxc/ (Daniel P. Berrange),
        Move xen driver code into src/xen/ directory (Daniel P. Berrange),
        Rename qemud/ directory to daemon/ (Daniel P. Berrange),
        Refactor libvirt.spec to allow client-only builds (Daniel P. Berrange)
        </li>
    </ul>

    <h3>0.7.1: Sep 15 2009</h3>
    <ul>
      <li>New features:
        Add support for encrypted (qcow) volume creation. (Miloslav Trmač),
        Secret manipulation public API (Miloslav Trmač),
        Multipath storage support module (Dave Allan),
        VBox add Storage Volume support (Pritesh Kothari),
        Support configuration of huge pages in guests (Daniel P. Berrange),
        Support new PolicyKit 1.0 API (Daniel P. Berrange),
        Compressed save image format for Qemu (Chris Lalancette, Charles Duffy
        and Jim Meyering),
        QEmu add host PCI device hotplug support (Mark McLoughlin)
      </li>
      <li>Documentation:
        Minor comment changes (Laine Stump),
        Fix up virNodeGetCellsFreeMemory (Chris Lalancette),
        Fix some typos and remove unhelpful acronyms in QEMU docs (Daniel P. Berrange),
        Add documentation about the QEMU driver security features (Daniel P. Berrange),
        Remove 'the-the' typo in docs (Daniel P. Berrange),
        Fix some URLs in virsh manpage (Mark McLoughlin),
        Add link to AbiCloud web management system (Daniel P. Berrange),
        Update logging documentation (Amy Griffis)
      </li>
      <li>Portability:
        Fix win32 platform build (Daniel P. Berrange)
      </li>
      <li>Bug fixes:
        VBox bug when starting machine from old versions (Pritesh Kothari),
        ESX avoid potential leaks (Matthias Bolte),
        Fix more OOM handling bugs (Daniel P. Berrange),
        Fix logging buffer overrun read (Daniel P. Berrange),
        Fix misc thread locking bugs / bogus warnings (Daniel P. Berrange),
        Fix regression from "Avoid polling on FDs with no events" (Chris Lalancette),
        Close logfile fd after spawning qemu (Ryota Ozaki),
        Check for libssh2 &gt;= 1.0 for phy driver (Maximilian Wilhelm),
        Avoid another leak in src/xend_internal.c (Matthias Bolte),
        Avoid a leak in xenDaemonLookupByID (Matthias Bolte),
        VBox fix minor bugs in display and added OOM checks (Pritesh Kothari),
        Some close/fclose/closedir calls are missing (Matthias Bolte),
        lxc_container.c: avoid a leak on error paths (Jim Meyering),
        Fix several memory leaks (Ryota Ozaki),
        Fix a memory leak in virsh (Laine Stump),
        Fix ID field in virDomainPtr after starting Xen VM (Daniel P. Berrange),
        Fix memory leak of monitor character device (Daniel P. Berrange),
        Automatically set correct ownership of QEMU state directories (Daniel P. Berrange),
        Avoid polling on FDs with no events enabled (Daniel P. Berrange),
        esx_vi: return -1 upon failure, as intended (Matthias Bolte),
        python: let libvirt_virConnectDomainEventCallback indicate success (Jim Meyering),
        uml_conf.c: don't return an uninitialized pointer (Jim Meyering),
        storage_backend.c: assure clang that inputvol can't be NULL (Jim Meyering),
        libvir.c: avoid NULL dereference in virStoragePoolSetAutostart (Jim Meyering),
        lxc: avoid NULL dereference upon getmntent failure (Jim Meyering),
        storage_backend_fs: avoid NULL dereference on opendir failure (Jim Meyering),
        Fix bugs in virDomainMigrate v2 code. (Chris Lalancette),
        VMware ESX: Don't warn on some query parameter (Matthias Bolte),
        Don't blindly reorder disk drives (Daniel P. Berrange),
        Fix sexpr2string() to handle empty list. (Jim Fehlig),
        Fix driver entry table for UML numa APIs (Daniel P. Berrange),
        Fix crash in virsh vol-key command (Pritesh Kothari),
        517157 fix selinux problem with images on NFS (Darryl L. Pierce),
        Fix phypOpen() escape_specialcharacters (Mattias Bolte),
        Power Hypervisor: fix potential segfault (Mattias Bolte),
        Fix bridge/tap system error reporting (Mark McLoughlin),
        Reset PCI host devices after hot-unplug (Mark McLoughlin),
        Reset unmanaged PCI host devices before hotplug (Mark McLoughlin),
        Fix up connection reference counting. (Chris Lalancette),
        Fix LXC driver crash when kernel doesn't support clone (Daniel P. Berrange),
        Make LXC / UML drivers robust against NUMA topology brokenness (Daniel P. Berrange),
        Run 'cont' on successful migration finish. (Chris Lalancette),
        Fix QEMU domain status after restore. (Chris Lalancette),
        Handle kernels with no ipv6 support (Mark McLoughlin),
        Set perms on /var/lib/libvirt/boot to 0711 (Mark McLoughlin),
        chown kernel/initrd before spawning qemu (Mark McLoughlin),
        Several fixes to libvirtd's log setup (Amy Griffis),
        Fix memleak if esxOpen fails (Matthias Bolte)
      </li>
      <li>Improvement:
        support lzop save compression for qemu (Charles Duffy),
        VBox 3.0.6 API change support (Pritesh Kothari),
        Add UUID definition required by storage encryption import (Daniel P. Berrange),
        Make secrets RNG more strict (Daniel P. Berrange),
        Fill in secret UUID for qcow encryption (Daniel P. Berrange),
        Add usage type/id as a public API property of virSecret (Daniel P. Berrange),
        Fix UUID handling in secrets/storage encryption APIs (Daniel P. Berrange),
        Save vcpuinfo in status file (Daniel P. Berrange),
        Restart libvirtd upon RPM upgrade (Daniel P. Berrange),
        Add support for qcow encrypted volumes to qemu. (Miloslav Trmač),
        Provide missing passphrase when creating a volume. (Miloslav Trmač),
        Add virsh commands for secrets APIs (Miloslav Trmač),
        Local file implementation of secret driver API (Miloslav Trmač),
        Mask out flags used internally for virSecretGetValue (Miloslav Trmač),
        Add &lt;usage&gt; to &lt;secret&gt; docs (Miloslav Trmač),
        also allow use of XZ for Qemu image compression (Jim Meyering),
        Support relabelling of USB and PCI devices (Daniel P. Berrange),
        Add helper APIs for iterating over PCI device resource files (Daniel P. Berrange),
        Add helper module for dealing with USB host devices (Daniel P. Berrange),
        Test that domain-specific qemu machine types are used correctly (Mark McLoughlin),
        Probe machine types from kvm binary too (Mark McLoughlin),
        Look up machine types from all domains in qemudGetOldMachines() (Mark McLoughlin),
        Test qemu machine aliases (Mark McLoughlin),
        Add qemu -help test data for qemu-kvm-0.11.0-rc2 (Mark McLoughlin),
        Add a more featureful qemu capabilities test data (Mark McLoughlin),
        Add arm arch to capabilities schema (Mark McLoughlin),
        Update capabilities schema to allow multiple machines per domain (Mark McLoughlin),
        Add esx and tcp migration uri transports to capabilities schema (Mark McLoughlin),
        Reintroduce support for lzop compression (Charles Duffy),
        build: update gnulib submodule to latest (Jim Meyering),
        Add flags and requires for Multipath storage (Daniel Veillard),
        ESX raise error if UUID parse failed (Matthias Bolte),
        ESX add domain undefine based on esxVI_UnregisterVM (Matthias Bolte),
        ESX add esxGetCapabilities() with basic defaults (Matthias Bolte),
        Switch Power Hypervisor to libssh2 (Eduardo Otubo),
        Allow libvirtd to RPC to external libvirtd (Chris Lalancette),
        Add support for setting disk drive serial numbers (Daniel P. Berrange),
        VBox support for defining/dumping video devices (Pritesh Kothari),
        Generic parsing support for video acceleration (Pritesh Kothari),
        VMware ESX: Allow ethernet address type 'vpx' (Matthias Bolte),
        Support for getting/setting number of cpus in VBox (Pritesh Kothari),
        Make handling of monitor prompts more general. (Miloslav Trmač),
        Attach encryption information to virDomainDiskDef. (Miloslav Trmač),
        Recognize encryption format of qcow volumes. (Miloslav Trmač),
        Attach encryption information to virStorageVolDef. (Miloslav Trmač),
        Add volume encryption information handling. (Miloslav Trmač),
        Secret manipulation API docs refresh and wire up python generator (Miloslav Trmač),
        Secret manipulation remote client (Miloslav Trmač),
        Secret manipulation libvirtd wire protocol and remote dispatcher (Miloslav Trmač),
        Secret manipulation public API implementation (Miloslav Trmač),
        Secret manipulation internal API (Miloslav Trmač),
        Add test for recently fixed crash with latest XenD (Daniel P. Berrange),
        Don't expose 'vnet%d' to the user (Mark McLoughlin),
        Maintain a list of active PCI hostdevs and use it in pciResetDevice() (Mark McLoughlin),
        Simplify PCI hostdev prepare/re-attach using a pciDeviceList type (Mark McLoughlin),
        Use pci_addr=auto with QEMU's pci_add monitor command (Mark McLoughlin),
        Check active domain hostdevs before allowing PCI reset (Mark McLoughlin),
        Allow pciResetDevice() to reset multiple devices (Mark McLoughlin),
        Improve PCI host device reset error message (Mark McLoughlin),
        Reset and re-attach PCI host devices on guest shutdown (Mark McLoughlin),
        Allow PM reset on multi-function PCI devices (Mark McLoughlin),
        Detect KVM's PCI device assignment support (Mark McLoughlin),
        Split virDomainMigrate into functions. (Chris Lalancette),
        Consolidate code for parsing the logging env (Amy Griffis)
      </li>
      <li>Cleanups:
        Remove accidentally added UUID re-definition in storage schema (Daniel P. Berrange),
        ESX cleanup of CPU model strings (Matthias Bolte),
        Fix use of dlopen modules (Daniel P. Berrange),
        Consolidate "cont" into qemudMonitorSendCont() (Miloslav Trmač),
        Cleanup sec driver error reporting to use virReportSystemError (Daniel P. Berrange),
        Port QEMU driver to use USB/PCI device helpers (Daniel P. Berrange),
        Simplify and fix qemudCanonicalizeMachine() (Mark McLoughlin),
        Split up qemudGetOldMachines() (Mark McLoughlin),
        Re-factor qemu test machine allocation code (Mark McLoughlin),
        Canonicalize the qemu machine type in qemuxml2argvtest (Mark McLoughlin),
        Dump qemu driver capabilities if test debugging enabled (Mark McLoughlin),
        Fix formatting of machine types in capabilities XML (Mark McLoughlin),
        qemu_driver.c: factor out more duplication (Jim Meyering),
        Deprecate lzma and lzop in favor of xz, add dep (Daniel Veillard),
        qemu_driver.c: factor out duplication in compression-type handling (Jim Meyering),
        openvz_conf.c: remove dead store to "p"; use strchrnul (Jim Meyering),
        Remove some tabs used for indent (Daniel Veillard),
        Updated a number of localizations and regenerated (Daniel Veillard),
        Add a missing comment (Miloslav Trmač),
        Fix a pasto in storage_encryption_conf.c (Miloslav Trmač),
        xm_internal.c: remove four useless comparisons after strchr (Jim Meyering),
        xm_internal.c: remove dead increment of "data" (Jim Meyering),
        network_driver.c: remove dead store to "err" (Jim Meyering),
        iptables.c: remove dead store to "s" (Jim Meyering),
        util.c: avoid dead store to "flag" (Jim Meyering),
        domain_conf.c: remove two dead stores (Jim Meyering),
        xm_internal.c: remove two ret=... dead stores (Jim Meyering),
        xm_internal.c: remove dead stores of local, "type" (Jim Meyering),
        network_conf.c: remove dead store to "err" (Jim Meyering),
        openvz_driver.c: avoid dead store to "err" (Jim Meyering),
        xend_internal.c: Remove two dead stores to "ret" (Jim Meyering),
        storage_driver.c: remove two dead stores to "backend" (Jim Meyering),
        qemu_conf.c: add a comment suggesting why we leave a dead-store (Jim Meyering),
        hash.c: remove a dead store (Jim Meyering),
        interface_conf.c: remove a dead-store and declaration (Jim Meyering),
        eventtest.c: detect write failure and avoid dead stores (Jim Meyering),
        openvz_conf.c: Remove dead store to copy_fd (Jim Meyering),
        storage_backend_logical.c: appease clang: remove useless increment (Jim Meyering),
        ESX simplify SOAP request and response handling (Matthias Bolte),
        ESX use virXPathNode*() to simplify XPath handling (Matthias Bolte),
        ESX: make esxVI_GetVirtualMachineIdentity() robust (Matthias Bolte),
        ESX: Fix VMX path parsing and URL encoding (Matthias Bolte),
        VBox driver cleanups (Pritesh Kothari),
        PHYP driver cleanups (Daniel Veillard),
        Move QEMU monitor socket in /var/lib/libvirt/qemu (Daniel P. Berrange),
        xen_internal.c: remove two unused local variables (Jim Meyering),
        mdns.c: remove dead initialization (Jim Meyering),
        node_device_conf.c: remove dead initialization (Jim Meyering),
        openvz_conf.c: don't use undefined local, "net" (Jim Meyering),
        test.c: don't use undefined local, "def" (Jim Meyering),
        remote_internal.c: appease clang (Jim Meyering),
        infra: define ATTRIBUTE_NONNULL to mark non-NULL parameters (Jim Meyering),
        lxc: don't unlink(NULL) in main (Jim Meyering),
        storage_conf.c: avoid overflow upon use of "z" or "Z" (zebi) suffix (Jim Meyering),
        VBox cleanup and update of networking shutdown (Pritesh Kothari),
        Box cleanup and update of networking XML functions (Pritesh Kothari),
        Fix misc OOM bugs (Daniel P. Berrange),
        Misc fixes to secrets API code (Daniel P. Berrange),
        Only add glusterfs dep for Fedora &gt;= 11 (Daniel P. Berrange),
        Remove redundant base64 include file (Daniel P. Berrange),
        Don't assume buffered output echoes the command. (Miloslav Trmač),
        Update chinese, polish and spanish localizations (Daniel Veillard),
        OpenVZ: accept NULL as type for GetMaxVCPUs. (Chris Lalancette),
        Remove use of strncpy in qemudExtractMonitorPath. (Chris Lalancette),
        Refactor policycode auth code to avoid compiler warnings (Daniel P. Berrange),
        spec file: add URL to Source tag (Mark McLoughlin),
        Small fixes for qemu save compression. (Chris Lalancette),
        Fix thinko in PCI hostdev detach (Mark McLoughlin),
        Revert changes to allow pciResetDevice() reset multiple devices (Mark McLoughlin),
        Fix list updating after disk/network/hostdev hot-unplug (Mark McLoughlin),
        Re-name remote_internal.c:driver to remote_driver (Mark McLoughlin),
        Cosmetic change to 'virsh nodedev-list --tree' output (Mark McLoughlin),
        Re-factor hostdev hotplug (Mark McLoughlin),
        Remove a duplicated assignment in Xen PCI parsing. (Chris Lalancette),
        Fix up a few minor indentation issues. (Chris Lalancette),
        Fix phyp escape_specialcharacters. (Chris Lalancette),
        Make openvzGetVPSUUID take a len. (Chris Lalancette),
        Minor cleanup of error path for c_oneVmInfo. (Chris Lalancette),
        Fix up a whitespace in comments in src/console.c (Chris Lalancette),
        Fix up a stray whitespace in virHashGrow. (Chris Lalancette),
        Remove unsafe strncpy from esx_vmx.c (Chris Lalancette),
        Cleanup VIR_LOG_DEBUG parsing in eventtest (Amy Griffis),
        Tighten libvirt's parsing of logging env (Amy Griffis),
        Cleanup structure name naming (Matthias Bolte),
        Add proper OOM reporting for esxDomainGetOSType (Matthias Bolte)
      </li>
    </ul>
    <h3>0.7.0: Aug  5 2009</h3>
    <ul>
      <li>New features: Interface implementation based on netcf (Laine Stump,
      Daniel Veillard), Add new net filesystem glusterfs (Harshavardhana),
      Initial VMWare ESX driver (Matthias Bolte), Add support for VBox
      3 and event callbacks on vbox (Pritesh Kothari), First version
      of the Power Hypervisor driver (Eduardo Otubo), Run QEMU guests
      as an unprivileged user (Daniel P. Berrange), Support cgroups
      in QEMU driver (Daniel P. Berrange), QEmu hotplug NIC support
      (Mark McLoughlin), Storage cloning for LVM and Disk backends(Cole
      Robinson), Switching to GIT (Jim Meyering)</li>

      <li>Documentation: Typo and comment fixes (Aron Griffis),
      Fix virCapabilitiesDefaultGuestMachine documentation. (Chris
      Lalancette), ESX Scheduler documentation and cleanup (Matthias
      Bolte), Update the java bindings page (Bryan Kearney), Added
      Matthias Bolte to AUTHORS list (Daniel Veillard), doc: clone+build
      instructions (Jim Meyering), docs: say that the old repository
      is deprecated... (Jim Meyering), document tcp listen and raw
      wire option (Guido Günther), Fix docs and code disagreements
      for character devices. (Cole Robinson), Fix documentation of
      virStoragePoolUndefine return (Thomas Treutner), Fix gitweb link on
      download page. (Cole Robinson), update download informations after
      switch to git (Daniel Veillard), Update links to bugzilla (Garry
      Dolley), Update the links for RHEL libvirt bugzillas (Garry Dolley)</li>

      <li>Portability: Xen Inotify support needs sys/inotify.h
      (Maximilian Wilhelm), Workaround for broken GCC in Debian Etch
      (Maximilian Wilhelm), LXC driver requires sched.h and unshare()
      (Maximilian Wilhelm), Configure UML support only if sys/inotify.h
      present (Maximilian Wilhelm), Fix libcurl automatic check and ESX
      status (Maximilian Wilhelm), Enable ESX driver build on Mingw32
      (Daniel P. Berrange), Fix build on mingw32 by disabling netcf
      (Daniel P. Berrange), Reduce glusterfs dependency to 2.0.1
      (Mark McLoughlin), Desactivate phyp build and indicate libssh
      builreq (Daniel Veillard), Fix misc Win32 compile warnings
      (Daniel P. Berrange), Rename variable for compilation in Mingw32
      (end) (Laine Stump), Rename variable for compilation in Mingw32
      (Laine Stump), rpm spec cleanup and split off client only package
      (Daniel Veillard)</li>

      <li>Bug fixes: Add uniqueness checking for LXC define/create methods
      (Daniel P. Berrange), Fix removal of transient VMs when LXC aborts
      (Daniel P. Berrange), Don't try to activate cgroups if not present
      for LXC (Daniel P. Berrange), Refresh /etc/xen if inotify wasn't
      (Cole Robinson), Don't loose id on xen domain redefine (Cole
      Robinson), Fix memory leak in openvz driver (Daniel P. Berrange),
      Protected against potential crash scenarios (Daniel P. Berrange),
      Fix crash when attempting to shutdown inactive QEMU vm (Daniel
      P. Berrange), Fix PCIe FLR detection (Mark McLoughlin), Set perms
      on /var/lib/libvirt/images to 0711 (Mark McLoughlin), Fix problem
      writing QEMU pidfile (Daniel P. Berrange), Fix vcpupin on Xen
      problem (Henrik Persson), Fix RPM upgrades from F11 to F12 (Daniel
      P. Berrange), Fix deadlock in remote driver domain events (Daniel
      P. Berrange), qemu: fix monitor socket reconnection (Ryota Ozaki),
      Fix polkit/netcf disabling on older fedoras (Mark McLoughlin),
      Fix crashes in Xen capabilities code (Daniel P. Berrange),
      Always add -no-kvm and -no-kqemu, for qemu domains (Jim Paris),
      Avoid raising an internal error (Paolo Bonzini), Don't allow NULL
      paths for BlockStats and InterfaceStats (Cole Robinson), Don't
      leak vm-monitorpath on re-connect (Mark McLoughlin), Don't restore
      labels on shared/readonly disks (Daniel P. Berrange), Ensure spawned
      children have a stderr/out set to /dev/null if requested (Daniel
      P. Berrange), Ensure test:/// URIs get routed to the non-privileged
      libvirtd (Daniel P. Berrange), fix another failing "make distcheck"
      (qemuhelptest) (Jim Meyering), Fix an uninitialized variable
      in Unix socket open (Jun Koi), Fix configure flags in spec file
      (Daniel Veillard), Fix error reporting for security driver over
      remote protocol (Daniel P. Berrange), fix failing "make distcheck"
      (Jim Meyering), Fix free of unitialized data upon PCI open fail
      (Daniel P. Berrange), Fix informations about previous git server
      (Daniel Veillard), Fix memory leaks in esxDomainDumpXML (Matthias
      Bolte), Fix multiple memory leaks in virsh (Laine Stump), Fix PCI
      device hotplug/unplug with newer QEMU (Daniel P. Berrange), Fix
      problem with QEMU monitor welcome prompt confusing libvirt after a
      libvirtd daemon restart with active guests (Daniel P. Berrange),
      Fix python examples to use read-write conn (Dan Kenigsberg), Fix
      reconnect bug for VBox (Pritesh Kothari), Fix SELinux denial during
      hotplug (Daniel P. Berrange), Fix typo in check for glusterfs format
      pools (Daniel P. Berrange), Fix typo in storage cloning (Daniel
      P. Berrange), qemu: Check driver is initialized up front, to avoid
      segfault. (Cole Robinson), qemu: Try multiple times to open unix
      monitor socket (Cole Robinson), Release conn lock before reporting
      errors (end) (Laine Stump), Release conn lock before reporting
      interface errors (Laine Stump), Remove the network backend if NIC
      hotplug fails (Mark McLoughlin), Set specific flags for glusterfs
      fs mounts (Harshavardhana), storage: disk: Default to 'ext2' for
      new volumes. (Cole Robinson), storage: disk: Fix parthelper '-g'
      option handling. (Cole Robinson), storage: disk: Fix segfault
      creating volume without target path (Cole Robinson), storage:
      Fix deadlock when cloning across pools. (Cole Robinson), Update
      modified mac address in place in virGetInterface (Laine Stump)</li>

      <li>Improvements: Add an allocation unit when calling qemu-img
      (Ryota Ozaki), Improve diagnostics when pidfile writing fails
      (Daniel P. Berrange), Disable IPv6 on virtual networks (Daniel
      P. Berrange), Allow dnsmasq to provide DNS without DHCP (Daniel
      P. Berrange), Fix an initialization problem in previous patch
      (Aron Griffis), Remove MAX_TAP_ID and let kernel do numbering
      (Aron Griffis), Kernel command line support for UML (Ron Yorston),
      Activate the interface drivers, and cleanups (Daniel Veillard),
      Add an error code for conflicting mac addresses (Laine Stump),
      Add a test interface driver (Laine Stump), Add canonical machine
      name to capabilities output (Mark McLoughlin), add cd and pwd
      commands to virsh (Paolo Bonzini), Add checks for some NIC hotplug
      related features added in qemu-0.10.0 (Mark McLoughlin), Add
      domain autostart for LXC driver (Daniel P. Berrange), Add domain
      events support to LXC driver (Daniel P. Berrange), Add interface
      object list manipulation functions (Laine Stump), Add internal XML
      parsing/formatting flag (Mark McLoughlin), Add netcf XML schemas
      and test data (Daniel Veillard), Add new net filesystem glusterfs
      (Harshavardhana), Add NIC and hostnet names to domain state XML
      (Mark McLoughlin), Add no_verify query parameter to ESX URIs
      (Matthias Bolte), Add SCM_RIGHTS support to QEMU monitor code
      (Mark McLoughlin), Add support for attaching network/bridge NICs
      in QEMU driver (Mark McLoughlin), add support for netcf XML import
      and export (Daniel Veillard), Add support for network device detach
      (Mark McLoughlin), Add support for physical memory access for QEmu
      (Nguyen Anh Quynh), Add support for VBox 3 and event callbacks on
      vbox (Pritesh Kothari), Add the monitor type to the domain state
      XML (Mark McLoughlin), Add virCapsGuestMachine structure (Mark
      McLoughlin), Add virsh commands for network interface management
      (Laine Stump), Allow autostart of libvirtd to be disabled with
      LIBVIRT_AUTOSTART=0 (Daniel P. Berrange), Allow leading dots in VMX
      config entry names (Matthias Bolte), Assign names to qemu NICs and
      network backends (Mark McLoughlin), Basic qemu NIC hotplug support
      (Mark McLoughlin), build: adjust aclocal's search patch to prefer
      gnulib's m4 files. (Jim Meyering), build: automatically rerun
      ./bootstrap when needed (Jim Meyering), build: make autogen.sh use
      autoreconf -if (Jim Meyering), build: submodule machinery now works
      also when no tag is reachable (Jim Meyering), Canonicalize qemu
      machine types (Mark McLoughlin), Change code generator to give async
      event messages their own postfix (Daniel P. Berrange), Change the
      way client event loop watches are managed (Daniel P. Berrange),
      Decode incoming request header before invoking dispatch code
      (Daniel P. Berrange), Define an API for registering incoming message
      dispatch filters (Daniel P. Berrange), ESX driver accept VI API
      version 4.0 (Matthias Bolte), Fill in vCPU - pCPU current mapping,
      and vCPU cpuTime for QEMU (Daniel P. Berrange), generate ChangeLog
      from git logs into distribution tarball (Jim Meyering), Implement
      qemu dump capabilities (Paolo Bonzini), Implement schedular
      tunables API using cgroups (Daniel P. Berrange), Implement the
      new virinterface functions (Laine Stump), Make cgroups a little
      more efficient (Daniel P. Berrange), Make it easier to debug tests
      running programs (Daniel P. Berrange), Make qemuBuildHostNetStr()
      take tapfd as a string (Mark McLoughlin), Make QEMU cgroups use
      configurable (Daniel P. Berrange), Make qemuCmdFlags available in
      qemudDomainAttachDevice() (Mark McLoughlin), Move queuing of RPC
      replies into dispatch code (Daniel P. Berrange), Move vnet_hdr logic
      into qemudNetworkIfaceConnect() and export it (Mark McLoughlin),
      Netcf based interface driver implementation (Laine Stump), netcf
      XML validation and input and output tests (Daniel Veillard), Only
      probe qemu for machine types when binary changes (Mark McLoughlin),
      Place every QEMU guest in a private cgroup (Daniel P. Berrange),
      Probe for QEMU machine types (Mark McLoughlin), Probe QEMU directly
      for machine aliases if not found in capabilties (Mark McLoughlin),
      Public API for new virInterface functions (Laine Stump), python:
      Raise exceptions if virDomain*Stats fail. (Cole Robinson), Refactor
      cgroups to allow a group per driver to be managed directly (Daniel
      P. Berrange), Re-factor pci_add reply parsing and parse domain/bus
      numbers (Mark McLoughlin), Retain disk PCI address across libvirtd
      restarts (Mark McLoughlin), Retain PCI address from NIC attach
      (Mark McLoughlin), Run QEMU guests as an unprivileged user (Daniel
      P. Berrange), Separate code for encoding outgoing remote message
      headers (Daniel P. Berrange), Split generic RPC message dispatch
      code out from remote protocol API handlers (Daniel P. Berrange),
      Split out code for handling incoming method call messages
      (Daniel P. Berrange), storage: Break out actual raw cloning to
      separate function. (Cole Robinson), storage: cleanup: do away with
      'createFile' (Cole Robinson), storage: disk: Use capacity, not
      allocation, when creating volume. (Cole Robinson), storage: Don't
      try sparse detection if writing to block device. (Cole Robinson),
      storage: Implement 'CreateBlockFrom' helper. (Cole Robinson),
      storage: Implement CreateVolFrom for logical and disk backend. (Cole
      Robinson), storage: Move most of the FS creation functions to
      common backend. (Cole Robinson), storage: Refactor FS backend
      'create' function choosing. (Cole Robinson), Store the interface
      vlan number in the domain state (Mark McLoughlin), Support video
      element for QEMU guests (Daniel P. Berrange), Support video tag
      for defining VGA card properties (Daniel P. Berrange), Switch to
      using a unix socket for the qemu monitor (Mark McLoughlin), test:
      Generate net interface names when assigning XML. (Cole Robinson),
      test: Implement BlockStats and InterfaceStats (Cole Robinson),
      Use cgroups for block device whitelisting in QEMU guests (Daniel
      P. Berrange), Use enums for cgroup controller types / labels
      (Daniel P. Berrange), Use sendmsg() on QEMU monitor socket (Mark
      McLoughlin), Use virDomainChrTypeFromString() instead of open
      coding (Mark McLoughlin), Use virFileReadAll/virFileWriteStr for
      key cgroup read/write helpers (Daniel P. Berrange), virGetinterface
      matching of MAC and interface name (Laine Stump)</li>

      <li>Cleanups: Fix configure checks from previous commits (Daniel
      P. Berrange), Avoid a warning if compiling without inotify
      (Daniel P. Berrange), Remove a stray semicolon (Daniel Veillard),
      Extend the ESX URL to habdle ports and GSX (Matthias Bolte), Fix
      escaping of 8-bit high characters (Daniel P. Berrange), , Remove
      ATTRIBUTE_UNUSED from flags to qemudDomainMigratePerform. (Chris
      Lalancette), Add a comment about setting errors after
      qemudStartVMDaemon(). (Chris Lalancette), Fix an erroneous
      debug error to KVM; it should read QEMU/KVM. (Chris Lalancette),
      Remove a stray semicolon in qemudDomainMigratePrepare2. (Chris
      Lalancette), Convert a few stray users of free() in libvirt.c
      to VIR_FREE(). (Chris Lalancette), Use virGetHostname instead
      of gethostname. (Chris Lalancette), Fix up a minor indentation
      issue with virDomainMigratePrepare. (Chris Lalancette), Fix up a
      silly typo in apibuild.py. (Chris Lalancette), Avoid warning when
      compiling without IFF_VNET_HDR (Maximilian Wilhelm), Capilize
      libvirt-client summary (Mark McLoughlin), Move ldconfig calls
      to libvirt-client %post/%postun (Mark McLoughlin), Convert NEWS
      to UTF-8 (Mark McLoughlin), Fix trailing whitespace in NEWS
      (Mark McLoughlin), No need to build require both python-devel
      and python (Mark McLoughlin), Remove executable perms from
      /etc/sysconfig/libvirtd (Mark McLoughlin), Use a %postun -p for
      one line scriptlet (Mark McLoughlin), Don't explicitly require
      libxml2 (Mark McLoughlin), Fix some unowned directories (Mark
      McLoughlin), Kill qemu BuildRequires (Mark McLoughlin), Enable
      netcf by default (Mark McLoughlin), Default to with_polkit
      (Mark McLoughlin), Make vbox support configurable (Mark
      McLoughlin), Build with --without-capng if capng is disabled
      (Mark McLoughlin), BuildRequires libcap-ng-devel not capng-devel
      (Mark McLoughlin), Drop curl host check when using ESX without
      check (Shahar Klein), Fix typo in xen capabilities code (Daniel
      P. Berrange), Add bare format string to printf-derivatives troubles
      (Laine Stump), Add phyp files to POTFILES, to make syntax-check
      happy. (Cole Robinson), avoid a make distcheck failure: distribute
      docs/schemas/interface.rng (Jim Meyering), avoid a make distcheck
      failure: distribute tests/interfaceschemadata/ (Jim Meyering), avoid
      a "make syntax-check" failure (Jim Meyering), build: do not emit
      a trailing blank line into VC'd file, NEWS (Jim Meyering), build:
      update from gnulib, for latest maint.mk (Jim Meyering), Clean up
      error handling in qemudDomainAttachNetDevice() (Mark McLoughlin),
      Cleanup qemu binary detection logic in qemudCapsInitGuest() (Mark
      McLoughlin), Commit newly generated docs, after changes from
      commit 2348cf. (Cole Robinson), Factor qemuBuildHostNetStr()
      out from qemuBuildCommandLine() (Mark McLoughlin), Factor
      qemuBuildNicStr() out from qemuBuildCommandLine() (Mark McLoughlin),
      Factor qemudMonitorSend() out of qemudMonitorCommandExtra() (Mark
      McLoughlin), Fix cgroup compile warnings (Daniel P. Berrange),
      Fix misc build problems due to new drivers (Daniel P. Berrange),
      Fix wierd build problems due to autopoint overwriting gnulib m4
      (Daniel P. Berrange), Makefile.cfg: Rename to... (Jim Meyering),
      make .gnulib a submodule (Jim Meyering), make "make syntax-check"
      consistent with "git diff --check" (Jim Meyering), Minor qemu
      monitor coding style fixes (Mark McLoughlin), Prepare to use
      maint.mk from gnulib (Jim Meyering), Refactor incoming message
      handling to prepare for data stream support (Daniel P. Berrange),
      Refactor message sending to allow code reuse for data streams
      (Daniel P. Berrange), remove all .cvsignore files (Jim Meyering),
      remove all trailing blank lines (Jim Meyering), Remove some unused
      variables and cut long lines (Daniel Veillard), Remove trailing
      blank lines (Daniel Veillard), Rename a bunch of internal methods
      to clarify their meaning (Daniel P. Berrange), Rename 'direction'
      to 'type' in remote_message_header (Daniel P. Berrange), Report
      the object name on lookup error (Daniel Veillard), Simplify remote
      driver error reporting (Daniel P. Berrange), skip some of gnulib's
      new rules (Jim Meyering), use automake-1.11's silent-rules
      option, when possible (Jim Meyering), use gnumakefile and
      maintainer-makefile modules from gnulib (Jim Meyering)</li>
    </ul>
    <h3>0.6.5: Jul  3 2009</h3>
    <ul>
      <li>New features: create storage columes on disk backend (Henrik Persson),
          drop of capabilities based on libcap-ng when possible (Daniel
          Berrange)</li>
      <li>Portability: fix build on non-Linux targets (Daniel Berrange)</li>
      <li>Documentation: typo and english fixes (Runa Bhattacharjee and
          Garry Dolley), Docs on extending APIs (Dave Allan), cleanup
          of debug and logging documentation (Amy Griffis), add
          HACKING doc to the website (Daniel Berrange),
          documentation for OpenNebula driver (Abel Miguez Rodriguez)</li>
      <li>Bug fixes: forbid autostart on transcient networks,
          xen device removal crash (Daniel Berrange), re-detection of
          transient VMs after libvirtd restart(Daniel Berrange),
          bug in virFindFileInPath (Daniel Berrange), handle new
          availheap sysctl in Xen (Daniel Berrange), allow USB hostdev
          product 0 (Cole Robinson), cleanup when creating a storage pool
          fails (Henrik Persson), domain id fix on redefinition in
          test driver (Cole Robinson), fix raw storage allocation (Cole
          Robinson), memory reporting for inactive qemu drivers (Cole
          Robinson), segfault if storage pool has no type attribute (Cole
          Robinson), OpenNebula compilation issues (Javier Fontan),
          dominfo command without security driver (Daniel Berrange),
          domain state problems after migration or destroy (Federico
          Simoncelli), leak in node device parsing (Dave Allan),
          storage pool definitions reading at startup (Cole Robinson),
          bogus WWN in NPIV support (David Allan), avoid a segfault with
          recent Xen (Sascha), cope with libnuma failures on weird
          topologies (Dan Berrange), crash in QEMU driver with bad capabilities
          data (Dan Berrange), trying to re-create a pool should not destroy
          it (Dave Allan), endless loop in node device XML dump (Cole Robinson),
          Re-label shared and readonly images (Dan Berrange)</li>
      <li>Improvements: create and destroy NPIV support (David Allan),
          networking in UML driver (Daniel Berrange), HAL driver restart
          thread safety (Daniel Berrange), capabilities and nodeinfo
          APIs for LXC (Daniel Berrange), iNUMA API for VBox (Daniel Berrange),
          dynamically search and use kvm-img qemu-img or qcow-create (Doug
          Goldstein), fix qemu and kvm version parsing (Mark McLoughlin),
          serial number for HAL storage (Dave Allan), improve error reporting
          for virConnectOpen URIs (Daniel Berrange), include OS driver name
          in device XML (Daniel Berrange), fix qemu command flags fetching
          (Cole Robinson), check that qemu support -drive format= (Cole
          Robinson), improve emulator detection (Cole Robinson), changes
          to config parser to accomodate VMX syntax (Matthias Bolte),
          update network schemas and driver for missing elements (Satoru SATOH),
          avoid changing file context if not needed (Tim Waugh),
          skip labelling if no src path (Cole Robinson), add arm emulation
          if qemu-system-arm is present (C.J. Adams-Collier)</li>
      <li>Cleanups: daemon check logging env variables (Daniel Berrange),
          User Mode Linux start and stop cleanups (Daniel Berrange),
          share the NUMA api implementations (Daniel Berrange), storage
          module dependancies (Dave Allan), refactor storage XML parsing
          (Cole Robinson), big cleanup of logging code (Amy Griffis),
          superfluous % on format (Matthias Bolte), cleanups and updates
          on OpenNebula driver (Daniel Berrange and Abel Miguez Rodriguez)</li>
    </ul>
    <h3>0.6.4: May 29 2009</h3>
    <ul>
      <li>New features: new API virStorageVolCreateXMLFrom (Cole Robinson),
          full VBox graphic capabilities (Pritesh Kothari), Interface config
          APIs (Laine Stump), APIs for domain XML conversions (Daniel
          Berrange), initial version of OpenNebula driver (Abel Miguez
          Rodriguez)</li>
      <li>Portability: better compiler warning selection (Daniel Berrange),
          Win32 portability fixes (Daniel Berrange)</li>
      <li>Documentation: documentation for &lt;sound&gt; device XML format (Cole
          Robinson), storage format documentation fixes (Ryota Ozaki),
          docs for XML conversion APIs (Daniel Berrange), inconsistencies
          in storage volume docs and schemas (Ryota Ozaki)</li>
      <li>Bug fixes: fix hostdev managed handling (Mark McLoughlin),
          lxc_controller should not cash without args (Guido Gunther),
          bug fixes in I/O routines (Guido Gunther), fix migrationsave/restore
          for QEmu 0.10.0 (Daniel Berrange), avoid crash on VBox init
          (Guido Gunther), fix dev and cgroup init in LXC (Ryota Ozaki),
          QEmu startup fix (Cole Robinson), block node reboots from LXCs (Ryota
          Ozaki), QEmu argv detection fix for recent kvm (Daniel Berrange),
          fix watch/timer event deletion (Daniel Berrange), fix XML escaping
          bug, various locking bugs (Daniel Berrange), avoid a deadlock in
          HAL nodedev driver (Cole Robinson), detection of node device media
          insert/eject (Cole Robinson), broken networking with new QEMU/KVM
          &gt;= 86 (Daniel Berrange), various fixes in domain and network
          startup error report (Cole Robinson), double free on unexpected
          client disconnect (Daniel Berrange)</li>
      <li>Improvements: cleanups and doc on virExec (Cole Robinson), error
          reporting in QEmu migrations (Cole Robinson), better path and driver
          detection in VBox (Pritesh Kothari), avoid caching QEMU driver
          capabilities(Cole Robinson), multiple graphics elements definitions
          (Pritesh Kothari), LSB init header init.d improvements (Frederik
          Himpe), special erro code for invalid operations (Daniel Berrange),
          dlopen error logging (Daniel Berrange), fix UUID and name uniqueness
          (Daniel Berrange), improvement on VBox initialization (Pritesh
          Kothari and Dan Berrange), "Host only" and "Internal" network in VBox
          (Pritesh Kothari), add utility virExecDaemonize (Cole Robinson),
          enable bridges without IP (Ludwig Nussel), 'make -s' silencing
          (Daniel Berrange), test case for exercising the event loop (Daniel
          Berrange), virsh commands vol-clone and vol-create-from (Cole
          Robinson), new xend don't use [] around cpumaps (Tatsuro Enokura),
          add the CIL mutex lock checker (Daniel Berrange), fix some LXC
          error code (Amy Griffis), virInterface python bindings (Daniel
          Berrange), fix to the example code for event handling (Pritesh
          Kothari), always add location informations to logging (Daniel
          Berrange), python domain events example and binding (Daniel
          Berrange), PPC Qemu Machine Type update (Thomas Baker)</li>
      <li>Cleanups: strings bug in virsh (Daniel Berrange), various cleanups
          in storage code (Cole Robinson), rpm spec cleanups, destructors
          data cleanups (Laine Stump), some QEmu code refactoring (Daniel
          Berrange), avoid dependancy on libcap (Daniel Berrange), python
          import cleanup (Cole Robinson), virAsprintf based cleanups in
          storage code (Cole Robinson), fix some direct stderr logging,
          OpenNebula driver cleanups (Daniel Berrange)</li>
    </ul>
    <h3>0.6.3: Apr 24 2009</h3>
    <ul>
      <li>New features: VirtualBox driver support (Pritesh Kothari),
          virt-xml-validate new command (Daniel Berrange)</li>
      <li>Portability: patch to build on Centos (Joseph Shraibman),
          build breakage (Anton Protopopov), </li>
      <li>Documentation: Linux Containers documentation (Serge Hallyn),
          improvement and updates of architecture pages, fix
          virNodeGetFreeMemory documentation to reflect reality,
          man page cleanups (Daniel Berrange), man page typo
          (Robert P. J. Day), VirtualBox Documentation (Pritesh Kothari),
          </li>
      <li>Bug fixes: veth off-by-one error (Dan Smith), vcpupin to inactive
          Xen crash (Takahashi Tomohiro), virsh ttyconsole return value,
          use format= not fmt= on QEmu commandline (Mark McLoughlin),
          use UUID for internal domain lookups (Daniel Berrange), remote
          domain ID related bugs (Daniel Berrange), QEmu pidfile handling
          bugs (Daniel Berrange), network config handling on old Xen (Daniel
          Berrange)</li>
      <li>Improvements: add SCSI storage rescan (David Allan), rootless
          LXC containers support improvements (Serge Hallyn), getHostname
          support for LXC (Dan Smith), cleanup and logging output of some
          domain functions (Guido Günther), drop pool lock when allocating
          volumes (Cole Robinson), LXC handle kernel without CLONE_NEWUSER
          support (Serge Hallyn), cpu pinning on defined Xen domains (Takahashi
          Tomohiro), dynamic bridge names support (Soren Hansen), LXC use
          of private /dev/pts when available (Daniel Berrange),
          virNodeDeviceCreateXML and virNodeDeviceDestroy entry points
          (Dave Allan)</li>
      <li>Cleanups: don't hardcode getgrnam_r buffer to 1024 bytes (Guido
          Günther), qemudBuildCommandLine API cleanup (Daniel Berrange),
          </li>
    </ul>
    <h3>0.6.2: Apr  3 2009</h3>
    <ul>
      <li>New features: support SASL auth for VNC server (Daniel Berrange),
          memory ballooning in QEMU (Daniel Berrange), SCSI HBA storage pool
          support (Dave Allan), PCI passthrough in Xen driver (Daniel
          Berrange)</li>
      <li>Portability: be more flexible in QEmu binaries paths (Daniel
          Berrange), Mingw portability fixes (Daniel Berrange),</li>
      <li>Documentation: add security attributes in RNG schemas, cleanup
          of architecture docs, missing disk bus values in RNG schemas,</li>
      <li>Bug fixes: tap vs vbd type on block detach (Cole Robinson and
          Takahashi Tomohiro), bad free on storage volume error (Daniel
          Berrange), maplenght computations in remote driver (Daniel Berrange),
          event dispatching in the daemon (Daniel Berrange), virDomainSetVcpus
          deadlock (Daniel Berrange), save deadlock in test driver (Cole
          Robinson), fix timing of security driver init (Cole Robinson),
          forbid readonly connections from dumping the XML safe info (Cole
          Robinson), file descriptor leak on remote access,
          fix labelling of shared/readonly devices (Dan Walsh),
          virsh missing auth on shell commands (Matthias Bolte),
          avoid zombie on exec pipe errors (Ryota Ozaki),
          memory leak in virNodeDeviceGetParent (Daniel Berrange),
          URI check in migration (Daniel Berrange), various memory bug fixes
          (Daniel Berrange), python bindings generator fix (Daniel Berrange),
          NUMA memory fixes (Daniel Berrange), various svirt fixes (Daniel
          Berrange), fix sparse volume allocation reporting (Cole Robinson),
          test driver domain restore return value (Cole Robinson),
          do not lose file format info on volume refresh (Cole Robinson)</li>
      <li>Improvements: get CPU usage info for LXC (Ryota Ozaki), fix domain
          RNG to add ac97 and tests (Pritesh Kothari), OpenVZ support for
          non-template filesystem root (Florian Vichot), improve arch
          capabilities generation (Daniel Berrange), modularization of spec
          file (Ryota Ozaki), better error reports in SEXPR generation (Daniel
          Berrange), support for vifname parameter in VIF config (Daniel
          Berrange), localtime handling for new xen (Daniel Berrange),
          error reporting/ verification of security labels (Dan Walsh),
          add --console arg for create and start virsh commands (Daniel
          Berrange), refresh volume alloc/capacity when dumping XML (Cole
          Robinson)</li>
      <li>Cleanups: FILE * leaks removal, unused parameters flagging
          (Maximilian Wilhelm), switch to pre-C99 struct initialization
           for drivers (Chris Lalancette), symlinks resolving cleanup (Daniel
           Berrange)</li>
    </ul>
    <h3>0.6.1: Mar  3 2009</h3>
    <ul>
      <li>New features: new APIs for Node device detach reattach and reset
          (Mark McLoughlin), sVirt mandatory access control support (James
          Morris and Dan Walsh)</li>
      <li>Portability: non gcc toolchain (John Levon), gcc-4.4 warnings fixes
          (Mark McLoughlin), fix build without LXC and QEmu (Jim Meyering)</li>
      <li>Documentation: man page bugzilla URL (Mark McLoughlin), typo
          in domain format (Jesse Farinacci), clock offset fix (Mark
          McLoughlin), hostdev description typo (Mark McLoughlin), static
          host IP (Charles Duffy), new example program (David Allan)</li>
      <li>Bug fixes: NULL dereference in LXC (Jim Meyering), fix domain
          error reporting (John Levon), fix loop of libvirtd --timeout
          (Daniel Berrange), limit history to 500 to restrict virsh memory
          (Daniel Berrange), wrong lvm volume format check (Cole Robinson),
          I/O error in daemon and associated remote acces crash (Daniel
          Berrange), fix autostart of session daemon (Daniel Berrange),
          restart guest on qemu migration failures (Chris Lalancette),
          config parsing leaks (Ryota Ozaki), DBus multithreading activation
          to avoid crashes (Daniel Berrange), mark defined network descriptions
          as persistent (Cole Robinson), qemu+tls handshake negotiation hang
          (Chris Lalancette)</li>
      <li>Improvements: don't hardcode ssh port (Guido Günther), new test
          cases and testing infrastructure (Jim Meyering), improve the
          SExpr parser (John Levon), proper error reporting on xend
          shutdown command (John Levon), proper handling of errors when
          saving QEmu domains state (Guido Günther), revamp of the internal
          error memory APIs (John Levon), better virsh error reporting (John
          Levon), more daemon options to allow running multiple daemons (Jim
          Meyering), error handling when creating a QEmu domain (Guido Günther),
          fix timeouts in QEmu log reading (Guido Günther), migration with
          xend 3.3 fixes (John Levon), virsh XML dump flags cleanup (Cole
          Robinson), fix build with loadable drivers (Maximilian Wilhelm),
          internal XML APIs to read long long and hexa values (Mark
          McLoughlin), function to parse node device XML descriptions and
          associated test (Mark McLoughlin), generate network bridge names if
          not provided (Cole Robinson), recognize ejectable media in hostdev
          hal driver (Cole Robinson), integration of sVirt (Daniel Berrange)</li>
      <li>Cleanups: printf NULL string checks (John Levon), remove uses of
          strerror and use virStrerror (Jim Meyering), remove redundant NULL
          assignments (Jim Meyering), QEmu driver logging and exec cleanups
          (Jim Meyering), many error handling cleanups (Jim Meyering), XML
          module cleanups (Mark McLoughlin), compiler warning (Maximilian
          Wilhelm), daemon TCP listen cleanup (Cole Robinson), size_t type
          cleanup (Guido Günther), parallel make fix (Michael Marineau),
          storage error diagnostic fix (Ryota Ozaki), remove redundant monitor
          watch variable (Cole Robinson), qemu AttachDevice error report
          improvement (Cole Robinson), virsh output cleanup (Jim Meyering),
          various tests cleanups and improvements (Jim Meyering), fix the
          internal export list with new APIs (Daniel Berrange), cleanups on
          new APIs for Node device (Daniel Berrange)</li>
    </ul>
    <h3>0.6.0: Jan 31 2009</h3>
    <ul>
      <li>New features: thread safety of the API and event handling (Daniel
          Berrange), allow QEmu domains to survive daemon restart (Guido
          Günther), extended logging capabilities, support copy-on-write
          storage volumes (Daniel Berrange), support of storage cache
          control options for QEmu/KVM (Daniel Berrange)</li>
      <li>Portability: fix old DBus API problem, Debian portability fix
          (Daniel Berrange), fix distcheck (Jim Meyering), build in
          debug mode (Jim Meyering), libnuma API portability (Jim Meyering),
          many portability fixes pointed by Solaris (John Levon), non-gcc
          portability fixes (John Levon), various include fixes (Jim Meyering),
          various Windows and Mingw portability fixes (Daniel Berrange),
          solaris Xen fixes (John Levon), RPC portability to Solaris (Daniel
          Berrange)</li>
      <li>Documentation: typo fixes (Richard Jones), logging support,
          vnc keymap attributes (Guido Günther), HACKING file updates
         (Jim Meyering), new PCI passthrough format, libvirt-qpid and
         UML driver documentation (Daniel Berrange), provide RNG schemas
         for all XML formats used in libvirt APIs (Daniel Berrange), </li>
      <li>Bug fixes: segfault on virtual network without bridge name (Cole
          Robinson), various locking fixes (Cole Robinson), fix serial
          and parallel devices on tcp/unix/telnet (Guido Günther), leak
          in daemon (Jim Meyering), storage driver segfault (Miloslav TrmaC),
          missing check in read-only connections (Daniel Berrange),
          OpenVZ crash and mutex fixes (Anton Protopopov), couple of
          daemon bug fixes (John Levon), OpenVZ MAC addresses generation
          (Evgeniy Sokolov), poll call initialization fix (Daniel Berrange),
          various Xen driver fixes (John Levon), segfault on device
          back compat (Cole Robinson), couple Xen bug fixes coming from
          RHEL (Markus Armbruster), buffer overflow in libvirt proxy
          (rasputin@email.ru), vnc port report (John Levon), repair save
          and restore on recent KVM versions (Daniel Berrange), Xen
          cpu pinning XML fix (John Levon), various xen driver fixes
          (Daniel Berrange), some memory leak fixes (Daniel Berrange)</li>
      <li>Improvements: driver infrastructure and locking (Daniel Berrange),
          Test driver infrastructure (Daniel Berrange), parallelism in the
          daemon and associated config (Daniel Berrange), virsh help cleanups
          (Jim Meyering), logrotate daemon logs (Guido Günther), more
          regression tests (Jim Meyering), QEmu SDL graphics (Itamar Heim),
          add --version flag to daemon (Dave Allan), memory consumption
          cleanup (Dave Allan), QEmu pid file and XML states for daemon
          restart (Guido Günther), gnulib updates (Jim Meyering and
          Dan Berrange), PCI passthrough for KVM (Jason Krieg), generic
          internal thread API (Daniel Berrange), RHEL-5 specific Xen
          configure option and code (Markus Armbruster), save domain
          state as string in status file (Guido Günther), add locking
          to all API entry points (Daniel Berrange), new ref counting APIs
          (Daniel Berrange), IP address for Xen bridges (John Levon),
          driver format for disk file types (Daniel Berrange), improve
          QEmu/KVM tun/tap performances (Mark McLoughlin), enable floppies
          for Xen fully virt (John Levon), support VNC password settings
          for QEmu/KVM (Daniel Berrange), qemu driver version reporting
          (Daniel Berrange) </li>
      <li>Cleanups: converting linked lists to arrays (Daniel Berrange),
          daemon RPC handling refactoring (Daniel Berrange), strings cleanups
          (Jim Meyering), gethostby* cleanup and test (Jim Meyering), some
           code fixes (Dave Allan), various code cleanup (Jim Meyering),
           virsh argument handling cleanup (Jim Meyering), virAsprintf
           cleanup replacement (Guido Günther), QEmu monitor reads (Cole
           Robinson), Makefile cleanups (Guido Günther), Xen code cleanups
           (John Levon), revamp of ELF export scripts (John Levon), domain
           event callback args (John Levon), enforce use of pid_t (John Levon),
           virsh pool-*-as XML code merge (Cole Robinson), xgettext warnings
           (Jim Meyering), add virKillProcess (Guido Günther), add
           virGetHostname (David Lutterkort), add flags argument to the full
           XML parsing stack (Guido Günther), various daemon code cleanups
           (Guido Günther), handling of daemon missing config file (Jim
           Meyering), rpcgen invocation cleanup (Richard Jones), devhelp
           builkd makefile cleanups (John Levon), update error handling for
           threading (Daniel Berrange), remove all non-rentrant POSIX calls
           usage (Daniel Berrange), many small cleanups (Jim Meyering and
           Daniel Berrange), examples Makefile generator (John Levon),
           mis-use of PF_UNIX as a protocol (John Levon), cleanup OOM
           error paths (Jim Meyering), temporary fix fro valgrind on lxc
           (Daniel Berrange), QEmu driver init cleanups (Daniel Berrange)</li>
    </ul>
    <h3>0.5.1: Dec  4 2008</h3>
    <ul>
      <li>Portability: fix missing dep in spec file, fix compilation with new
          NUMA libraries (Daniel Berrange), udev compatibility for RHEL (Chris
          Lalancette), </li>
      <li>Documentation: documentation copy and paste errors and typo (Cole
          Robinson)</li>
      <li>Bug fixes: add a delay in storage backend for disks to show up
          (Chris Lalancette), fix parsing for CDRom device with no source
          (Daniel Berrange), use xenstore to list domains to avoid some
          bugs (Guido Günther), remove a leak in xen inotify code (Daniel
          Berrange), UML driver freeing of uninitialialized variable (Ron
          Yorston), fix UML inotify code (Daniel Berrange), crash when
          adding storage without a format (Cole Robinson)</li>
      <li>Improvements: use xend preferably to hypervisor call to set Xen
          max memory (Jim Fehlig), allow remote://hostname/ URI for automatic
          probe of hypervisors (Daniel Berrange), fix daemon configuration
          regression testing (Jim Meyering ), check /usr/bin/kvm for QEmu
          driver init (Guido Günther), proper active vs. inactive
          differentiation (Guido Günther), improve MTU setting on tap
          interfaces (Eduardo Habkost), increase timeout for initial QEmu
          monitor poll (Cole Robinson)</li>
      <li>Cleanups:fix improper initialisations (Jim Meyering)</li>
    </ul>
    <h3>0.5.0: Nov 25 2008</h3>
    <ul>
      <li>New features: CPU and scheduler support for LXC (Dan Smith), SDL display configuration (Daniel Berrange), domain lifecycle event support for QEmu and Xen with python bindings (Ben Guthro and Daniel Berrange), KVM/QEmu migration support (Rich Jones and Chris Lalancette), User Mode Linux driver (Daniel Berrange), API for node device enumeration using HAL and DeviceKit with python bindings (David Lively), </li>
      <li>Portability: RHEL build fixes, VPATH build (Guido Gunther), many MinGW related cleanups and fixes (Richard Jones), compilation without libvirtd (Richard Jones), Add a Windows icon (Richard Jones), sys/poll.h portability fixes (Daniel Berrange), gnulib and mingw cleanups (Jim Meyering), </li>
      <li>Documentation: virsh man page cleanups (Mark McLoughlin), doc for NIC model selection (Richard Jones), monitoring section, link to AMQP bindings, inew APIs, UML driver docs (Daniel Berrange), </li>
      <li>Bug fixes: Xen interfaces ordering (Jim Fehlig), startup timeout with multiple pty (Cole Robinson), segfault if QEmu without active virtual network (Cole Robinson), qemu small leak (Eduardo Habkost), index creation for more than 26 disks (Sanjay Rao and Chris Wright), virRealloc handling of 0 (Daniel Berrange), missing pointer initialization (Chris Lalancette), bus device index bug (Guido Günther), avoid crash in some error patch (Chris Lalancette), fix a problem in storage back-end (Chris Lalancette), minimum domain memory size check for Xen (Shigeki Sakamoto), switch off QEmu cache if device is shared (Charles Duffy), logical volume definition before scan bug (Chris Lalancette), a couple of memory leaks on QEmu vnc (Jim Meyering), lvs parsing fixes (Cole Robinson),</li>
      <li>Improvements: LXC resources control and internal cgroup API (Dan Smith), virDomainCreateLinux renamed virDomainDefineXML, network driver modularization (Daniel Berrange), change the way domain and net are reported in errors (Jim Meyering), partition table scan on iSCSI (Chris Lalancette), qemudDiskDeviceName to handle normal disks (Guido Günther), qemudDomainBlockStats improvement (Guido Günther), scsi/virtio hotplug support for KVM (Guido Günther), USB hot addition in QEmu (Guido Günther), logical pool and storage backend XML dump improvement (Chris Lalancette), MAC addresses prefix per driver (Daniel Berrange), OpenVZ getVersion support (Daniel Berrange), hot removal of scsi/virtio disks for KVM (Guido Günther), test storage driver (Cole Robinson), iSCSI and disk storage driver improvement on path handling (Chris Lalancette), UUID and ID support for Xenner (Daniel Berrange), better logging when when executing commands (Cole Robinson), bridged network for OpenVZ (Daniel Berrange), OpenVZ config file params (Evgeniy Sokolov), allow to build drivers as libtool convenience libs (Daniel Berrange), fully versioned linker script for exported ABI (Daniel Berrange), Push URI probing down into drivers open (Daniel Berrange), move all stateful drivers into the daemon binary (Daniel Berrange), improve domain event with a detail field (Daniel Berrange), domain events for QEMU driver (Daniel Berrange), event unregister callback crash (David Lively), plug a few leaks (Daniel Berrange), internal APIs for handling node device XML config (David Lively), tweaks to node device implementation (Daniel Berrange), OpenVZ vCPUs values init (Evgeniy Sokolov)</li>
      <li>Cleanups: C99 initializers (Guido Gunther), test output (Cole Robinson), debug macro centralization (Cole Robinson), various error handling (Guido Günther), safewrite use cleanup (Jim Meyering), centralize error reporting logic (Cole Robinson), avoid printf warnings (Daniel Berrange), use arrays instead of list for internal APIs (Daniel Berrange), remove many format string warnings Jim Meyering), avoid syntax check warnings (Chris Lalancette), improve po-check and list generation (Jim Meyering), .gitignore generation and handling (Jim Meyering), use ARRAY_CARDINALITY (Jim Meyering), gnulib updates and switch to use netdb.h (Jim Meyering), drop usage of socket_errno (Jim Meyering), remove socketcompat.h (Jim Meyering), more tests (Jim Meyering), drop virStringList (Daniel Berrange), reformatting and isolation of the error APIs (Daniel Berrange), cleanup internal.h and move internal APIs in specific headers (Daniel Berrange), move domain events helpers into domain_events.c (Daniel Berrange), cleanup the way optional modules are compiled (Daniel Berrange), add new logging module, optional dlopen of drivers (Daniel Berrange), various new tests (Jim Meyering), cleanups when Xen is not configured in (Daniel Berrange), add some missing functions comments (Jim Meyering),</li>
    </ul>
    <h3>0.4.6: Sep 23 2008</h3>
    <ul>
      <li>Documentation: fix some comments in API (Anton Protopopov),
          cleanup and extension of bindings and windows pages (Richard Jones)</li>
      <li>Portability: missing include file (Richard Jones)</li>
      <li>Bug fixes: avoid a segfault if missing qemu emulator (Cole Robinson),
          reading vncdisplay from xend domain (Cole Robinson), segfault in
          OpenVZ (Evgeniy Sokolov), fix parsing of pool without a source
          (Chris Lalancette and Daniel Berrange)</li>
      <li>Improvements: add storage disk volume delete (Cole Robinson),
          KVM dynamic max CPU detection (Guido Günther), spec file improvement
          for minimal builds (Ben Guthro), improved error message in XM
          configuration module (Richard Jones), network config in OpenVZ
          support (Evgeniy Sokolov), enable stopping a pool in logical
          storage backend and cleanup deletion of pool (Chris Lalancette)</li>
      <li>Cleanups: deadcode removal (Nguyen Anh Quynh), fix one test
          case (Daniel Berrange), various strings and space cleanups (Daniel
          Berrange), structure initialization cleanup (Chris Lalancette)</li>
    </ul>
    <h3>0.4.5: Sep 8 2008</h3>
    <ul>
      <li>New features: NETNS support for Linux containers (Dan Smith),
          unified XML domain and network parsing for all drivers (Daniel
          Berrange), OpenVZ features improvements (Evgeniy Sokolov),
          OpenVZ and Linux containers support now default, USB device
          passthrough for QEmu/KVM (Guido Günther), storage pool source
          discovery (David Lively)</li>
      <li>Portability: fixes for MinGW (Atsushi SAKAI and Daniel Berrange),
          detection of xen lib improvement (David Lively),
          storage backend portability for SLES (David Lively),
          fix make distclean and distcheck (Jim Meyering),
          fix build failures on RHEL4, lot of MinGW portability fixes (Atsushi
          SAKAI and Daniel Berrange), HTML generation fix, -lpthread explicit
          linking when needed (Jim Meyering)</li>
      <li>Documentation: various typo fixes (Anton Protopopov, Toth
          István, Atsushi SAKAI, Nguyen Anh Quynh),
          Java bindings docs, remove Xen centric
          comments (Guido Günther), various typo in comments (Chris
          Lalancette), docs and API comments fixes (Charles Duffy),
          how to contribute to open source link (Richard Jones),
          memory unit fixups (matthew chan)</li>
      <li>Bug fixes: memory leaks and testing for OOM (Daniel Berrange),
          do_open driver bug(Evgeniy Sokolov), don't use polkit auth when
          running as non-root (Daniel Berrange), boot of CDRom devices
          in QEmu/KVM (Daniel Berrange), fix OpenVZ probe function (Evgeniy
          Sokolov), ID related lookup fixes in OpenVZ (Evgeniy Sokolov),
          pool cration for netfs (Cole Robinson), check for migrate support
          with QEmu (Guido Günther), check against double create with QEmu
          (Guido Günther), broken open failure detection in QEmu (Guido
          Günther), UUID string conversions in QEmu (Guido Günther),
          various small cleanup and bug fixes (Daniel Berrange), ID
          related fixes in the test driver (Daniel Berrange), better error
          reporting on XML parsing (Daniel Berrange), empty CD-ROM source
          device section (Chris Lalancette), avoid crashes for interface
          without a name in QEmu (Guido Günther), provide the real
          vncport (Charles Duffy), fix forward delay (Daniel Berrange),
          new VM state is initialized to be SHUTOFF (Daniel Berrange),
          virsh attach-disk bug fixes (Chris Lalancette), veth clash
          of device names (Dan Smith), connection lookup fixes on
          storage creation (Cole Robinson), parted call fix (Cole Robinson),
          use "server" option when using serial/telnet with QEmu (Mark
          McLoughlin), duplicate virInitialize calls (Nguyen Anh Quynh),
          many fixes to virExec and related functions (Daniel Berrange),
          size of disk without partitions (Cole Robinson), creating and
          cleaning up logical volumes with target path (Cole Robinson),
          fix reporting of virConnectOpen problems (Daniel Berrange),
          veth cleanup at shutdown (Dan Smith), lookup of Xen VMs after define
          (Cole Robinson), fix emulator reported capabilities (Cole Robinson),
          avoid segfault on KVM CD eject (Cole Robinson), fix disk ordering
          and avoid duplicate in QEmu XML parsing (Cole Robinson), update
          domain XML after device hotplug (Cole Robinson), use poweroff instead
          of halt when shutting down a Xen domain (John Levon), don't dump core
          of Xen domain live by default (John Levon), vgcreate command line
          size bug (Jim Fehlig),  signed/unsigned issue in probing file
          (Cole Robinson), Fix Xen domains without PVFB console (Daniel
          Berrange), OpenVZ config read bug fix (Evgeniy Sokolov).
          </li>
      <li>Improvements: improved failure diagnostic for TAP (Jim Meyering),
          better exec and error diagnostic for OpenVZ commands (Evgeniy
          Sokolov), OpenVZ auto start and stop of domains (Evgeniy Sokolov),
          OpenVZ domain cpu time consumption (Evgeniy Sokolov), virsh
          shutdown improvements and test (Jim Meyering), better report of
          XML well formedness errors (Richard Jones), new XML elements
          (Daniel Berrange), virsh "edit" command (Richard Jones), save
          UUID of OpenVZ domains (Evgeniy Sokolov), improve xen blocks
          statistics (Chris Lalancette), gnulib updates (Jim Meyering),
          allow to add disk as USB devices (Guido Günther), LXC container
          process should survive libvirtd restarts (Daniel Berrange), allow
          to define static host domain configs, number of CPU used by
          OpenVZ domains (Evgeniy Sokolov), private root fs for LXC (Daniel
          Berrange), storage source information in storage pools (David Lively),
          virsh reports attach and detach success (Cole Robinson), detect
          failure in QEmu eject command (Cole Robinson), add support for
          eect on floppy and SCSI cdroms for QEmu (Cole Robinson), LXC
          hypervisor version extraction (Dan Smith), Augeas config file support
          (Daniel Berrange), support for a domain name in network
          config (JJ Reynolds).</li>
      <li>Cleanups: Python verbosity cleanup (Ryan Scott),
          space and tabs cleanups (Atsushi SAKAI), OpenVZ and LXC drivers
          cleanup and unification of XML handling (Daniel Berrange), updates
          to Relax-NG XML schemas (John Levon and Daniel Berrange), more
          printf format checkings (Jim Meyering), VIR_FREE related cleanups
          (Jim Meyering), integer string parsing cleanup (Evgeniy Sokolov),
          initial OpenVZ xml refactoring (Evgeniy Sokolov), better error
          message on domain redefine (Charles Duffy), check XML files against
          the RNG Schemas (Daniel Berrange), const-correctness in virsh
          (Richard Jones and Jim Meyering), const-correctness and cleanups
          in LXC and OpenVZ drivers (Daniel Berrange), virFileLinkPointsTo
          rewrite (Jim Meyering), cleanup of the conditional compilation
          of C files (Daniel Berrange), shell quoting fixes (Jim Meyering),
          parallel build support (James Morris and Jim Meyering), new
          convenenience virFileReadLimFD function (Jim Meyering).  </li>
    </ul>
    <h3>0.4.4: Jun 25 2008</h3>
    <ul>
      <li>Bug fixes: QEmu network serialization (Kaitlin Rupert), internal
          memory allocation fixes (Chris Lalancette Jim Meyering), virsh
          large file config problem (Jim Meyering), xen list APIs when
          max is zero, string escape problems in the xm driver </li>
      <li>Improvements: add autogen to tarballs, improve iSCSI support
          (Chris Lalancette), localization updates </li>
      <li>Cleanups: const-ness fixed (Daniel P. Berrange), string helpers
          for enumeations (Daniel P. Berrange)</li>
    </ul>
    <h3>0.4.3: Jun 12 2008</h3>
    <ul>
      <li>New features: Linux Container start and stop (Dave Leskovec),
          Network interface model settings (Daniel Berrange),serial and parallel
          device support for QEmu and Xen (Daniel Berrange),
          Sound support for QEmu and Xen (Cole Robinson), vCPU settings for
          QEmu (Cole Robinson), support for NUMA and vCPU pinning in QEmu
          (Daniel Berrange), new virDomainBlockPeek API (Richard Jones)</li>
      <li>Documentation: coding guidelines (Jim Meyering and Richard Jones),
          small man page missing entries and cleanup,
          Web site revamp (Daniel Berrange),
          typo fixes (Atsushi SAKAI), more docs on network XML format
          (Daniel Berrange), libvirt Wiki (Daniel Berrange),
          policykit config docs (Cole Robinson), XML domain docs revamp
          (Daniel Berrange), docs for remote listen-tls/tcp fixes (Kenneth
          Nagin),  </li>
      <li>Bug fixes: save change to config file for Xen (Ryan Scott),
          fix /var/run/libvirt/ group ownership (Anton Protopopov),
          ancient libparted workaround (Soren Hansen), out of bount
          array access (Daniel Berrange), remote check bug (Dave Leskovec),
          LXC signal and daemon restart problems (Dave Leskovec), bus selection
          logic fix in the daemon config (Daniel Berrange), 2 memory leaks
          in the daemon (Jim Meyering), daemon pid file logic bug fix
          (Daniel Berrange), python generator fixes (Daniel Berrange),
          ivarious leaks and memory problem pointed by valgrind (Daniel
          Berrange), iptables forwarding cleanup (Daniel Berrange),
          Xen cpuset value checking (Hiroyuki Kaguchi), container process
          checks for LXC (Dave Leskovec), let xend check block device syntax
          (Hiroyuki Kaguchi), UUIDString for python fixes (Cole Robinson)</li>
      <li>Improvements: fixes for MinGW compilation (Richard Jones),
          autostart for running Xen domains (Cole Robinson),
          control of listening IP for daemon (Stefan de Konink),
          various Xenner related fixes and improvements (Daniel Berrange)
          autostart status printed in virsh domainfo (Shigeki Sakamoto),
          better error messages for xend driver (Richard Jones)</li>
      <li>Code cleanups: OpenVZ compilation (Richard Jones), conn dom and
          net fields deprecation in error structures (Richard Jones),
          Xen-ism on UUID (Richard Jones), add missing .pod to dist (Richard
          Jones), tab cleanup from sources (Jim Meyering), remove unused field
          in virsh control structure (Richard Jones), compilation without
          pthread.h (Jim Meyering), cleanup of tests (Daniel Berrange),
          syntax-check improvements (Jim Meyering), python cleanup,
          remove dependancy on libc is_* character tests (Jim Meyering),
          format related cleanups (Jim Meyering), cleanup of the buffer
          internal APIs (Daniel Berrange), conversion to the new memory
          allocation API (Daniel Berrange), lcov coverage testing
          (Daniel Berrange), gnulib updates (Jim Meyering), compatibility
          fix with RHEL 5 (Daniel Berrange), SuSE compatibility fix (Jim
          Fehlig), const'ification of a number of structures (Jim Meyering),
          string comparison macro cleanups (Daniel Berrange), character
          range testing cleanups and assorted bug fixes (Jim Meyering),
          QEmu test fixes (Daniel Berrange), configure macro cleanup (Daniel
          Berrange), refactor QEmu command line building code (Daniel Berrange),
          type punning warning in remote code (Richard Jones), refactoring
          of internal headers (Richard Jones), generic out of memory
          testing and associated bug fixes (Daniel Berrange), don't raise
          internal error for unsupported features (Kaitlin Rupert),
          missing driver entry points (Daniel Berrange)</li>
    </ul>
    <h3>0.4.2: Apr 8 2008</h3>
    <ul>
      <li>New features: memory operation for QEmu/KVM driver (Cole Robinson),
      new routed networking schemas (Mads Olesen)</li>
      <li>Documentation: storage documentation fixes (Atsushi Sakai), many
      typo cleanups (Atsushi Sakai), string fixes (Francesco Tombolini)</li>
      <li>Bug fixes: pointer errors in qemu (Jim Meyering), iSCSI login fix
      (Chris Lalancette), well formedness error in test driver capabilities
      (Cole Robinson), fixes cleanup code when daemon exits (Daniel Berrange),
      CD Rom change on live QEmu/KVM domains (Cole Robinson), setting scheduler
      parameter is forbidden for read-only (Saori Fukuta)i, fixes for TAP
      devices (Daniel Berrange), assorted storage driver fixes (Daniel
      Berrange), Makefile fixes (Jim Meyering), Xen-3.2 hypercall fix,
      fix iptables rules to avoid blocking traffic within virtual network
      (Daniel Berrange), XML output fix for directory pools (Daniel Berrange),
      remove dandling domain/net/conn pointers from error data, do not
      ask polkit auth when root (Daniel Berrange), handling of fork and
      pipe errors when starting the daemon (Richard Jones)</li>
      <li>Improvements: better validation of MAC addresses (Jim Meyering and
      Hiroyuki Kaguchi),
      virsh vcpupin error report (Shigeki Sakamoto), keep boot tag on
      HVM domains (Cole Robinson), virsh non-root should not be limited to read
      only anymore (Daniel Berrange), switch to polkit-auth from polkit-grant
      (Daniel Berrange), better handling of missing SElinux data (Daniel
      Berrange and Jim Meyering), cleanup of the connection opening logic
      (Daniel Berrange), first bits of Linux Containers support (Dave Leskovec),
      scheduler API support via xend (Saori Fukuta), improvement of the
      testing framework and first tests (Jim Meyering), missing error
      messages from virsh parameters validation (Shigeki Sakamoto),
      improve support of older iscsiadm command (Chris Lalancette),
      move linux container support in the daemon (Dan Berrange), older
      awk implementation support (Mike Gerdts), NUMA support in test
      driver (Cole Robinson), xen and hvm added to test driver capabilities
      (Cole Robinson)</li>
      <li>Code cleanup: remove unused getopt header (Jim Meyering), mark more
      strings as translatable (Guido G&#xFC;nther and Jim Meyering), convert
      error strings to something meaningful and translatable (Jim Meyering),
      Linux Containers code cleanup, last error initializer (Guido G&#xFC;nther)</li>
    </ul>
    <h3>0.4.1: Mar 3 2008</h3>
    <ul>
      <li>New features: build on MacOSX (Richard Jones), storage management
      (Daniel Berrange), Xenner - Xen on KVM - support (Daniel Berrange)</li>
      <li>Documentation: Fix of various typos (Atsushi SAKAI), memory and
      vcpu settings details (Richard Jones), ethernet bridging typo
      (Maxwell Bottiger), add storage APIs documentation (Daniel Berrange)</li>
      <li>Bug fixes: OpenVZ code compilation (Mikhail Pokidko), crash in
      policykit auth handling (Daniel Berrange), large config files
      (Daniel Berrange), cpumap hypercall size (Saori Fukuta), crash
      in remote auth (Daniel Berrange), ssh args error (Daniel Berrange),
      preserve vif order from config files (Hiroyuki Kaguchi), invalid
      pointer access (Jim Meyering), virDomainGetXMLDesc flag handling,
      device name conversion on stats (Daniel Berrange), double mutex lock
      (Daniel Berrange), config file reading crashes (Guido Guenther),
      xenUnifiedDomainSuspend bug (Marcus Meissner), do not crash if
      /sys/hypervisor/capabilities is missing (Mark McLoughlin),
      virHashRemoveSet bug (Hiroyuki Kaguchi), close-on-exec flag for
      qemud signal pipe (Daniel Berrange), double free in OpenVZ
      (Anton Protopopov), handle mac without addresses (Shigeki Sakamoto),
      MAC addresses checks (Shigeki Sakamoto and Richard Jones),
      allow to read non-seekable files (Jim Meyering)</li>
      <li>Improvements: Windows build (Richard Jones), KVM/QEmu shutdown
      (Guido Guenther), catch virExec output on debug (Mark McLoughlin),
      integration of iptables and lokkit (Mark McLoughlin), keymap
      parameter for VNC servers (Daniel Hokka Zakrisson), enable debug
      by default using VIR_DEBUG (Daniel Berrange), xen 3.2 fixes
      (Daniel Berrange), Python bindings for VCPU and scheduling
      (Daniel Berrange), framework for automatic code syntax checks
      (Jim Meyering), allow kernel+initrd setup in Xen PV (Daniel Berrange),
      allow change of Disk/NIC of an inactive domains (Shigeki Sakamoto),
      virsh commands to manipulate and create storage(Daniel Berrange),
      update use of PolicyKit APIs, better detection of fedault hypervisor,
      block device statistics for QEmu/KVM (Richard Jones), various improvements
      for Xenner (Daniel Berrange)</li>
      <li>Code cleanups: avoid warnings (Daniel Berrange), virRun helper
      function (Dan Berrange), iptable code fixes (Mark McLoughlin),
      static and const cleanups (Jim Meyering), malloc and python cleanups
      (Jim Meyering), xstrtol_ull and xstrtol_ll functions (Daniel Berrange),
      remove no-op networking from OpenVZ (Daniel Berrange), python generator
      cleanups (Daniel Berrange), cleanup ref counting (Daniel Berrange),
      remove uninitialized warnings (Jim Meyering), cleanup configure
      for RHEL4 (Daniel Berrange), CR/LF cleanups (Richard Jones),
      various automatic code check and associated cleanups (Jim Meyering),
      various memory leaks (Jim Meyering), fix compilation when building
      without Xen (Guido Guenther), mark translatables strings (Jim Meyering),
      use virBufferAddLit for constant strings (Jim Meyering), fix
      make distcheck (Jim Meyering), return values for python bindings (Cole
      Robinson), trailing blanks fixes (Jim Meyering), gcc-4.3.0 fixes
      (Mark McLoughlin), use safe read and write routines (Jim Meyering),
      refactoring of code dealing with hypervisor capabilities (Daniel
      Berrange), qemudReportError to use virErrorMsg (Cole Robinson),
      intemediate library and Makefiles for compiling static and coverage
      rule support (Jim Meyering), cleanup of various leaks (Jim Meyering)</li>
    </ul>
    <h3>0.4.0: Dec 18 2007</h3>
    <ul>
      <li>New features: Compilation on Windows cygwin/mingw (Richard Jones),
      Ruby bindings (David Lutterkort), SASL based authentication for
      libvirt remote support (Daniel Berrange), PolicyKit authentication
      (Daniel Berrange)</li>
      <li>Documentation: example files for QEMU and libvirtd configuations
      (Daniel Berrange), english cleanups (Jim Paris), CIM and OpenVZ
      references, document &lt;shareable/&gt;, daemon startup when using
      QEMU/KVM, document HV support for new NUMA calls (Richard Jones),
      various english fixes (Bruce Montague), OCaml docs links (Richard Jones),
      describe the various bindings add Ruby link, Windows support page
      (Richard Jones), authentication documentation updates (Daniel Berrange)
      </li>
      <li>Bug fixes: NUMA topology error handling (Beth Kon), NUMA topology
      cells without CPU (Beth Kon), XML to/from XM bridge config (Daniel
      Berrange), XM processing of vnc parameters (Daniel Berrange), Reset
      migration source after failure (Jim Paris), negative integer in config
      (Tatsuro Enokura), zero terminating string buffer, detect integer
      overflow (Jim Meyering), QEmu command line ending fixes (Daniel Berrange),
      recursion problem in the daemon (Daniel Berrange), HVM domain with CDRom
      (Masayuki Sunou), off by one error in NUMA cpu count (Beth Kon),
      avoid xend errors when adding disks (Masayuki Sunou), compile error
      (Chris Lalancette), transposed fwrite args (Jim Meyering), compile
      without xen and on solaris (Jim Paris), parsing of interface names
      (Richard Jones), overflow for starts on 32bits (Daniel Berrange),
      fix problems in error reporting (Saori Fukuta), wrong call to
      brSetForwardDelay changed to brSetEnableSTP (Richard Jones),
      allow shareable disk in old Xen, fix wrong certificate file (Jim
      Meyering), avoid some startup error when non-root, off-by-1 buffer
      NULL termination (Daniel Berrange), various string allocation fixes
      (Daniel Berrange), avoid problems with vnetXXX interfaces in domain dumps
      (Daniel Berrange), build fixes for RHEL (Daniel Berrange), virsh prompt
      should not depend on uid (Richard Jones), fix scaping of '&lt;' (Richard
      Jones), fix detach-disk on Xen tap devices (Saori Fukuta), CPU
      parameter setting in XM config (Saori Fukuta), credential handling
      fixes (Daniel Berrange), fix compatibility with Xen 3.2.0 (Daniel
      Berrange)
      </li>
      <li>Improvements: /etc/libvirt/qemu.conf configuration for QEMU driver
      (Daniel Berrange), NUMA cpu pinning in config files (DV and Saori Fukuta),
      CDRom media change in KVM/QEMU (Daniel Berrange), tests for
      &lt;shareable/&gt; in configs, pinning inactive domains for Xen 3.0.3
      (Saori Fukuta), use gnulib for portability enhancement (Jim Meyering),
      --without-libvirtd config option (Richard Jones), Python bindings for
      NUMA, add extra utility functions to buffer (Richard Jones),
      separate qparams module for handling query parameters (Richard Jones)
      </li>
      <li>Code cleanups: remove virDomainRestart from API as it was never used
      (Richard Jones), constify params for attach/detach APIs (Daniel Berrange),
      gcc printf attribute checkings (Jim Meyering), refactoring of device
      parsing code and shell escaping (Daniel Berrange), virsh schedinfo
      parameters validation (Masayuki Sunou), Avoid risk of format string abuse
      (Jim Meyering), integer parsing cleanups (Jim Meyering), build out
      of the source tree (Jim Meyering), URI parsing refactoring (Richard
      Jones), failed strdup/malloc handling (Jim Meyering), Make "make
      distcheck" work (Jim Meyering), improve xen internall error reports
      (Richard Jones), cleanup of the daemon remote code (Daniel Berrange),
      rename error VIR_FROM_LINUX to VIR_FROM_STATS_LINUX (Richard Jones),
      don't compile the proxy if without Xen (Richard Jones), fix paths when
      configuring for /usr prefix, improve error reporting code (Jim Meyering),
      detect heap allocation failure (Jim Meyering), disable xen sexpr parsing
      code if Xen is disabled (Daniel Berrange), cleanup of the GetType
      entry point for Xen drivers, move some QEmu path handling to generic
      module (Daniel Berrange), many code cleanups related to the Windows
      port (Richard Jones), disable the proxy if using PolicyKit, readline
      availability detection, test libvirtd's config-processing code (Jim
      Meyering), use a variable name as sizeof argument (Jim Meyering)
      </li>
    </ul>
    <h3>0.3.3: Sep 30 2007</h3>
    <ul>
      <li>New features: Avahi mDNS daemon export (Daniel Berrange),
      NUMA support (Beth Kan) </li>
      <li>Documentation: cleanups (Toth Istvan), typos (Eduardo Pereira), </li>
      <li>Bug fixes: memory corruption on large dumps (Masayuki Sunou), fix
      virsh vncdisplay command exit (Masayuki Sunou), Fix network stats
      TX/RX result (Richard Jones), warning on Xen 3.0.3 (Richard Jones),
      missing buffer check in virDomainXMLDevID (Hugh Brock), avoid zombies
      when using remote (Daniel Berrange), xend connection error message
      (Richard Jones), avoid ssh tty prompt (Daniel Berrange), username
      handling for remote URIs (Fabian Deutsch), fix potential crash
      on multiple input XML tags (Daniel Berrange), Solaris Xen hypercalls
      fixup (Mark Johnson)</li>
      <li>Improvements: OpenVZ support (Shuveb Hussain and Anoop Cyriac),
      CD-Rom reload on XEn (Hugh Brock), PXE boot got QEmu/KVM (Daniel
      Berrange), QEmu socket permissions customization (Daniel Berrange),
      more QEmu support (Richard Jones), better path detection for qemu and
      dnsmasq (Richard Jones), QEmu flags are per-Domain (Daniel Berrange),
      virsh freecell command, Solaris portability fixes (Mark Johnson),
      default bootloader support (Daniel Berrange), new virNodeGetFreeMemory
      API, vncpasswd extraction in configuration files if secure (Mark
      Johnson and Daniel Berrange), Python bindings for block and interface
      statistics</li>
      <li>Code cleanups: virDrvOpenRemoteFlags definition (Richard Jones),
      configure tests and output (Daniel Berrange)</li>
    </ul>
    <h3>0.3.2: Aug 21 2007</h3>
    <ul>
      <li>New features: KVM migration and save/restore (Jim Paris),
      added API for migration (Richard Jones), added APIs for block device and
      interface statistic (Richard Jones).</li>
      <li>Documentation: examples for XML network APIs,
      fix typo and schedinfo synopsis in man page (Atsushi SAKAI),
      hypervisor support page update (Richard Jones).</li>
      <li>Bug fixes: remove a couple of leaks in QEmu/KVM backend(Daniel berrange),
      fix GnuTLS 1.0 compatibility (Richard Jones), --config/-f option
      mistake for libvirtd (Richard Jones), remove leak in QEmu backend
      (Jim Paris), fix some QEmu communication bugs (Jim Paris), UUID
      lookup though proxy fix, setvcpus checking bugs (with Atsushi SAKAI),
      int checking in virsh parameters (with Masayuki Sunou), deny devices
      attach/detach for &lt; Xen 3.0.4 (Masayuki Sunou), XenStore query
      memory leak (Masayuki Sunou), virsh schedinfo cleanup (Saori Fukuta).</li>
      <li>Improvement: virsh new ttyconsole command, networking API implementation
      for test driver (Daniel berrange), qemu/kvm feature reporting of
      ACPI/APIC (David Lutterkort), checking of QEmu architectures (Daniel
      berrange), improve devices XML errors reporting (Masayuki Sunou),
      speedup of domain queries on Xen (Daniel berrange), augment XML dumps
      with interface devices names (Richard Jones), internal API to query
      drivers for features (Richard Jones).
      </li>
      <li>Cleanups: Improve virNodeGetInfo implentation (Daniel berrange),
      general UUID code cleanup (Daniel berrange), fix API generator
      file selection. </li>
    </ul>
    <h3>0.3.1: Jul 24 2007</h3>
    <ul>
      <li>Documentation: index to remote page, script to test certificates,
      IPv6 remote support docs (Daniel Berrange), document
      VIRSH_DEFAULT_CONNECT_URI in virsh man page (David Lutterkort),
      Relax-NG early grammar for the network XML (David Lutterkort)</li>
      <li>Bug fixes: leaks in disk XML parsing (Masayuki Sunou), hypervisor
      alignment call problems on PPC64 (Christian Ehrhardt), dead client
      registration in daemon event loop (Daniel Berrange), double free
      in error handling (Daniel Berrange), close on exec for log file
      descriptors in the daemon (Daniel Berrange), avoid caching problem
      in remote daemon (Daniel Berrange), avoid crash after QEmu domain
      failure (Daniel Berrange)</li>
      <li>Improvements: checks of x509 certificates and keys (Daniel Berrange),
      error reports in the daemon (Daniel Berrange), checking of Ethernet MAC
      addresses in XML configs (Masayuki Sunou), support for a new
      clock switch between UTC and localtime (Daniel Berrange), early
      version of OpenVZ support (Shuveb Hussain), support for input devices
      on PS/2 and USB buses (Daniel Berrange), more tests especially
      the QEmu support (Daniel Berrange), range check in credit scheduler
      (with Saori Fukuta and Atsushi Sakai), add support for listen VNC
      parameter un QEmu and fix command line arg (Daniel Berrange)</li>
      <li>Cleanups: debug tracing (Richard Jones), removal of --with-qemud-pid-file
      (Richard Jones), remove unused virDeviceMode, new util module for
      code shared between drivers (Shuveb Hussain), xen header location
      detection (Richard Jones)</li>
    </ul>
    <h3>0.3.0: Jul 9 2007</h3>
    <ul>
      <li>Secure Remote support (Richard Jones).
      See <a href="http://libvirt.org/remote.html">the remote page</a>
      of the documentation
  </li>
      <li>Documentation: remote support (Richard Jones), description of
      the URI connection strings (Richard Jones), update of virsh man
      page, matrix of libvirt API/hypervisor support with version
      information (Richard Jones)</li>
      <li>Bug fixes: examples Makefile.am generation (Richard Jones),
      SetMem fix (Mark Johnson), URI handling and ordering of
      drivers (Daniel Berrange), fix virsh help without hypervisor (Richard
      Jones), id marshalling fix (Daniel Berrange), fix virConnectGetMaxVcpus
      on remote (Richard Jones), avoid a realloc leak (Jim Meyering), scheduler
      parameters handling for Xen (Richard Jones), various early remote
      bug fixes (Richard Jones), remove virsh leaks of domains references
      (Masayuki Sunou), configCache refill bug (Richard Jones), fix
      XML serialization bugs</li>
      <li>Improvements: QEmu switch to XDR-based protocol (Dan Berrange),
      device attach/detach commands (Masayuki Sunou), OCaml bindings
      (Richard Jones), new entry points virDomainGetConnect and
      virNetworkGetConnect useful for bindings (Richard Jones),
      reunitifaction of remote and qemu daemon under a single libvirtd
      with a config file (Daniel Berrange)</li>
      <li>Cleanups: parsing of connection URIs (Richard Jones), messages
      from virsh (Saori Fukuta), Coverage files (Daniel Berrange),
      Solaris fixes (Mark Johnson), avoid [r]index calls (Richard Jones),
      release information in Xen backend, virsh cpupin command cleanups
      (Masayuki Sunou), xen:/// suppport as standard Xen URI (Richard Jones and
      Daniel Berrange), improve driver selection/decline mechanism (Richard
      Jones), error reporting on XML dump (Richard Jones), Remove unused
      virDomainKernel structure (Richard Jones), daemon event loop event
      handling (Daniel Berrange), various unifications cleanup in the daemon
      merging (Daniel Berrange), internal file and timer monitoring API
      (Daniel Berrange), remove libsysfs dependancy, call brctl program
      directly (Daniel Berrange), virBuffer functions cleanups (Richard Jones),
      make init script LSB compliant, error handling on lookup functions
      (Richard Jones), remove internal virGetDomainByID (Richard Jones),
      revamp of xen subdrivers interfaces (Richard Jones)</li>
      <li>Localization updates</li>
    </ul>
    <h3>0.2.3: Jun 8 2007</h3>
    <ul>
      <li>Documentation: documentation for upcoming remote access (Richard Jones),
      virConnectNumOfDefinedDomains doc (Jan Michael), virsh help messages
      for dumpxml and net-dumpxml (Chris Wright), </li>
      <li>Bug fixes: RelaxNG schemas regexp fix (Robin Green), RelaxNG arch bug
      (Mark McLoughlin), large buffers bug fixes (Shigeki Sakamoto), error
      on out of memory condition (Shigeki Sakamoto), virshStrdup fix, non-root
      driver when using Xen bug (Richard Jones), use --strict-order when
      running dnsmasq (Daniel Berrange), virbr0 weirdness on restart (Mark
      McLoughlin), keep connection error messages (Richard Jones), increase
      QEmu read buffer on help (Daniel Berrange), rpm dependance on
      dnsmasq (Daniel Berrange), fix XML boot device syntax (Daniel Berrange),
      QEmu memory bug (Daniel Berrange), memory leak fix (Masayuki Sunou),
      fix compiler flags (Richard Jones), remove type ioemu on recent Xen
      HVM for paravirt drivers (Saori Fukuta), uninitialized string bug
      (Masayuki Sunou), allow init even if the daemon is not running,
      XML to config fix (Daniel Berrange)</li>
      <li>Improvements: add a special error class for the test module (Richard
      Jones), virConnectGetCapabilities on proxy (Richard Jones), allow
      network driver to decline usage (Richard Jones), extend error messages
      for upcoming remote access (Richard Jones), on_reboot support for QEmu
      (Daniel Berrange), save daemon output in a log file (Daniel Berrange),
      xenXMDomainDefineXML can override guest config (Hugh Brock),
      add attach-device and detach-device commands to virsh (Masayuki Sunou
      and Mark McLoughlin and Richard Jones), make virGetVersion case
      insensitive and Python bindings (Richard Jones), new scheduler API
      (Atsushi SAKAI), localizations updates, add logging option for virsh
      (Nobuhiro Itou), allow arguments to be passed to bootloader (Hugh Brock),
      increase the test suite (Daniel Berrange and Hugh Brock)</li>
      <li>Cleanups: Remove VIR_DRV_OPEN_QUIET (Richard Jones), disable xm_internal.c
      for Xen &gt; 3.0.3 (Daniel Berrange), unused fields in _virDomain (Richard
      Jones), export __virGetDomain and __virGetNetwork for libvirtd only
      (Richard Jones), ignore old VNC config for HVM on recent Xen (Daniel
      Berrange), various code cleanups, -Werror cleanup (Hugh Brock)</li>
    </ul>
    <h3>0.2.2: Apr 17 2007</h3>
    <ul>
      <li>Documentation: fix errors due to Amaya (with Simon Hernandez),
      virsh uses kB not bytes (Atsushi SAKAI), add command line help to
      qemud (Richard Jones), xenUnifiedRegister docs (Atsushi SAKAI),
      strings typos (Nikolay Sivov), ilocalization probalem raised by
      Thomas Canniot</li>
      <li>Bug fixes: virsh memory values test (Masayuki Sunou), operations without
      libvirt_qemud (Atsushi SAKAI), fix spec file (Florian La Roche, Jeremy
      Katz, Michael Schwendt),
      direct hypervisor call (Atsushi SAKAI), buffer overflow on qemu
      networking command (Daniel Berrange), buffer overflow in quemud (Daniel
      Berrange), virsh vcpupin bug (Masayuki Sunou), host PAE detections
      and strcuctures size (Richard Jones), Xen PAE flag handling (Daniel
      Berrange), bridged config configuration (Daniel Berrange), erroneous
      XEN_V2_OP_SETMAXMEM value (Masayuki Sunou), memory free error (Mark
      McLoughlin), set VIR_CONNECT_RO on read-only connections (S.Sakamoto),
      avoid memory explosion bug (Daniel Berrange), integer overflow
      for qemu CPU time (Daniel Berrange), QEMU binary path check (Daniel
      Berrange)</li>
      <li>Cleanups: remove some global variables (Jim Meyering), printf-style
      functions checks (Jim Meyering), better virsh error messages, increase
      compiler checkings and security (Daniel Berrange), virBufferGrow usage
      and docs, use calloc instead of malloc/memset, replace all sprintf by
      snprintf, avoid configure clobbering user's CTAGS (Jim Meyering),
      signal handler error cleanup (Richard Jones), iptables internal code
      claenup (Mark McLoughlin), unified Xen driver (Richard Jones),
      cleanup XPath libxml2 calls, IPTables rules tightening (Daniel
      Berrange), </li>
      <li>Improvements: more regression tests on XML (Daniel Berrange), Python
      bindings now generate exception in error cases (Richard Jones),
      Python bindings for vir*GetAutoStart (Daniel Berrange),
      handling of CD-Rom device without device name (Nobuhiro Itou),
      fix hypervisor call to work with Xen 3.0.5 (Daniel Berrange),
      DomainGetOSType for inactive domains (Daniel Berrange), multiple boot
      devices for HVM (Daniel Berrange),
      </li>
    </ul>
    <h3>0.2.1: Mar 16 2007</h3>
    <ul>
      <li>Various internal cleanups (Richard Jones,Daniel Berrange,Mark McLoughlin)</li>
      <li>Bug fixes: libvirt_qemud daemon path (Daniel Berrange), libvirt
      config directory (Daniel Berrange and Mark McLoughlin), memory leak
      in qemud (Mark), various fixes on network support (Mark), avoid Xen
      domain zombies on device hotplug errors (Daniel Berrange), various
      fixes on qemud (Mark), args parsing (Richard Jones), virsh -t argument
      (Saori Fukuta), avoid virsh crash on TAB key (Daniel Berrange), detect
      xend operation failures (Kazuki Mizushima), don't listen on null socket
      (Rich Jones), read-only socket cleanup (Rich Jones), use of vnc port 5900
      (Nobuhiro Itou), assorted networking fixes (Daniel Berrange), shutoff and
      shutdown mismatches (Kazuki Mizushima), unlimited memory handling
      (Atsushi SAKAI), python binding fixes (Tatsuro Enokura)</li>
      <li>Build and portability fixes: IA64 fixes (Atsushi SAKAI), dependancies
      and build (Daniel Berrange), fix xend port detection (Daniel
      Berrange), icompile time warnings (Mark), avoid const related
      compiler warnings (Daniel Berrange), automated builds (Daniel
      Berrange), pointer/int mismatch (Richard Jones), configure time
      selection of drivers, libvirt spec hacking (Daniel Berrange)</li>
      <li>Add support for network autostart and init scripts (Mark McLoughlin)</li>
      <li>New API virConnectGetCapabilities() to detect the virtualization
    capabilities of a host (Richard Jones)</li>
      <li>Minor improvements: qemud signal handling (Mark), don't shutdown or reboot
    domain0 (Kazuki Mizushima), QEmu version autodetection (Daniel Berrange),
    network UUIDs (Mark), speed up UUID domain lookups (Tatsuro Enokura and
    Daniel Berrange), support for paused QEmu CPU (Daniel Berrange), keymap
    VNC attribute support (Takahashi Tomohiro and Daniel Berrange), maximum
    number of virtual CPU (Masayuki Sunou), virtsh --readonly option (Rich
    Jones), python bindings for new functions (Daniel Berrange)</li>
      <li>Documentation updates especially on the XML formats</li>
    </ul>
    <h3>0.2.0: Feb 14 2007</h3>
    <ul>
      <li>Various internal cleanups (Mark McLoughlin, Richard Jones,
      Daniel Berrange, Karel Zak)</li>
      <li>Bug fixes: avoid a crash in connect (Daniel Berrange), virsh args
      parsing (Richard Jones)</li>
      <li>Add support for QEmu and KVM virtualization (Daniel Berrange)</li>
      <li>Add support for network configuration (Mark McLoughlin)</li>
      <li>Minor improvements: regression testing (Daniel Berrange),
      localization string updates</li>
    </ul>
    <h3>0.1.11: Jan 22 2007</h3>
    <ul>
      <li>Finish XML &lt;-&gt; XM config files support</li>
      <li>Remove memory leak when freeing virConf objects</li>
      <li>Finishing inactive domain support (Daniel Berrange)</li>
      <li>Added a Relax-NG schemas to check XML instances</li>
    </ul>
    <h3>0.1.10: Dec 20 2006</h3>
    <ul>
      <li>more localizations</li>
      <li>bug fixes: VCPU info breakages on xen 3.0.3, xenDaemonListDomains buffer overflow (Daniel Berrange), reference count bug when creating Xen domains (Daniel Berrange).</li>
      <li>improvements: support graphic framebuffer for Xen paravirt (Daniel Berrange), VNC listen IP range support (Daniel Berrange), support for default Xen config files and inactive domains of 3.0.4 (Daniel Berrange).</li>
    </ul>
    <h3>0.1.9: Nov 29 2006</h3>
    <ul>
      <li>python bindings: release interpeter lock when calling C (Daniel Berrange)</li>
      <li>don't raise HTTP error when looking information for a domain</li>
      <li>some refactoring to use the driver for all entry points</li>
      <li>better error reporting (Daniel Berrange)</li>
      <li>fix OS reporting when running as non-root</li>
      <li>provide XML parsing errors</li>
      <li>extension of the test framework (Daniel Berrange)</li>
      <li>fix the reconnect regression test</li>
      <li>python bindings: Domain instances now link to the Connect to avoid garbage collection and disconnect</li>
      <li>separate the notion of maximum memory and current use at the XML level</li>
      <li>Fix a memory leak (Daniel Berrange)</li>
      <li>add support for shareable drives</li>
      <li>add support for non-bridge style networking configs for guests(Daniel Berrange)</li>
      <li>python bindings: fix unsigned long marshalling (Daniel Berrange)</li>
      <li>new config APIs virConfNew() and virConfSetValue() to build configs from scratch</li>
      <li>hot plug device support based on Michel Ponceau patch</li>
      <li>added support for inactive domains, new APIs, various associated cleanup (Daniel Berrange)</li>
      <li>special device model for HVM guests (Daniel Berrange)</li>
      <li>add API to dump core of domains (but requires a patched xend)</li>
      <li>pygrub bootloader information take over &lt;os&gt; information</li>
      <li>updated the localization strings</li>
    </ul>
    <h3>0.1.8: Oct 16 2006</h3>
    <ul>
      <li> Bug for system with page size != 4k</li>
      <li> vcpu number initialization (Philippe Berthault)</li>
      <li> don't label crashed domains as shut off (Peter Vetere)</li>
      <li> fix virsh man page (Noriko Mizumoto)</li>
      <li> blktapdd support for alternate drivers like blktap (Daniel Berrange)</li>
      <li> memory leak fixes (xend interface and XML parsing) (Daniel Berrange)</li>
      <li> compile fix</li>
      <li> mlock/munlock size fixes (Daniel Berrange)</li>
      <li> improve error reporting</li>
    </ul>
    <h3>0.1.7: Sep 29 2006</h3>
    <ul>
      <li> fix a memory bug on getting vcpu information from xend (Daniel Berrange)</li>
      <li> fix another problem in the hypercalls change in Xen changeset
       86d26e6ec89b when getting domain information (Daniel Berrange)</li>
    </ul>
    <h3>0.1.6: Sep 22 2006</h3>
    <ul>
      <li>Support for localization of strings using gettext (Daniel Berrange)</li>
      <li>Support for new Xen-3.0.3 cdrom and disk configuration (Daniel Berrange)</li>
      <li>Support for setting VNC port when creating domains with new
      xend config files (Daniel Berrange) </li>
      <li>Fix bug when running against xen-3.0.2 hypercalls (Jim Fehlig)</li>
      <li>Fix reconnection problem when talking directly to http xend</li>
    </ul>
    <h3>0.1.5: Sep 5 2006</h3>
    <ul>
      <li>Support for new hypercalls change in Xen changeset 86d26e6ec89b</li>
      <li>bug fixes: virParseUUID() was wrong, netwoking for paravirt guestsi
      (Daniel Berrange), virsh on non-existent domains (Daniel Berrange),
      string cast bug when handling error in python (Pete Vetere), HTTP
      500 xend error code handling (Pete Vetere and Daniel Berrange)</li>
      <li>improvements: test suite for SEXPR &lt;-&gt; XML format conversions (Daniel
      Berrange), virsh output regression suite (Daniel Berrange), new environ
      variable VIRSH_DEFAULT_CONNECT_URI for the default URI when connecting
      (Daniel Berrange), graphical console support for paravirt guests
      (Jeremy Katz), parsing of simple Xen config files (with Daniel Berrange),
      early work on defined (not running) domains (Daniel Berrange),
      virsh output improvement (Daniel Berrange</li>
    </ul>
    <h3>0.1.4: Aug 16 2006</h3>
    <ul>
      <li>bug fixes: spec file fix (Mark McLoughlin), error report problem (with
    Hugh Brock), long integer in Python bindings (with Daniel Berrange), XML
    generation bug for CDRom (Daniel Berrange), bug whem using number() XPath
    function (Mark McLoughlin), fix python detection code, remove duplicate
    initialization errors (Daniel Berrange)</li>
      <li>improvements: UUID in XML description (Peter Vetere), proxy code
    cleanup, virtual CPU and affinity support + virsh support (Michel
    Ponceau, Philippe Berthault, Daniel Berrange), port and tty information
    for console in XML (Daniel Berrange), added XML dump to driver and proxy
    support (Daniel Berrange), extention of boot options with support for
    floppy and cdrom (Daniel Berrange), features block in XML to report/ask
    PAE, ACPI, APIC for HVM domains (Daniel Berrange), fail saide-effect
    operations when using read-only connection, large improvements to test
    driver (Daniel Berrange) </li>
      <li>documentation: spelling (Daniel Berrange), test driver examples.</li>
    </ul>
    <h3>0.1.3: Jul 11 2006</h3>
    <ul>
      <li>bugfixes: build as non-root, fix xend access when root, handling of
    empty XML elements (Mark McLoughlin), XML serialization and parsing fixes
    (Mark McLoughlin), allow to create domains without disk (Mark
  McLoughlin),</li>
      <li>improvement: xenDaemonLookupByID from O(n^2) to O(n) (Daniel Berrange),
    support for fully virtualized guest (Jim Fehlig, DV, Mark McLoughlin)</li>
      <li>documentation: augmented to cover hvm domains</li>
    </ul>
    <h3>0.1.2: Jul 3 2006</h3>
    <ul>
      <li>headers include paths fixup</li>
      <li>proxy mechanism for unprivileged read-only access by httpu</li>
    </ul>
    <h3>0.1.1: Jun 21 2006</h3>
    <ul>
      <li>building fixes: ncurses fallback (Jim Fehlig), VPATH builds (Daniel P.
    Berrange)</li>
      <li>driver cleanups: new entry points, cleanup of libvirt.c (with Daniel P.
    Berrange)</li>
      <li>Cope with API change introduced in Xen changeset 10277</li>
      <li>new test driver for regression checks (Daniel P. Berrange)</li>
      <li>improvements: added UUID to XML serialization, buffer usage (Karel
    Zak), --connect argument to virsh (Daniel P. Berrange),</li>
      <li>bug fixes: uninitialized memory access in error reporting, S-Expr
    parsing (Jim Fehlig, Jeremy Katz), virConnectOpen bug, remove a TODO in
    xs_internal.c</li>
      <li>documentation: Python examples (David Lutterkort), new Perl binding
    URL, man page update (Karel Zak)</li>
    </ul>
    <h3>0.1.0: Apr 10 2006</h3>
    <ul>
      <li>building fixes: --with-xen-distdir option (Ronald Aigner), out of tree
    build and pkginfo cflag fix (Daniel Berrange)</li>
      <li>enhancement and fixes of the XML description format (David Lutterkort
    and Jim Fehlig)</li>
      <li>new APIs: for Node information and Reboot</li>
      <li>internal code cleanup: refactoring internals into a driver model, more
    error handling, structure sharing, thread safety and ref counting</li>
      <li>bug fixes: error message (Jim Meyering), error allocation in virsh (Jim
    Meyering), virDomainLookupByID (Jim Fehlig),</li>
      <li>documentation: updates on architecture, and format, typo fix (Jim
    Meyering)</li>
      <li>bindings: exception handling in examples (Jim Meyering), perl ones out
    of tree (Daniel Berrange)</li>
      <li>virsh: more options, create, nodeinfo (Karel Zak), renaming of some
    options (Karel Zak), use stderr only for errors (Karel Zak), man page
    (Andrew Puch)</li>
    </ul>
    <h3>0.0.6: Feb 28 2006</h3>
    <ul>
      <li>add UUID lookup and extract API</li>
      <li>add error handling APIs both synchronous and asynchronous</li>
      <li>added minimal hook for error handling at the python level, improved the
    python bindings</li>
      <li>augment the documentation and tests to cover error handling</li>
    </ul>
    <h3>0.0.5: Feb 23 2006</h3>
    <ul>
      <li>Added XML description parsing, dependance to libxml2, implemented the
    creation API virDomainCreateLinux()</li>
      <li>new APIs to lookup and name domain by UUID</li>
      <li>fixed the XML dump when using the Xend access</li>
      <li>Fixed a few more problem related to the name change</li>
      <li>Adding regression tests in python and examples in C</li>
      <li>web site improvement, extended the documentation to cover the XML
    format and Python API</li>
      <li>Added devhelp help for Gnome/Gtk programmers</li>
    </ul>
    <h3>0.0.4: Feb 10 2006</h3>
    <ul>
      <li>Fix various bugs introduced in the name change</li>
    </ul>
    <h3>0.0.3: Feb 9 2006</h3>
    <ul>
      <li>Switch name from 'libvir' to libvirt</li>
      <li>Starting infrastructure to add code examples</li>
      <li>Update of python bindings for completeness</li>
    </ul>
    <h3>0.0.2: Jan 29 2006</h3>
    <ul>
      <li>Update of the documentation, web site redesign (Diana Fong)</li>
      <li>integration of HTTP xend RPC based on libxend by Anthony Liquori for
    most operations</li>
      <li>Adding Save and Restore APIs</li>
      <li>extended the virsh command line tool (Karel Zak)</li>
      <li>remove xenstore transactions (Anthony Liguori)</li>
      <li>fix the Python bindings bug when domain and connections where freed</li>
    </ul>
    <h3>0.0.1: Dec 19 2005</h3>
    <ul>
      <li>First release</li>
      <li>Basic management of existing Xen domains</li>
      <li>Minimal autogenerated Python bindings</li>
    </ul>
  </body>
</html>