~vila/autopkgtest/ci

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
autopkgtest (3.9.5) UNRELEASED; urgency=medium

  * adt-run install_tmp(): If we have Python and Perl modules, don't specify
    the Python modules in $PERL5LIB.
  * Recognize udev rules from packages in temp dir install mode. Copy them to
    /run/udev/rules.d/ and trigger them. (LP: #1417966)
  * setup-commands/ubuntu-touch-session: Don't fail on udevadm failure, which
    cannot work in schroots.
  * adt-virt-qemu: Ensure that python3 or python is available (which is
    required for the auxverb helper) and exit with a meaningful error message
    if it isn't. Adjust the manpage accordingly. Fix adt-setup-vm to install
    python3-minimal if no Python is already installed. Thanks to Christian
    Kastner for the initial patch! (Closes: #777478)

 -- Martin Pitt <mpitt@debian.org>  Thu, 05 Feb 2015 09:03:23 +0100

autopkgtest (3.9.4) unstable; urgency=medium

  * Recognize modern "Package-Type:" control field in addition to
    XC-Package-Type.
  * ssh-setup/adb: Guard adb wait-for-device with a 5 min timeout.
    (LP: #1414939)
  * README.running-tests.rst: Fix mis-spelled ro-apt setup command.
  * Add setup-commands/ro-apt-update: Shortcut for temporarily mounting a
    readonly root file system writable and run apt-get. This allows tests to
    download/unpack test dependencies on older images whose apt indexes are
    out of date. (LP: #1408350)
  * Export temp dir install mode variables in the test run script instead of
    merely running it under that environment, so that we trump non-extending
    LD_LIBRARY_PATHs in /etc/environment. (LP: #1407949)
  * setup-commands/ubuntu-touch-session: Ensure that /dev/uinput is always
    accessible, as we don't necessarily have local logind sessions during
    tests. (part of LP #1415514)
  * setup-commands/ubuntu-touch-session: Unset UPSTART_JOB (which crept into
    the environment from a recent upstart version) when calling initctl, to
    fix querying the session D-BUS address. (LP: #1415514)

 -- Martin Pitt <mpitt@debian.org>  Thu, 29 Jan 2015 19:01:41 +0100

autopkgtest (3.9.3) unstable; urgency=medium

  [ Christian Kastner ]
  * Clean up /etc/dpkg/dpkg.cfg.d/autopkgtest on upgrades if its contents are
    just "force-unsafe-io", indicating that this file was generated by the
    above bug.

 -- Martin Pitt <mpitt@debian.org>  Sun, 11 Jan 2015 13:45:28 +0100

autopkgtest (3.9.2) unstable; urgency=medium

  * adt-setup-vm: Fix all other places which operated on the host instead of
    the guest file system when specifying a directory argument.

 -- Martin Pitt <mpitt@debian.org>  Sun, 11 Jan 2015 13:15:09 +0100

autopkgtest (3.9.1) unstable; urgency=medium

  [ Martin Pitt ]
  * Revert installation of ubuntu-device-flash in adt-run autopkgtest, it's
    too unstable (timeouts and grub errors due to qemu in qemu).

  [ Christian Kastner ]
  * adt-run: Fix detection of dpkg-dev in the testbed. (Closes: #775073)
  * adt-setup-vm: Set umask to 0022 so that ordinary users in the testbed can
    read generated files. (Closes: #775075)
  * adt-setup-vm: Modify guest's dpkg config for enabling force-unsafe-io, not
    host's, when a root directory is specified as argument. (Closes: #775076)
  * adt-setup-vm: Make sure $proxy variable exists before using it. Fixes
    crash when apt is not configured to use a proxy. (Closes: #775092)

 -- Martin Pitt <mpitt@debian.org>  Sun, 11 Jan 2015 12:53:18 +0100

autopkgtest (3.9) unstable; urgency=medium

  Improvements:
  * Add "snappy" ssh setup script to run tests in an Ubuntu Snappy
    (http://www.ubuntu.com/snappy) testbed in QEMU. This uses a given image
    with -i/--image, or constructs a temporary one using ubuntu-device-flash
    (which caches its downloads and is fast).
  * adt-run autopkgtest: Install ubuntu-device-flash and qemu-kvm if
    available, to run the snappy ssh script tests under autopkgtest in Ubuntu.
  * ssh setup script "reboot" commands can now simply "exit 10" if they want
    adt-run to just call "reboot" through ssh, instead of having a custom
    implementation.

  Bug fixes:
  * tools/adt-setup-vm: Avoid debconf prompts during dist-upgrade.
  * adt-virt-ssh: Wait for ssh to become available before checking for sudo.
    Fixes root capability detection for setup scripts which don't already wait
    for ssh themselves.
  * VirtSubproc.cmd_reboot: Avoid multi-line shell command so that this also
    gets along with the ssh runner.
  * Fix FileNotFoundError if built tree does not have a debian/changelog file.
    Simply skip detection of source package version in this case.

 -- Martin Pitt <mpitt@debian.org>  Mon, 05 Jan 2015 18:09:03 +0100

autopkgtest (3.8.1) unstable; urgency=medium

  * If the testbed does not have root privileges (e. g. missing sudo
    password), install click packages with pkcon and skip the AppArmor rule
    adjustment. This makes non-root click tests at least work for
    non-Autopilot cases. (LP: #1384417)
  * Make --shell-fail also apply to test dependency installation failure.
  * Run root tests through "su" as well (if possible), to ensure that these
    also get a proper PAM/logind session with all runners. (LP: #1393474)
  * Skip the test_tmp_install tests if apt-get download does not work. This
    might happen in some build environments which completely disable
    networking or don't have working apt-get download for some reason.
    (Closes: #769687)
  * Don't put the log FIFO into the output directory. This avoids keeping it
    in --output-dir, which fails if the output dir happens to be in the tested
    tree itself. (LP: #1393426)
  * adt-setup-vm: Don't purge man-db. It uninstalls way too much on images
    which aren't just minimal environments.
  * adt-setup-vm: Drop bogus "X-Start-Before" line in generated init.d script.
    (Closes: #770517)
  * Respect DEB_BUILD_OPTIONS=nocheck (side issue in #769687)

 -- Martin Pitt <mpitt@debian.org>  Thu, 27 Nov 2014 10:54:02 +0100

autopkgtest (3.8) unstable; urgency=medium

  Improvements:
  * adt-build-lxc: Configure unsafe dpkg I/O and disable apt's download of
    package translations, like adt-setup-vm.
  * adt-build-lxc: Use eatmydata for lxc-create if available, and install
    eatmydata into containers. For Ubuntu, stop installing the default
    $packages_template (which is ssh,vim).
  * adt-virt-lxc: Pass any additional options/arguments (after --) verbatim to
    lxc-start{,-ephemeral}.
  * adt-virt-lxc: Stop running ephemeral containers with --keep-data by
    default, as this makes them unnecessarily slow due to running on disk.
    Environments with little RAM are instead advised to explicitly supply this
    or --storage-type as extra arguments.

  Bug fixes:
  * Create autopkgtest-reboot command in /tmp, as /sbin/ might be read-only
    (and /run is usually "noexec", so we can't put it there either). Write it
    with "noclobber" to guard against symlink attacks.
  * During reboot, if /var/cache/ isn't writable (as on Ubuntu touch images,
    argh), fall back to saving the current temp dir in /home.
  * adt-virt-ssh: Recreate the sudo wrapper after reboot, as it is in /tmp.
  * ssh-setup/adb: Setup adb port forwarding again after rebooting.
  * Fix error message if /tmp/autopkgtest-reboot already exists.
  * Fix extra space in apt-get option, which breaks apt-get's option parsing
    in some circumstances.
  * adt-build-lxc: Fix hardcoded "utopic" release name for cache cleanup on
    btrfs, use the actual release name from the command line. (LP: #1392589)

 -- Martin Pitt <mpitt@debian.org>  Fri, 14 Nov 2014 08:40:28 +0100

autopkgtest (3.7.1) unstable; urgency=medium

  * NullRunner.test_tmp_install_perl: Use a package from Ubuntu main, to fix
    FTBFS in Ubuntu's buildds.
  * Fix AppArmor rule adjustment for a local click package.
  * When executing a command in the testbed times out, don't wait for it
    after killing if the auxverb includes "sudo". We can't kill those
    processes, so we'd wait forever; we can only hope that they eventually
    terminate themselves after we stop the testbed. Fixes non-working timeouts
    for LXC runner with the --sudo option.
  * Show "set -x" trace of AppArmor reconfiguration in debug mode.
  * Use "install" instead of "short" time out for downloading and unpacking
    dependencies in "temp dir" mode.
  * ssh-setup/adb: Retry connecting with ssh a few times, the first time
    doesn't always succeed immediately after enabling ssh.
  * tools/adt-setup-vm: Prevent subsequent cloud-init runs from modifying the
    apt sources again.

 -- Martin Pitt <mpitt@debian.org>  Tue, 11 Nov 2014 07:54:40 +0100

autopkgtest (3.7) unstable; urgency=medium

  Improvements/cleanup:
  * When not logging to a file, colorize adt-run debug/info/warning/error
    messages to better tell them apart from from apt and test output.
  * adt-virt-schroot: Simplify determination of schroot session location.
  * adt-virt-chroot: Drop support for dchroot arguments. dchroot has been
    obsoleted by schroot for a long time now, and isn't being tested by the
    developers. Allow relative chroot paths.
  * adt-virt-ssh: Rewrite adt-ssh-wrapper to not call the readlink command on
    every single /proc/*/fd/*. This is too slow on devices like Ubuntu Touch,
    where it adds an extra ~ 5 seconds to every command.
  * ssh-setup/adb: Drop --rw and --apt-update options. They stopped working
    when adb switched to running as user, and can be done with
    --setup-commands.
  * Recognize Perl modules in temp dir install mode.
  * Consider programs in the temp dir install tree for preparing the source
    package. This makes it possible to run --source or --apt-source tests in
    read-only environments without dpkg-dev installed. (LP: #1383878)
  * With --apt-upgrade, retry apt-get update a third time after one minute.
    With just a second try we still get occasional hash sum mismatches.
  * Recognize Qt plugins in the temp dir install tree, so that autopilot tests
    work on images which don't have autopilot-qt installed any more.
  * Remove the "adt-satdep" package after test installation finished, to avoid
    tests being confused about an unexpected package.
  * ssh-setup/adb: Drop "autopilot --dbus-probe enable" call. It wastes some
    1.5 minutes and is not needed any more, as we now reconfigure AppArmor for
    the particular clicks that we want to test.

  Bug fixes:
  * adt-virt-ssh: Terminate the ssh connection muxer on cleanup. Fixes eternal
    hangs on waiting for tee with the --output-dir option, as the muxer
    inherits our stderr. (LP: #1384324)
  * Fix crash when running from a git checkout, but git is not installed.
  * ssh-setup/adb: Robustify powerd-cli invocation. It previously failed
    randomly.
  * ssh-setup/adb: Quiesce some noise from various phablet-config/gdbus/adb
    commands.
  * ssh-setup/adb: If the welcome wizard is already running, just kill that
    instead of the entire session. In particular, this avoids killing adb on
    both the host and the device.

 -- Martin Pitt <mpitt@debian.org>  Thu, 30 Oct 2014 10:47:16 +0100

autopkgtest (3.6) unstable; urgency=medium

  [ Antonio Terceiro ]
  * README.package-tests.rst: Make references to the control field consistent.

  [ Martin Pitt ]
  * When parsing .changes files, always register the debs before the dscs and
    stop assuming Files: having this order already. (Closes: #764795)
  * Drop the builtin synthesis of Perl/Ruby tests and use autodep8 instead.
    Update the spec accordingly, and add a Recommends: autodep8.
    (Closes: #763847)
  * adt-build-lxc: Implement LXC cache cleanup for btrfs by removing the image
    snapshots instead of rm -r'ing the cache dir, as the latter will fail.
  * adt-setup-vm: Fix missing hashbang of generated /etc/init.d/autopkgtest.
    (Regression from 3.5.5)

 -- Martin Pitt <mpitt@debian.org>  Thu, 16 Oct 2014 16:36:11 +0200

autopkgtest (3.5.5) unstable; urgency=medium

  * adt-virt-ssh: Be more liberal when parsing the setup script's
    capabilities, accept spaces and commas.
  * adt-virt-ssh: Refactor code so that setup script's "revert" commands can
    update/refresh the ssh config. Often revert translates to close and
    re-open, which changes the IP. Update manpage and ssh-setup/SKELETON
    accordingly.
  * ssh-setup/nova: Make parsing commands work with mawk too, to avoid
    depending on gawk.
  * ssh-setup/nova: Implement a simple revert by a simple teardown/providing a
    new instance. (This might become more efficient in the future with using
    snapshots.)
  * adt-buildvm-ubuntu-cloud: Put vmalloc kernel commandline config into
    separate grub.d/ directory, to avoid subsequent cloud-init invocations
    overwriting it.
  * tools/adt-setup-vm: Add setup steps that adt-buildvm-ubuntu-cloud does, so
    that vmdebootstrap generated VMs are functionally on par with the Ubuntu
    cloud images: Set up serial console, dpkg unsafe-io, install some
    additional packages, remove unnecessary packages, bump vmalloc on i386.
  * adt-buildvm-ubuntu-cloud: Remove most of the setup steps from user-data,
    and call adt-setup-vm instead. This keeps the knowledge of how to set up
    VM testbeds in one single place.

 -- Martin Pitt <mpitt@debian.org>  Thu, 09 Oct 2014 15:20:15 +0200

autopkgtest (3.5.4) unstable; urgency=medium

  adt-run fixes:
  * Make apt-get source calls again show what's being downloaded, but not all
    the other noise around it.
  * Avoid copying down the tests tree into the testbed if it already exists
    there. This is the common case for the first test in unbuilt trees, and
    avoids one round of expensive large copying for the ssh and qemu runners.
  * Fix relative --override-control paths: They should not be relative to the
    source dir but relative to the current dir where adt-run is called.

  ssh-setup/nova fixes:
  * Add -N/--net-id argument for OpenStack deployments which require setting
    an explicit --nic net-id.
  * Stop using nova boot's --file option, it does not work any more (see
    LP#1376176); use --user-data instead. Also set some go-faster apt options.
  * Wait until ssh is available and cloud-init is done.
  * Stop making --keyname mandatory. If not given, use the first one from
    "nova keypair-list".
  * Fix crash if ~/.ssh/known_hosts does not exist.

  ssh-setup/adb fixes:
  * Drop the sudo'ing for unlocking the screen. It stopped working and is not
    necessary, now that we don't have images with adb running as root any
    more.
  * Fix unity8 restart after disabling first-time wizard to work on current
    Ubuntu Touch images.
  * Wait until com.canonical.UnityGreeter becomes available. This is a better
    way to wait for the desktop to be started up, and also reliably unlocks
    the greeter.
  * During revert, don't fail if there are no configured networks.
  * Add -b/--reboot option to reboot the device before running the test.
  * Disable --reset option for now; it is broken as it does not restore the
    password and developer mode. Point towards using --reboot, which should be
    good enough for most cases in r/o mode.

  adt-virt-ssh fixes:
  * Implement reboot.
  * Tests or builds sometimes leak background processes which might still be
    connected to ssh's stdout/err; create and use a wrapper script that kills
    these after the main program (build or test script) finishes, otherwise we
    get eternal hangs as ssh waits until nothing is connected to its tty any
    more.

  Other fixes:
  * adt-buildvm-ubuntu-cloud: Purge more unnecessary packages.

 -- Martin Pitt <mpitt@debian.org>  Wed, 08 Oct 2014 09:22:17 +0200

autopkgtest (3.5.3) unstable; urgency=medium

  * ssh-setup/adb: Use the new "phablet-config network" to save/restore wifi
    connections, which also works with non-root adb.
  * Give adt-run's tee processes some time to catch up between printing
    results and stderr, to avoid scrambled logs. (LP: #1373441)
  * Fix NullRunner.test_timeout_no_output for older Python versions.
  * tests/pyflakes: Skip test if pyflakes3 is not available (for backports).
  * Bump Standards version to 3.9.6 (no changes necessary).
  * NullRunner.test_timeout_no_output: Slightly relax time bound to make
    failures less likely on loaded/slow machines.
  * Install clicks with --allow-unauthenticated to support local developer
    generated packages. (LP: #1372640)

 -- Martin Pitt <mpitt@debian.org>  Sun, 28 Sep 2014 12:16:16 +0200

autopkgtest (3.5.2) unstable; urgency=medium

  [ Martin Pitt ]
  * Make apt-get source and package unpack output a bit less verbose.
  * Avoid "grep: debian/tests/control: No such file or directory" warning for
    packages with implicit test control. (Closes: #762009)
  * Adjust "unpack into temp dir" mode for multi-archified typelib locations
    introduced in gobject-introspection 1.41.4-1.

  [ Niko Tyni ]
  * Test perl packages that include test.pl, not just t/. (Closes: #762013)

 -- Martin Pitt <mpitt@debian.org>  Tue, 23 Sep 2014 09:31:29 +0200

autopkgtest (3.5.1) unstable; urgency=medium

  * Fix apt cleanup to remove configuration files before apt-get update.
  * When using local binaries, tell apt-get to only download our
    autopkgtest.list, not all apt lists again.
  * Move autopkgtest gpg directory from ~/.autopkgtest/gpg to
    ~/.cache/autopkgtest/. Check the former location for backwards
    compatiblity.
  * Invoke gpg with --no-random-seed-file to avoid VCS noise when using
    tests/home/.
  * run-from-checkout: Use --gnupg-home with our tests/home to avoid GPG key
    generation.
  * adt-run: Defer GPG key creation until binary publishing time. This avoids
    key creation entirely for the common case of not using any local or built
    binaries.
  * tests: Use apt-doc instead of cpp-doc, as the latter is in Debian contrib
    only. (Closes: #761417)
  * When determining whether a testbed reset is necessary in between tests,
    also consider if recommends were/will be installed. (Closes: #761420)
  * README.package-tests.rst: Packages with implicit test control (ruby/perl)
    should use a different Testsuite: value, namely
    autopkgtest-pkg-{ruby,perl}, to avoid breaking compatibility with the
    specification and to other implementations like sadt.
  * autopkgtest-reboot: Switch from SIGPIPE to SIGKILL, as that is much more
    reliable.
  * Reorganize NullRunner tests so that most run also as normal user (and
    hence during package build); only keep four tests in NullRunnerRoot which
    actually do need root privileges.
  * Improve NullRunner.test_timeout_no_output test case to ensure that the
    test is properly killed after timing out.
  * Fix invocation of tests so that they retain the default SIGINT handler.
    This changes cleanup after a timeout, add new procps dependency for this.
    (Closes: #761596)

 -- Martin Pitt <mpitt@debian.org>  Wed, 17 Sep 2014 06:09:30 +0200

autopkgtest (3.5) unstable; urgency=medium

  Improvements:
  * VirtSubProc.cmd_reboot(): Save/restore downtmp instead of creating a new
    one. This is more useful for reboot scenarios within tests.
  * Support tests that want to reboot the testbed (for runners which support
    rebooting). Document this in doc/README.package-tests.rst.
  * tests/testdesc: Add test case for Debian packages without a test control.
  * If there is no Debian test control file, synthesize one for Ruby and Perl
    packages, using gem2deb-test-runner and pkg-perl-autopkgtest. Thanks to
    Antonio Terceiro!
  * ssh-setup/adb: Unlock the greeter before running tests.

  Bug fixes:
  * qemu: Reconfigure tzdata after copying /etc/timezone, to make that change
    actually active.
  * qemu: Wait an additional 3 seconds after the login prompt appears on
    ttyS0. Without that, the system time is wrong, causing bad file
    timestamps. Unfortunately polling runlevel or the "hwclock" status file
    doesn't help.
  * Always keep the same downtmp even after resetting the testbed.  Some built
    trees/tests use absolute path names and break when being moved around
    after a reset. This already worked in most cases by accident due to a bug,
    but now clean up the code to be explicit about it.
  * Expand '@' to quasi-versioned (>= 0~) dependencies to avoid satisfying
    them by virtual packages. (Closes: #761003)
  * Ensure that the build tree is world-readable. Fixes permission error when
    running adt-run as non-root with a different --user and a tight umask.
    (Closes: #761049)
  * lxc: Ensure the container root directory is accessible to non-root users.
    Works around lxc-start-ephemeral bug with tight umasks.
    (https://launchpad.net/bugs/1367730)
  * lxc: Fix lxc-clone option (--new, not --name).

 -- Martin Pitt <mpitt@debian.org>  Thu, 11 Sep 2014 11:05:16 +0200

autopkgtest (3.4.1) unstable; urgency=medium

  * adt-buildvm-ubuntu-cloud: Use host's http[s] proxy in the VM, rewriting
    localhost addresses accordingly.
  * qemu: Accept any runlevel between 2 and 5 as "booted", to also work with
    systemd. (Closes: #760060)
  * adt-run: Read built tree changelogs with UTF-8 encoding. (Closes: #759752)
  * adt-virt-lxc: Source /etc/profile as well, to get $PATH in Debian
    environments.

 -- Martin Pitt <mpitt@debian.org>  Thu, 04 Sep 2014 07:52:12 +0200

autopkgtest (3.4) unstable; urgency=medium

  * Produce a summary file by default when --output-dir is given.
  * ssh-setup/adb: Add missing $ADBOPTS for reverting to factory state.
  * Add support for retrieving a click source from bzr (from the manifest's
    x-source/vcs-bzr key) if --click-source is not given.
  * ssh-setup/adb: Use SystemImage D-BUS call for factory reset instead of
    direct recovery commands, to also work as user.
  * ssh-setup/adb: Add --password/-p option to specify a different sudo
    password than "phablet".
  * adt-run: Fix $USER in tests if testbed does not have root.
  * adt-run: Source shell profiles if testbed does not have root. Fixes
    running click tests on Ubuntu Touch without a sudo password.
  * ssh-setup/adb: Try common sudo passwords for CI ("phablet" and "0000"); if
    those do not work, and none is specified with --password, tests cannot run
    as root (which should be fine for most cases).
  * ssh-setup/adb: Stop using system-image-cli to detect an Ubuntu phone, as
    that does not work as user. Check for unity8 instead, like in other parts
    of the code.
  * ssh-setup/adb: Fix cleaning up of first-time wizard for non-root adb.

 -- Martin Pitt <mpitt@debian.org>  Mon, 25 Aug 2014 16:10:01 +0200

autopkgtest (3.3.3) unstable; urgency=medium

  * ssh-setup/adb: Always parse options, so that $ADBOPTS is also defined for
    operations other than "open". Fixes failure on close when multiple devices
    are present.
  * adt-run manpage: Fix references to documentation. (Closes: #758016)
  * README.package-tests.rst: Point out that dpkg-source >= 1.17.11 adds the
    Testsuite: field automatically. Thanks to Guillem Jover!
  * ssh-setup/adb: Use PropertyService to enable ssh, for future compatibility
    with non-root adb.
  * ssh-setup/adb: Protect against failures of ssh-keygen when pruning the
    localhost fingerprint. It fails if ~/.ssh/known_hosts does not exist.
  * When copying down, properly fail when there are unremovable files in an
    existing directory, instead of ignoring them and making the subsequent
    copytree() fail. This helps to get better error messages for #757396.
  * Fix crash on undeletable files in source trees. (Closes: #757396)
  * ssh-setup/adb: If there is no default ssh key, create an
    ~/.ssh/id_autopkgtest and use that.
  * Run autopilot tests with generating a subunit stream in
    <output-dir>/artifacts/<testname>.subunit, and in verbose mode.

 -- Martin Pitt <mpitt@debian.org>  Wed, 20 Aug 2014 20:11:17 +0200

autopkgtest (3.3.2) unstable; urgency=medium

  * When logging output to a file, properly close the "tee" processes' stdin
    and wait for them to finish, instead of just killing them. This avoids
    truncated logs on heavily loaded machines.
  * Fix NullRunnerNoRoot.test_tmp_install test if gir1.2-json-1.0 is already
    installed.
  * Use long options for calling programs except for the most common ones, for
    easier comprehension.
  * qemu: Read all responses from ttyS1 after sending commands. Qemu 2.1 seems
    to configure serial sockets differently, and not flushing responses
    confuses it.
  * qemu: Use "cache=unsafe" option to improve performance when the overlay is
    not on a tmpfs.
  * Further robustify cleaning up the chroots in the ChrootRunner tests.
  * adt-build-lxc: When updating containers, move the new rootfs completely to
    the original container. The rsync approach did not reliably update all
    files.

 -- Martin Pitt <mpitt@debian.org>  Wed, 06 Aug 2014 11:28:00 +0200

autopkgtest (3.3.1) unstable; urgency=medium

  * Accept comma separators in Tests:, Restrictions:, and Features: fields;
    this is consistent with Depends: and avoids skipping tests. (LP: #1347958)
  * Generalize implementation of getting an interactive shell in testbeds.
    Most runners now don't need to provide a hook_shell() any more.
  * Export install environment to interactive testbed shells, so that
    unpacked test depends in the temp dir are accessible. (LP: #1339103)
  * lxc: Don't fail on a nonexisting /etc/environment or /etc/default/locale.
    (LP: #1348749)
  * adb ssh script: Add --apt-update option to run "apt-get update" (with
    temporarily switching to r/w), to run tests on older development images.
    (LP: #1342838)
  * Drop the very short and unnecessary install timeouts from the NullRunner
    tests.

 -- Martin Pitt <mpitt@debian.org>  Tue, 29 Jul 2014 13:45:36 +0200

autopkgtest (3.3) unstable; urgency=medium

  Improvements:
  * Define "Classes:" (Debian) / "classes" (click manifest) test control field
    in the specifications. For packages whose tests should run on particular/a
    set of different hardware/platforms, this can specify a list of abstract
    class names such as "desktop" or "graphics-driver". Consumers of
    autopkgtest can then map these class names to particular
    machines/platforms/policies.
  * Fall back to searching for --setup-commands files in
    /usr/share/autopkgtest/setup-commands/ if they are specified without path,
    to reduce typing.
  * Fall back to searching adt-virt-ssh's --setup-script in
    /usr/share/autopkgtest/ssh-setup/ if they don't exist in the current
    directory, to reduce typing.

  Bug fixes:
  * When running a test as user on a root testbed, run source extraction under
    set -e, to fail early at the proper error. (LP: #1346388)
  * Add test case for non-existing --apt-source package name.
  * Add "installed" autopkgtest to run adt-run against a simple source tree in
    $ADTTMP, to avoid using Python modules from the autopkgtest source tree.
    This spots grave bugs like in 3.2.1.

 -- Martin Pitt <mpitt@debian.org>  Wed, 23 Jul 2014 09:16:08 +0200

autopkgtest (3.2.2) unstable; urgency=medium

  * adt-run: Fix typo that broke --apt-source with "build-needed" tests.

 -- Martin Pitt <mpitt@debian.org>  Mon, 21 Jul 2014 15:07:17 +0200

autopkgtest (3.2.1) unstable; urgency=medium

  * Ship forgotten adt_run_args module.

 -- Martin Pitt <mpitt@debian.org>  Mon, 21 Jul 2014 11:45:25 +0200

autopkgtest (3.2) unstable; urgency=medium

  Improvements:
  * Add --copy option to copy a file or directory into the testbed.
  * Support specifying a click name like "com.example.myapp" with --click to
    test an already installed click instead of a local *.click file.
    (LP: #1338899)
  * Introduce "autopilot_module" click test control field for specifying an
    autopilot test module name. This allows tests to require additional test
    dependencies, restrictions, etc. without having to specify the full
    invocation of autopilot. (LP: #1338911)
  * In "unpack into temp dir" mode, ignore Python 2.x test dependencies. They
    are not exposed anyway as with $PYTHONPATH we can only serve one major
    Python version, and we want Python 3.
  * Port remaining runners from obsolete optparse to modern argparse. This
    gives a consistent command line help and support for reading options from
    a file with '@'.
  * Port adt-run to argparse, and clean up the CLI:
    - Drop rarely used and confusing options: --instantiate, --sources-tests,
    --sources-no-tests, --built-binaries-filter,
    --binaries{,-forbuilds,-fortests}. Add a single new --built-binaries as
      the opposite of -B/--no-built-binaries.
    - CLI parsing is now done in lib/adt_run_args.py, with separate unit
      tests.
    - This now allows any part of the command line (for adt-run itself or the
      virt-server or both) to be read from a file, using the '@' prefix.
      (Closes: #749241)
    - Separate the options into different logical groups, in both --help and
      the manpage.
  * Make --override-control work for click manifests. (LP: #1342818)
  * Introduce "Test-Command:" debian/tests/control field to run a shell
    command instead of a "Tests" named executable. This avoids having to write
    trivial one-liner scripts or allows wrapping calls to test executables.
    (Closes: #741330)

  Bug fixes:
  * Set $USER environment variable also for tests that run as root.
    (LP: #1337802)
  * Add lintian override for ssh-setup/SKELETON, it's deliberately not
    executable.
  * Increase timeout for aa-clickhook workaround for LP#1337253, 100s is often
    not enough.
  * ssh-setup/adb: Disabling the first-time wizards sometimes fails due to adb
    being brittle at that time. Retry up to 5 times.
  * Optimize aa-clickhook workaround for LP #1337253 to only rebuild the
    profile of the installed click app. This reduces the time from about a
    minute to about a second.
  * qemu, lxc: Use VirtSubproc subprocess wrappers to get timeout handling for
    all commands.
  * Rewrite build depends to not rely on builders being able to fall back to
    alternatives (python >= 3.3 | python3-mock), to ease backporting.
  * tests/pyflakes: Use pyflakes3.
  * Only run pyflakes test during package build if pyflakes3 is available.
    This unbreaks backports.
  * Run "click info" as the same user as the test. (LP: #1342836)
  * Keep <testname>-stderr output files for "allow-stderr" tests.

 -- Martin Pitt <mpitt@debian.org>  Mon, 21 Jul 2014 09:35:17 +0200

autopkgtest (3.1) unstable; urgency=low

  Improvements:
  * ssh-setup/adb: On Ubuntu phones, use phablet-config to disable first-time
    wizards/intros. Implement reboot and revert. This requires phablet-config
    now, either installed as package or from bzr checkout with
    PHABLET_TOOLS_PATH=<checkout dir>.
  * ssh-setup/adb: Save/restore NetworkManager system connections in revert.
  * ssh-setup/adb: Add -r/--reset option to perform a factory reset before
    running tests.
  * Bring back --control-override option, with tests and documentation.

  Bug fixes:
  * Work around subprocess.Popen bug in Python 3.2.
  * lib/testdesc.py: Change exceptions to be Python 3.2 compatible.
  * Kill the actual test on timeout instead of just the wrapping shell script.
  * Fix workaround for LP #1333215: Don't run with "su -l" as that causes
    extra stdout spew from su for nonexisting home directories; instead just
    source /etc/profile and ~/.profile as these are the parts that we need.
  * Run aa-clickhook after every click install, otherwise it doesn't apply to
    newly installed clicks. Works around LP #1337253.
  * Open files which can potentially contain non-ASCII data with explicit
    UTF-8 encoding, to avoid UnicodeDecodeErrors under C locale.
    (Closes: #753582)
  * Fix metavariable names in adt --help.
  * ChrootRunner tests: Retry removal of temporary chroot when busy.
  * Don't let a first failed apt-get update run break the test due to stderr;
    it gets retried 15 seconds later.

 -- Martin Pitt <mpitt@debian.org>  Thu, 03 Jul 2014 13:31:16 +0200

autopkgtest (3.0.2) unstable; urgency=low

  * Fix -s/--shell-fail to actually work again (regression in 2.19).
  * Quiesce the sourcing of /etc/profile and ~/.profile to avoid "stdin: is
    not a tty" clutter.

 -- Martin Pitt <mpitt@debian.org>  Wed, 02 Jul 2014 09:28:20 +0200

autopkgtest (3.0.1) unstable; urgency=low

  * Install ssh setup scripts executable.
  * doc/README.running-tests.rst: Add ssh runner example.

 -- Martin Pitt <mpitt@debian.org>  Tue, 01 Jul 2014 15:40:39 +0200

autopkgtest (3.0) unstable; urgency=low

  Improvements:
  * Add support for click packages (https://click.readthedocs.org):
    - Add two new actions --click and --click-source to run tests of a click
      package. For now, --click-source is mandatory as parsing/getting the
      source from a click's x-source manifest entry is not yet implemented.
    - Add doc/README.click-tests.rst to document test definition for click
      packages.
    - Add setup-commands/ubuntu-touch-session: --setup-commands script for
      installing click, the Ubuntu SDK, some extra packages for autopilot, and
      launching Xvfb and an user upstart session. This approximates the
      environment of an Ubuntu touch device. You can also run
      setup-commands/ro-apt afterwards.
  * If the testbed does not have root (null runner or schroots without
      root-user/group) or a writable dpkg database (as on Ubuntu system
      images), fall back to unpacking test dependencies into a temporary
      directory and set *_PATH environment variables accordingly. This will
      make a limited number of test dependencies work in these test beds.
  * Add setup-commands/ro-apt for making dpkg/apt readonly, to
    approximate what happens with Ubuntu system images.

  * Add adt-virt-ssh runner: Generic runner for an externally set up testbed
    which assumes nothing else than a working ssh connection. This can call a
    "setup script" to create/configure a testbed (such as spinning up a cloud
    VM with nova or setting up SSH on a phone through ADB). See the manpage
    for details. Thanks to Jean-Baptiste Lallement!
  * Add ssh-setup/SKELETON for a basis to write ssh setup scripts.
  * Add ssh-setup/adb: Set up an ssh connection to an adb host. If that adb
    host is an Ubuntu Touch system, it also does some extra configuration like
    disabling the screen timeout and allowing Autopilot to introspect running
    apps. See header commends for details. Thanks to Jean-Baptiste Lallement!
  * Add ssh-setup/nova: Sets up a nova instance to use as an autopkgtest
    testbed. It assumes that the host system is already prepared to run nova
    commands. This is not very robust at the moment and more like a proof of
    concept. Thanks to Jean-Baptiste Lallement!

  * Convert doc/README.* to reStructuredText and rename to *.rst. Build HTML
    files from them using rst2html and install them also.
  * adt-run: Never run testbed commands with newlines in them. Those make it
    ridiculously hard to implement runners which can only accept shell
    strings.

  Bug fixes:
  * lxc: Don't leak the host environment into the container (lxc-attach
    currently defaults to that), but build a clean and minimal environment
    from /etc/environment and /etc/default/locale.
  * Fix calling a virt server with full path.
  * lib/VirtSubProc.py, downtmp_remove(): Only remove the downtmp if it is
    actually set. This avoids confusing error messages if something fails
    during early test bed setup.
  * adt-run: set APT_LISTBUGS_FRONTEND=none when installing packages. This
    will avoid the apt-listbugs prompt when apt-listbugs is installed.
    Thanks to Antonio Terceiro!
  * schroot: Ending the schroot session sometimes fails on "Device or resource
    busy". Retry 10 times before giving up instead of failing immediately.
  * adt-run: Read /etc/profile and ~/.profile when running tests as user. This
    emulates the bits of "su -l" that we want, until this gets cleaned up for
    using "su -l" completely.
  * tests/run-parallel: Get sudo password early, to avoid asking for it in
    background jobs.
  * Restrict --apt-pocket to *.ubuntu.com and *.debian.org sources, as
    third-party repositories such as launchpad.net don't (necessarily) have
    pockets. (LP: #1334332)
  * Fix high adt-virt-* CPU usage on reading commands on stdin.

 -- Martin Pitt <mpitt@debian.org>  Tue, 01 Jul 2014 15:21:55 +0200

autopkgtest (2.20) unstable; urgency=medium

  Improvements:
  * Add "Test" argument/member for a shell string command, instead of
    specifying a path to a test executable. Not currently supported by Debian
    parser.
  * Convert doc/README.* to Markdown, so that it's easy to format them as PDF
    or HTML, e. g. with pandoc.
  * If the --user option is given or the testbed specifies a normal user, pass
    this to --setup-commands through $ADT_NORMAL_USER.
  * Allow --setup-commands which would ordinarily reboot the testbed to
    suppress this by creating a stamp file in /run. This is useful for
    commands which run processes that aren't started at boot.
  * Default to C.UTF-8 locale instead of C. This is supported in Debian >= 7
    (wheezy) and Ubuntu >= 12.04 LTS, and much closer to reality than C.
  * If the testbed does not have root (null runner or schroots without
    root-user/group) or a writable dpkg database (as on Ubuntu system images),
    fall back to unpacking test dependencies into a temporary directory and
    set *_PATH environment variables accordingly. This will make a limited
    number of test dependencies work in these test beds.

  Bug fixes:
  * Don't include "adt-satdep" dummy package in <test>-packages output files.
  * adt-buildvm-ubuntu-cloud: Use host timezone as default for the VM, to
    avoid TZ changes during boot when running tests. Thanks Jean-Baptiste
    Lallement!
  * Run tests with specified locale also when they run as user.
  * Fix test failure with Ubuntu's pkgbinarymangler installed.

 -- Martin Pitt <mpitt@debian.org>  Tue, 24 Jun 2014 16:34:36 +0200

autopkgtest (2.19) unstable; urgency=medium

  Improvements:
  * Support new argument type --changes (implied if file name ends with
    ".changes"). This behaves as if you specified all debs and the dsc from
    the given binary changes file and implies --no-built-binaries. I. e. this
    is the right thing to test a local package that you just built.
    (Closes: #738552)

  Bug fixes:
  * schroot: Always advertise "revert" capability, as it implements revert
    with simply close()/open().
  * adt-run: Move warning about missing root on testbed into the correct
    place.
  * Install build-essential and build dependencies in one apt run, which is
    slightly faster.
  * Explicity specify UTF-8 encoding for reading/writing Debian control files,
    to fix UnicodeDecodeError under C locale.
  * Determine testpkg-version also for --built-tree tests.
  * schroot: Refuse to work with non-ephemeral schroots, i. e. "directory"
    type schroots without union-type. Point this out in the manpage, too.
    (Closes: #751574)
  * schroot: Verify that /proc is mounted, and abort with a proper error
    message if not. (Closes: #751575)
  * adt-buildvm-ubuntu-cloud: Don't start cloud-config with a leading newline,
    not yet supported in Ubuntu 12.04's cloud-init. Thanks Jean-Baptiste
    Lallement! (LP: #1330950)
  * adt-buildvm-ubuntu-cloud: Don't use write_files cloud-init command, not
    yet supported in Ubuntu 12.04's cloud-init. Replace with runcmd echos.
  * adt-buildvm-ubuntu-cloud: Purge cloud-init and shutdown after cloud-init
    is done, not while it's still running.
  * adt-buildvm-ubuntu-cloud: Create upstart job for ttyS0 console unless it
    already exists, for compatibility with Ubuntu 12.04.
  * adt-virt-qemu: Use python3 or python for eofcat depending on which one is
    available. Fixes operation with older Ubuntu versions which don't yet
    install Python 3 by default.

  Code cleanup:
  * Unify logging functions into lib/adtlog.py, make their API easier and more
    consistent, and use them in adt-run and all adt-virt-*.
  * Move test control parsing and keeping data into lib/testdesc.py. This
    eases factorization, abstraction for future support of other source
    package formats such as click, and testing. Add new tests/testdesc
    unittests. This also drops the "tree0t-" like prefixes from test names in
    the results and the output file names.
  * Don't read --setup-commands files multiple times.

 -- Martin Pitt <mpitt@debian.org>  Wed, 18 Jun 2014 10:07:46 +0200

autopkgtest (2.18) unstable; urgency=medium

  Improvements:
  * adt-run: When running from git, show the current SHA and commit summary of
    HEAD.

  Bug fixes:
  * tests: Fix race in cleaning up ChrootRunner mounts.
  * adt-run: If apt-get update fails on publishing built binaries, retry after
    15 seconds.
  * VirtSubproc.cleanup(): Avoid recursion if something in hook_cleanup()
    bombs.
  * Fix --shell to also work with --output-dir. (LP: #1317078)

  Code cleanup:
  * VirtSubproc: Document and cleanup execute*() functions.
  * Some test robustifications, to avoid making too many assumptions about
    debug output.
  * adt-run: Eliminate usage of testbed "execute" command, which is too
    complicated and limiting. Use "print-execute-command" directly instead.
  * Drop "execute" command.
  * adt-run: Unify Testbed.command() and commandr() methods and make them
    stricter.
  * Add prefixes to all temporary directories.
  * Remove autopkgtest-xenlvm. It has been orphaned since ~ 2008, few to no
    current users, and no maintainer. (Closes: #508660, #680122)
  * Simplify build system.
  * Drop concept of "shstring". All runners must provide an auxverb now,
    possibly with a wrapper and quoting by themselves if their implementation
    can only deal with shell commands. This avoids having to tell apart these
    two cases in adt-run, clarifies the documentation, and greatly simplifies
    the code. (Closes: #750544)
  * qemu: Use low-level IO in runcmd.  This avoids all the Python overhead and
    buffering and is less prone to bytes vs. string issues.
  * qemu: Fix text vs. binary confusion in reading and copying /etc/timezone.
  * schroot: Call schroot command with -q, to avoid stderr spew if the schroot
    has "message-verbosity=verbose".
  * Port to Python 3.

 -- Martin Pitt <mpitt@debian.org>  Thu, 12 Jun 2014 07:48:58 +0200

autopkgtest (2.17.1) unstable; urgency=medium

  * Make $ADTTMP readable and accessible to other users, for tests which use
    other users through "su" and similar.
  * adt-virt-qemu: Set $HOME for root also after rebooting.
  * tests/adt-run: Force stdout to UTF-8 to see proper failures even in
    non-UTF-8 environments, instead of crashing with UnicodeEncodeError.
  * adt-run: Flush input to the stdout/err cat processes and give them some
    time to catch up after the end of the test, to avoid losing the last bits
    of output. (Closes: #750343)
  * Add missing build-essential and debhelper test dependencies.
  * adt-run: Ensure the cleanup handler for the tests tree runs also if
    copying up the tests tree fails. (Closes: #749655)
  * Put back the LXC runner on Debian, so that folks with manual LXC container
    setups can still use it.
  * adt-build-lxc: Check for default networking in /etc/lxc/default.conf. If
    it's "empty", abort with an error message that container networking needs
    to be set up first. Until LXC gets fixed in Debian (#747914) you need to
    manually set up a bridge, dnsmasq, and the default config.
  * adt-build-lxc: Support specifying $ADT_APT_PROXY. If apt-cacher-ng is
    running locally, use that as a default.

 -- Martin Pitt <mpitt@debian.org>  Wed, 04 Jun 2014 15:03:30 +0200

autopkgtest (2.17) unstable; urgency=medium

  New features:
  * adt-buildvm-ubuntu-cloud, adt-setup-vm: If apt-cacher-ng is running
    locally, use that as a default for --proxy/ADT_APT_PROXY.
  * Add "reboot" testbed capability and implement it for QEMU (most other
    runners don't support it conceptually). Reboot the testbed if the setup
    commands affected boot relevant directories (/boot, /etc/init.d,
    /etc/init/, or /{etc,lib}/systemd/system). (LP: #1324435)

  Bug fixes:
  * adt-setup-vm: Run the initial apt-get update without fetching
    translations.
  * Stop shipping the LXC runner and associated tools on Debian. It does not
    work out of the box until Debian's LXC containers get proper networking by
    default (see Debian #747914).
  * adt-buildvm-ubuntu-cloud: Add LSB header to generated SysV init script to
    avoid a warning from insserv.
  * VirtSubproc: Fix generation of auxverb from shstring.
  * Drop debhelper dependency, not necessary any more since 2.16.

 -- Martin Pitt <mpitt@debian.org>  Tue, 03 Jun 2014 11:49:32 +0200

autopkgtest (2.16.4) unstable; urgency=medium

  * adt-build-lxc: Unset $http[s]_proxy for the post-creation apt-get update
    if it refers to localhost.
  * adt-build-lxc: Fix cache cleaning for upgrades.

 -- Martin Pitt <mpitt@debian.org>  Thu, 22 May 2014 17:52:46 +0200

autopkgtest (2.16.3) unstable; urgency=medium

  * adt-buildvm-ubuntu-cloud: Explicitly use virtio ethernet device, as the
    default one is horribly slow with older QEMU versions.
  * adt-virt-qemu: Add -c/--cpus option for running VMs with multiple CPUs.
  * adt-run: Retry writing to stderr a few times on EAGAIN.
  * adt-run: If apt-get update fails, retry after 15 seconds. This should
    work around the frequent "hash sum mismatch" race condition.
    (LP: #1319416)
  * adt-buildvm-ubuntu-cloud: Configure dpkg to use unsafe io, to speed up
    tests which run on hard disk backed overlays.
  * Simplify the pipelining of test stdout/err, and stop using explicit pipes
    and the "downtmp-shared-fifo" capability. This provides live output for
    all runners, including qemu. (LP: #1320194)
  * Drop obsolete downtmp-shared-fifo capability from all runners.
  * Fix "Operation not permitted" errors on cleaning up empty stdout/err
    result files with shared downtmp runners.
  * adt-buildvm-ubuntu-cloud: Refine init.d script to only launch a shell on
    "start".
  * adt-build-lxc: Add optional third argument for specifying a non-native
    architecture.

 -- Martin Pitt <mpitt@debian.org>  Thu, 22 May 2014 15:52:36 +0200

autopkgtest (2.16.2) unstable; urgency=medium

  * Support ":native" dependencies.
  * Add LXC runner test case for running as different user.
  * Add QEMU runner test case for performance and integrity of copying (1000
    files with 100 kB each).
  * copyup/down: Clean up cp process on timeout, to fix eternal hang.
  * adt-virt-qemu: Disable shared downtmp. For bigger source trees 9p in
    current QEMU is way too slow (in the magnitude of 2 MB/s, and max'ing out
    CPU usage), so we can't use it directly as a normal file system.
  * Revert "Don't extract/build source packages in shared downtmp", due to
    above change. This stops penalizing other runners with extra source tree
    copies.
  * VirtSubproc: Clean up auxverb processes on timeout.
  * adt-run: Stop testbed on TERM and QUIT signals, to avoid leaving stale
    schroot/qemu/LXC processes around when e. g. stopping a job from Jenkins.
  * adt-virt-qemu: Fix runcmd to make the command's stdin actually look and
    behave like a pipe, instead of reading directly from the "stdin" file. The
    latter leads to commands exiting prematurely when hitting the file's EOF.
    (LP: #1317358)
  * Convert one of the QEMU tests from source tree to dsc, to cover that case
    as well.
  * Add test case for QEMU with --apt-source (using libpng).
  * adt-virt-qemu: Create eofcat in /bin instead of the shared /autopkgtest
    mount, as running it from the latter again triggers the "invalid numerical
    value" bug with 9p from older QEMU versions.
  * adt-buildvm-ubuntu-cloud: Purge some unnecessary services to speed up boot
    time a bit.
  * @builddeps@ now includes build-essential, not just make. (LP: #1317357)
  * Make -s/--shell-fail start a shell on failed builds as well.
    (LP: #1317055)

 -- Martin Pitt <mpitt@debian.org>  Fri, 09 May 2014 10:32:27 +0200

autopkgtest (2.16.1) unstable; urgency=medium

  * adt-buildvm-ubuntu-cloud: Configure vmalloc=512M on i386 for the udisks2
    autopkgtest.
  * adt-buildvm-ubuntu-cloud: Disable downloading of package translations.
  * Create testpkg-version and testbed-packages before starting the builds, to
    also have them when builds fail.
  * Fix VirtSubproc.copyup_shareddir() for testbed paths which are not already
    in the shared downtmp.
  * When cleaning up a temporary testbed path fails with a permission error,
    clean it in the testbed (where we usually have root privileges). This
    avoids lots of "ignored OSError" spam with the schroot runner.
  * Stop assuming that we can chown files in the shared downtmp, it's not true
    with QEMU's 9p file system. Fall back to chmod'ing to world-writable files
    as with 9p there is no other way to implement this.
  * Simplify source tree/package extraction logic.
  * adt-run: Don't extract/build source packages in shared downtmp, to avoid
    permission/ownership problems with limited implementations like 9p.
  * adt-virt-qemu: Re-enable shared downtmp, now that operation with different
    UIDs is fixed.
  * Don't create $ADTTMP in shared downtmp to avoid permission/ownership
    problems with limited implementations like 9p.
  * adt-virt-qemu: Fix exception if workdir is not currently set.
  * adt-virt-qemu: Increase timeout for login prompt from 2 to 5 minutes, for
    slow VMs or machines under heavy load.
  * Improve error handling on copy timeouts.
  * adt-virt-qemu: Remove overlay file as early as possible, to avoid leaking
    large files in error conditions. Let QEMU run with the deleted inode.
  * Don't run apt-get and setup commands with sending output to /dev/stdout.
    When redirecting adt-run's output directly into a file this causes a
    seek to start and thus partially overwriting the output file. This also
    puts the apt-get output back to stdout as it used to be before 2.15.
    (Closes: #747041)

 -- Martin Pitt <mpitt@debian.org>  Tue, 06 May 2014 13:25:21 +0200

autopkgtest (2.16) unstable; urgency=medium

  * adt-buildvm-ubuntu-cloud: Use "-monitor null" instead of "-monitor none",
    as the latter does not work with older Qemu versions.
  * adt-virt-qemu: Don't call qemu-img with -q option, it doesn't exist in
    older Qemu versions yet. Redirect stdout instead.
  * tools/adt-setup-vm: Disable downloading of package translations to save
    some bandwidth. Thanks Jean-Baptiste Lallement.
  * adt-virt-qemu: Fix race condition that caused a ValueError when the exit
    code file was not written yet.
  * adt-virt-qemu: Automatically detect a normal user to run tests as, unless
    -u is given. This works similarly to -lxc.
  * Add tests for adt-virt-user with non-default users.
  * adt-virt-qemu: Disable shared downtmp for now, it breaks on older Qemu
    versions and the current setup does not work with different UIDs in the
    testbed.
  * adt-virt-qemu: Use file locks for host-side ssh port forwards to avoid
    race condition.
  * adt-run: Drop usage of dh_listpackages, it needs debhelper which is an
    undeclared (and also unwanted) dependency. Parse debian/control directly
    and make use of our existing arch tag resolution. (LP: #1312276)
  * adt-virt-qemu: Copy host's timezone into VM to avoid time zone skew when
    copying files.
  * adt-virt-qemu: Show determined normal user instead of <user> in ssh
    message, to get a fully copy&pasteable command.
  * adt-virt-qemu: Ensure tests which run as root have $HOME set.
  * Fix --proposed option to also apply to sources.list.d/* lists and to
    multiple sources. (LP: #1313278)
  * adt-buildvm-ubuntu-cloud: Install haveged, to avoid failing tests due to
    running out of entropy.
  * adt-virt-qemu: Add --qemu-options for passing additional options to QEMU.
    Thanks Diogo Matsubara!

 -- Martin Pitt <mpitt@debian.org>  Sun, 27 Apr 2014 22:37:15 +0200

autopkgtest (2.15) unstable; urgency=medium

  * Fix --apt-source mode to download the source with apt-get's
    "--only-source" option, to actually get what we asked for.
  * Add missing python3 build dependency for tests/adt-run. Fixes FTBFS of
    backports.
  * adt-buildvm-ubuntu-cloud: Add options to pass custom metadata/userdata.
    Thanks Diogo Matsubara.
  * Replace pbuilder-satisfydepends-classic with parsing and satisfying build
    and test dependencies with libdpkg-perl and "apt-get -f install". This
    gets rid of the pbuilder dependency and some nasty hacks like the
    --internal-chrootexec script, and allows us to be more flexible such as
    also supporting Recommends: installation.  (LP: #1205110)
  * Fix "specifiy" typo in error message. Thanks Jelmer Vernooij.
    (Closes: #745413)
  * adt-build-lxc: Stop using the -F template option to flush the cache as it
    is not available in the debian template. Remove caches manually instead.
    (Closes: #745415)
  * adt-buildvm-ubuntu-cloud: Fall back to latest stable if there is no
    development series.
  * Add "needs-recommends" restriction for installation of recommended
    packages for the test dependencies. This does not affect build
    dependencies. (Closes: #708963)

 -- Martin Pitt <mpitt@debian.org>  Tue, 22 Apr 2014 09:10:40 +0200

autopkgtest (2.14.1) unstable; urgency=medium

  * tools/adt-buildvm-ubuntu-cloud: Enable ssh login with passwords.

 -- Martin Pitt <mpitt@debian.org>  Wed, 09 Apr 2014 17:15:29 +0200

autopkgtest (2.14) unstable; urgency=medium

  * lxc: Greatly simplify bind mounting of shared tmp dir using the
    lxc-start -s option.
  * adt-virt-qemu: Forward VM's ssh port 22 to the first free localhost port
    starting from 10022. When finding one, suggest connecting to the VM with
    an appropriate ssh command on --shell.

 -- Martin Pitt <mpitt@debian.org>  Wed, 09 Apr 2014 17:06:44 +0200

autopkgtest (2.13.1) unstable; urgency=medium

  * Fix "--build-tree" typo in error message, and also add the missing
    --unbuilt-tree. (Closes: #743427)
  * lxc: Enable live output in clone mode.

 -- Martin Pitt <mpitt@debian.org>  Tue, 08 Apr 2014 12:18:00 +0200

autopkgtest (2.13) unstable; urgency=medium

  * Split package/version list that got introduced in 2.10: Introduce a new
    output file "testbed-packages" with the packages and versions of the
    pristine testbed, and filter them out of "<testname>-packages", so that
    the latter only contains the packages and versions that are specific to
    that test. This is generally more useful, and how debci does/wants it.

 -- Martin Pitt <mpitt@debian.org>  Tue, 01 Apr 2014 14:43:12 +0100

autopkgtest (2.12) unstable; urgency=medium

  [ Martin Pitt ]
  New features:
  * Add new options -s/--shell-fail for running a shell in the testbed after
    every failed test, and --shell for running a shell in the testbed after
    every test. This should make debugging tests or regressions quite a bit
    simpler. This actually spawns a shell for the null, chroot, schroot, and
    lxc runners, and shows how to login to the VM for qemu (this will
    hopefully be improved in the future, but at least makes debugging possible
    for now).

  Bug fixes:
  * adt-build-lxc: Fix apt proxy setting for ubuntu template; use $HTTP_PROXY,
    not $APT_PROXY.
  * Make PEP-8 failures non-fatal during package build. They often fail in
    backports to old releases, and running them before releasing a new package
    is sufficient.
  * Filter out comment lines from control lines, as python-debian doesn't
    properly do that (Debian #743174). Fixes lintian autopkgtest.
    (LP: #1300031)

  [ Antonio Terceiro ]
  * adt-virt-schroot: Add new option -s/--session-id for specifying a custom
    schroot session id. This is useful for debugging test suites that go crazy
    on ci.debian.net, so you can `schroot --list --all-sessions` and see which
    sessions are still open. (Closes: #742969)

 -- Martin Pitt <mpitt@debian.org>  Mon, 31 Mar 2014 11:45:13 +0200

autopkgtest (2.11) unstable; urgency=medium

  * Add tools/adt-setup-vm: Setup script for vmdebootstrap (and potentially
    others) to start a root shell on tty1, set up networking for eth0, and
    enable deb-src apt sources.
  * adt-virt-qemu.1: Describe how to create a suitable Debian VM with
    vmdebootstrap.
  * doc/README.package-tests: Point out to use "build-needed" with
    consideration.
  * Make installation of packages/dependencies print a warning instead of
    failing immediately when root is not available on the testbed. This allows
    tests to be run with the "null" runner locally as user with some
    restrictions. Check if dpkg-source is available before installing
    dpkg-dev, to avoid the warning in that simple case. (Closes: #742242)
  * Fix ugly error message if a package does not have a debian/tests/
    directory. Properly fail with code 8 and "SKIP no tests in this package".
  * Clean up temporary files in NullRunner tests.

 -- Martin Pitt <mpitt@debian.org>  Fri, 21 Mar 2014 09:36:25 +0100

autopkgtest (2.10) unstable; urgency=medium

  * Record name and version of tested package in log and in
    output-dir/testpkg-version. (first part of LP #1292431)
  * Record installed packages and their versions for each test, in
    <output-dir>/<test>-packages. (second half of LP: #1292431)
  * Drop adt-testreport-*, adt-openbugs-*: These have been marked deprecated
    for a while, haven't been used or maintained in many years, and are
    superseded by jenkins/debci. (Closes: #695974)

 -- Martin Pitt <mpitt@debian.org>  Tue, 18 Mar 2014 16:12:24 +0100

autopkgtest (2.9.2) unstable; urgency=medium

  * VirtSubproc.py, copydown_shareddir(): Fix "src and dest are the same file"
    error when file is already in the shared downtmp.
  * VirtSubproc.py, copydown_shareddir(): Remove already existing target
    directory to avoid copying an updated directory into the old one.
  * adt-run: Show timestamps at the beginning, start of preparation (i. e.
    mostly installing dependencies), and start and end of tests.
    (LP: #1290760)
  * Run NullRunnerNoRoot tests during package build. Add python-debian build
    dependency for that.

 -- Martin Pitt <mpitt@debian.org>  Wed, 12 Mar 2014 08:13:50 +0100

autopkgtest (2.9.1) unstable; urgency=medium

  [ Martin Pitt ]
  * doc/README.package-tests: Clarify syntax of test Depends:, and point to
    the relevant Debian Policy specification.
  * adt-build-lxc: Fall back to assuming /var/lib/lxc/ as container directory
    if lxc-config does not exist. It was introduced in 1.0, but Debian
    unstable still has 0.9. (Closes: #740437)
  * tests: Extend test_artifacts() to multiple tests writing artifacts, also
    with overwriting existing files and writing into subdirs.
  * VirtSubproc: Fix copyup_shareddir() to get along with existing
    directories. (LP: #1288668)
  * settings.make: Switch default prefix to /usr, as our scripts hardcode that
    for finding VirtSubproc.py and this is a native package. (LP: #1287264)

  [ Steve Langasek ]
  * Fix adt-virt-schroot to correctly return root-on-testbed when we're
    running adt-run as root. (Closes: #740868)

 -- Martin Pitt <mpitt@debian.org>  Thu, 06 Mar 2014 13:44:07 +0100

autopkgtest (2.9) unstable; urgency=low

  New features:
  * Add "downtmp-host=<path>" testbed capability, for runners which can set up
    a shared directory between host and testbed. This is used by copyupdown to
    more efficiently copy files back and forth, and in many/most cases, don't
    explicitly copy anything at all.
  * Introduce a new testbed capability "downtmp-shared-fifo" that declares
    that testbed and the host can use a FIFO in the shared downtmp for
    communication. Use this to generalize live test output to all runners
    which declare that, not just -null.
  * Convert null, chroot, schroot, lxc, and qemu runners to use a shared
    downtmp dir. Note that qemu does not support FIFO (through the 9p file
    system), so that one does not get live test output.
  * Don't define $TMPDIR for tests any more. Having $TMPDIR in the shared dir
    isn't efficient and even breaks some tests (as they might not be able to
    put sockets etc. into it), and it's an artificial difference to the
    default system behaviour of just using /tmp. The documentation already was
    changed a long time ago to only document $ADTTMP as a scratch directory
    for tests.
  * Add test restrictions "isolation-container" and "isolation-machine", and
    corresponding testbed capabilities. Tests can use that to declare that
    they want to start services or open ports (i. e. a simple chroot/schroot
    is insufficient) or access hardware, reboot,  and interact the kernel
    (where even a container is insufficient), and will be skipped instead of
    failing when they run in a virtualization server which does not provide
    enough isolation.
  * Add manpage for adt-build-lxc script.
  * Ship adt-build-lxc script and its manpage in the package.

  Documentation updates:
  * doc/README.package-tests: Some stylistic updates, and add section headers.
  * adt-virt-lxc.1: Point to, and show how to use adt-build-lxc.
  * Add doc/README.running-tests: Overview of how to run adt-run, most common
    scenarios, and available virtualization servers with their pros/cons.

  Bug fixes:
  * tests: Copy tests/home/ into a temporary dir and set $HOME to that, to
    avoid cluttering the source dir.
  * Don't produce empty stderr/stdout files with --output-dir. (LP: #1282866)
  * adt-buildvm-ubuntu-cloud: Install linux-generic, to get the full kernel
    (needed for e. g. udisks2 to get scsi_debug).
  * tests: Add a broken symlink to testpkg, to ensure that copying trees
    around gets along with those.
  * adt-run: Always use fakeroot with adt-virt-qemu, to work around chown
    failing on 9p.
  * xen/initscript: Always source /lib/lsb/init-functions. (Thanks lintian)
  * tests/adt-run: Increase timeout in NullRunner.test_timeout_long_build to
    avoid failure on slow architectures.
  * adt-build-lxc: Properly wait for finished container boot instead of a
    static 10 second sleep.
  * adt-build-lxc: Only flush the cache when updating an existing container.

 -- Martin Pitt <mpitt@debian.org>  Thu, 27 Feb 2014 11:23:32 +0100

autopkgtest (2.8.1) unstable; urgency=medium

  * Use the install timeout instead of the short one for
    --setup-commands/--apt-upgrade.
  * Fix --apt-upgrade to not hang on dpkg conffile prompts.
  * Use ./tests/home/ as $HOME during tests, and add a gpg key to it so that
    we don't have to generate one (which often hangs due to lack of entropy).
  * Make the test suite run as user, skip tests which require root (all
    ChrootRunner and most NullRunner tests).

 -- Martin Pitt <mpitt@debian.org>  Fri, 21 Feb 2014 17:15:41 -0800

autopkgtest (2.8) unstable; urgency=medium

  * Add adt-virt-qemu: Virtualization server using QEMU. This provides even
    more isolation than containers and thus is able to run tests which
    interact with the kernel. See the manpage for the requirements that VMs
    need to satisfy, and how to use it. (Closes: #719215)
  * Add adt-buildvm-ubuntu-cloud: This tool downloads an Ubuntu cloud image
    and configures it for autopkgtest. See its manpage for how to use it.
  * adt-run: Stop using a $TMPDIR for package builds. It's unnecessary
    overhead, and causes problems with dpkg-deb if it is on e. g. a 9p file
    system.
  * Allow the virt-server argument to be given without the common "adt-virt-"
    prefix, for brevity. Update the manpage accordingly, and also move
    virt-server into its own heading instead of burying it in the middle of
    "other options".
  * tests: Show stderr output if adt-run unexpectedly fails.
  * Fix endless recursion when an error happens during resetting apt.
  * tests: Fix skip message if no container is given; it does not need to be
    an Ubuntu cloud container any more.
  * Add tools/adt-build-lxc: Script to create or upgrade a Debian/Ubuntu
    container, suitable as a daily cron (or Jenkins) job. Not shipped in
    package for now.
  * Allow --setup-commands to be given multiple times.
  * Add -U/--apt-upgrade option to run apt-get update/dist-upgrade before
    running the test.
  * Add --apt-pocket <pocket> option to create an additional apt source for
    release-pocket.

 -- Martin Pitt <mpitt@debian.org>  Mon, 17 Feb 2014 21:00:58 -0800

autopkgtest (2.7.2) unstable; urgency=medium

  * debian/copyright, CREDITS: Bump copyright year.
  * Eliminate lib/Autopkgtest.py, use pipes.quote() instead of shellquote_*().
  * Drop doc/README.schroot-setup. Using LVM for schroot overlays is not
    recommended as it is too slow and also too hard to set up. You should
    rather use overlays or unpacked tarballs on tmpfs. Adjust
    adt-virt-schroot.1 to point to mk-sbuild(1) instead.
  * CREDITS: Remove license information, it does not belong there and we don't
    need that any more as debian/copyright file.
  * adt-testreport-*, adt-openbugs-*: Add warning that these scripts are
    unmaintained and deprecated in favour of http://ci.debian.net, debci,
    and/or jenkins. If you still use them, please mail
    autopkgtest-devel@lists.alioth.debian.org!
  * README.package-tests: Document that @builddeps@ also installs make.
    (Closes: #738129)
  * Add Suggests: for schroot and lxc, and explain those in the package
    description.
  * NullRunner.test_timeout_long_test: Increase (unrelated) build timeout from
    3 to 20 s, to cope with the bit of overhead that dpkg-buildpackage
    introduced.

 -- Martin Pitt <mpitt@debian.org>  Sun, 09 Feb 2014 19:31:34 +0100

autopkgtest (2.7.1) unstable; urgency=medium

  * VirtSubproc.py, command(): Intercept/retry on EAGAIN.
  * runner/adt-run: Robustify cleanup of empty "binaries" output directory, it
    does not always work in __del__().
  * adt-run: Replace direct invocation of "debian/rules build" with
    "dpkg-buildpackage -us -uc -b". dpkg-buildpackage is the de-facto
    interface these days (also on the buildds), and does additional things now
    such as passing build flags or cleaning the package. This also implies
    dpkg-source --before build to apply patches, so remove the explicit call
    to that again. (Closes: #737632)
  * adt-run: If all tests get skipped, but there are some tests, don't claim
    that there are none. (Closes: #737242)
  * adt-run: When expanding @builddeps@, add "make" as test almost always need
    it to call "make installcheck" or similar.
  * Print package version as first adt-run message ("@devel@" when running out
    of source tree).
  * Turn VirtSubproc.Timeout into a proper exception class (RuntimeError).
  * Make VirtSubproc.bomb() useful outside the mainloop, so that we can
    use it in utility functions that are used outside of runners.
  * VirtSubproc: Add a "timeout" context manager which plumbs timeout_start(),
    timeout_end() and bomb() (if an exit message is given) or a Timeout
    exception (otherwise) together in the right way, for convenience.

 -- Martin Pitt <mpitt@debian.org>  Fri, 07 Feb 2014 14:52:42 +0100

autopkgtest (2.7) unstable; urgency=medium

  * adt-virt-lxc: Drop all the file-based checks for container bootup, and
    replace with "lxc-attach runlevel" to wait until the container booted to a
    numeric runlevel. This greatly simplifies the logic and drops the
    cloud-init requirement so that this runner is now suitable for Debian or
    debootstrap-based Ubuntu containers. (LP: #1273725)
  * adt-virt-lxc.1: Drop --gain-root in notes/example. It's unnecessary
    (adt-run will install fakeroot if missing) and confusing (as it's not
    related to LXC specifically and otherwise not really used/useful).
  * adt-virt-lxc.1: Add example how to create a Debian container, and some
    cleanup of obsolete commentary.
  * adt-virt-lxc: Add -s/--sudo option to run lxc-* commands through sudo; use
    this option if you run adt-run as normal user, but need to run the
    container itself as root (if you use LXC system-level containers).
    This drops the hardcoded sudo commands and thus the dependency on sudo,
    which is more palatable for Debian. (LP: #1273977)
  * adt-virt-lxc: Add -e shortcut for --ephemeral, as this is an option which
    you pretty much always want.
  * adt-virt-lxc.1: Move more important options to the top.
  * adt-virt-lxc: Stop hardcoding the "ubuntu" suggested normal user; instead,
    call "getent passwd" to detect the first user with uid >= 500. Don't
    advertise suggested-normal-user if none exists.
  * adt-run: Rearrange finalizing options and reading capabilities to happen
    after testbed opening. That allows the testbed to determine its full
    capablities in its open hook.
  * adt-run: Call dpkg-source --before-build for --unbuilt-tree arguments, to
    ensure that patches are applied for "3.0 (quilt)" source trees. This is
    useful to test *-buildpackage source trees where patches don't get
    applied. (LP: #1212208)

 -- Martin Pitt <mpitt@debian.org>  Fri, 31 Jan 2014 11:14:32 +0100

autopkgtest (2.6.1) unstable; urgency=medium

  * adt-virt-lxc: Call lxc-config through sudo as well like all the other LXC
    commands. This fixes running adt-run as user with the LXC runner.
  * adt-run: For copydown(), always chown the testbed files to the non-root
    user (if available). This fixes a "Permission denied" error with the
    schroot or LXC runners and --unbuilt-tree if the source tree has tight
    permissions. (LP: #1266811)
  * Adjust LxcRunner.test_tree_built_binaries to also work with current apt
    (similar to commit 5798b7f for the schroot runner).
  * adt-virt-lxc: Call "sudo test" and "sudo readlink" instead of os.lexists()
    and os.readlink() as recent LXC now makes the default container dir
    /var/lib/lxc not readably by non-users. Fixes running adt-virt-lxc/adt-run
    as user. (LP: #1266809)
  * Add test for --binary with --built-tree.
  * adt-run.1: Clarify and fix some wrong and misleading documentation what
    happens with debs produced by source packages and specified with --binary.
    (LP: #1175557)

 -- Martin Pitt <mpitt@debian.org>  Wed, 29 Jan 2014 06:53:16 +0100

autopkgtest (2.6) unstable; urgency=medium

  New features:
  * Add --apt-source option as an alternative for --source, implied if
    argument is a valid package name. It calls "apt-get source" in the testbed
    instead of using a .dsc from the host, which for the common case of
    testing packages in the acual archive avoids having to manually download
    the source and then copying it into the testbed. This simplifies the
    command line for running tests for a package in the archive to
    "adt-run mypkgname --- adt-virt-[...]".
  * Add --setup-commands option to run things like "apt-get update" or adding
    apt sources after opening the testbed.

  Bug fixes:
  * adt-virt-lxc: Stop assuming that containers live in /var/lib/lxc/; ask
    lxc-config about the root path instead.
  * Only reset the test bed after the build stage if builds actually happened.
  * Reset the test bed after running a test group, to avoid an unnecessary
    setup if there is just one test.
  * Don't put an empty "binaries" directory into the output directory.

  New test cases:
  * --timeout handling.

 -- Martin Pitt <mpitt@debian.org>  Thu, 23 Jan 2014 17:19:11 +0100

autopkgtest (2.5.6) unstable; urgency=medium

  * Adjust "su" calls to explicitly specify /bin/sh as shell, as recent
    base-passwd disables them now for system users. (Closes: #734740)

 -- Martin Pitt <mpitt@debian.org>  Thu, 09 Jan 2014 15:21:44 +0100

autopkgtest (2.5.5) unstable; urgency=medium

  * Test that the schroot runner installs packages with --user, and that it
    runs the tests as root with --user if the test has a "needs-root"
    restriction. (Related to #728304)
  * adt-virt-schroot: Add suggested-normal-user capability to the calling user
    (unless that's root), so that tests are run as user by default.
    (Closes: #728304)
  * Add support for virtual "@builddeps@" test dependency, which will be
    replaced with the package's B-D and B-D-I. Document in
    doc/README.package-tests. (Closes: #720458)

 -- Martin Pitt <mpitt@debian.org>  Wed, 25 Dec 2013 21:12:38 +0100

autopkgtest (2.5.4) unstable; urgency=medium

  * Only clean up binary if we built them ourselves. adt-run previously
    removed debs specified with --binary.

 -- Martin Pitt <mpitt@debian.org>  Thu, 19 Dec 2013 16:18:03 +0100

autopkgtest (2.5.3) unstable; urgency=low

  * Drop hosts/ and {onepackage,ubuntu}-config example files; these scripts
    haven't been used nor maintained in years, and we won't need them anytime
    soon. Ubuntu does, and Debian plans to drive autopkgtest from britney
    and/or Jenkins, not from cron.
  * Move adt-testreport-* scripts and manpages into autopkgtest-xenlvm
    package, as they require the xen runner.
  * tests/run-parallel: Immediately stop on pep8/pyflakes errors.
  * Adjust SchrootRunner.test_tree_built_binaries test to also work with
    current apt.
  * Always write UTF-8 to stdout and summary stream, to avoid
    UnicodeEncodeError crash when running in a C locale. (LP: #1259529)
  * tests/pyflakes: Always use pyflakes, not pyflakes3, as the latter doesn't
    get along with non-ASCII strings when running under a non-UTF-8 locale (as
    in sbuild).

 -- Martin Pitt <mpitt@debian.org>  Wed, 11 Dec 2013 08:45:07 +0100

autopkgtest (2.5.2) unstable; urgency=low

  * virt-subproc/adt-virt-lxc: Fix PEP-8 error.
  * Explicitly kill the logging tee processes, for backwards compatibility
    with Python 2.6.
  * Avoid assertNotRegex() in test suite as it isn't yet available in Python
    3.1.
  * Skip dependency version check instead of crashing if python-debian does
    not provide NativeVersion() (for wheezy/lucid).
  * Fix some minor PEP-8 errors.

 -- Martin Pitt <mpitt@debian.org>  Fri, 29 Nov 2013 18:07:09 +0100

autopkgtest (2.5.1) unstable; urgency=low

  * adt-virt-lxc: Drop some dead code.
  * Fix ownership of test tree with --user option.

 -- Martin Pitt <mpitt@debian.org>  Tue, 26 Nov 2013 10:43:30 +0100

autopkgtest (2.5) unstable; urgency=low

  Behaviour changes:
  * Drop --output-dir option. It has never really been useful as it only works
    for paths in the testbed, has a confusing semantics, is redundant with
    --tmp-dir, and currently even crashes adt-run. (Closes: #729790)
  * Rename --tmp-dir option to --output-dir, as its main purpose is really to
    collect test artifacts. Keep --tmp-dir alias for backwards compatibility.
  * Drop --override-control option. It complicates the code too much for its
    very limited utility, and it was not even documented in the manpage.
  * Drop --paths-testbed (and thus also --paths-host) options. There is no
    use case for them.
  * Add short options for common command line options: -B for
    --no-built-binaries, -o for --output-dir, -l for --log-file,
    -u for --user.
  * Clean up uninteresting files from --output-dir directory.
  * Tests which want to create additional artifacts can now put them into the
    $ADT_ARTIFACTS directory. When using the --output-dir option, they will be
    copied into <outputdir>/artifacts/. Document this new feature in
    README.package-tests. (LP: #1137763)

  Packaging changes:
  * Drop obsolete autodebtest Conflicts/Replaces.
  * Update copyright years.
  * Bump Standards-Version to 3.9.5. No changes necessary.
  * CREDITS: Add myself.
  * Makefile: Support $DESTDIR, like automake.
  * Adjust sharedir* defaults in settings.make to what we actually want, and
    drop their overrides in debian/rules
  * Move debian/rules to using dh.
  * Add ./run-from-checkout script to run adt-run from the git checkout or
    source package. Change tests/adt-run to use it.
  * Add tests/run-parallel to run tests for different runners in parallel.

  Bug fixes:
  * Fix OSError crash if --output-dir/--tmp-dir does not exist.
    (Closes: #729791)
  * Pass line number to Test constructor argument, to be able to report proper
    errors instead of crashing. (side issue in #698551)
  * Fix exit code for "Unsupported" error.
  * When encountering an unsupported test, report only this test as skipped,
    not all the others in the same "Tests:" stanza.
  * README.package-tests: Test names must not contain '/'. (Closes: #698551)
  * Create manpage for adt-virt-schroot. (first half of #695974)
  * Fix "su: must be run from a terminal" failure when running as user and
    testbed doesn't provide root-on-testbed. (Closes: #648148)
  * Add bandaid to avoid mixing order of stdout and stderr in the log file
    when reporting results.

  Code cleanup:
  * Simplify logging by dropping the explicit functions for writing to stderr
    plus log, and instead set up pipes so that the whole stdout/stderr will be
    tee'd into the logfile.
  * Replace the usage of the AutoFile classes (which are underdocumented,
    magic, and hard to understand) with a more explicit and much simpler
    TestbedPath class.
  * Stop installing the redundant /etc/apt/apt.conf.d/90autopkgtest into
    testbeds, and simplify invocation of apt-get.

  New test cases:
  * Access /dev/std{out,err} in a non-root test, like the "mafft" autopkgtest
    does.
  * --log-file test cases for chroot and schroot runners.
  * schroot and LXC runner test cases for installing built binaries.
  * --output-dir in schroot runner with complete package build.
  * Recommends do not get installed by default.
  * Test case with '/' in the name.
  * --user option for schroot and null runners.
  * breaks-testbed restriction for all runners.

 -- Martin Pitt <mpitt@debian.org>  Mon, 25 Nov 2013 07:31:22 +0100

autopkgtest (2.4) unstable; urgency=low

  * Add adt-virt-lxc test runner, many thanks to Robie Basak for this! This
    runner provides "revert" and "revert-full-system" capabilities which is
    useful for packages which have the "breaks-testbed" restriction and
    multiple tests. For the time being this only works with the ubuntu-cloud
    template; support for general debian/ubuntu containers requires an
    lxc-wait mechanism ("did the container finish booting?") and getting along
    with the different user setups (debian using "root",  ubuntu using an
    "ubuntu" user with sudo capabilities).
  * Add tests for adt-virt-lxc.
  * Code cleanup to slightly improve readability:
    - Drop two-letter aliases for methods.
    - Consistent usage of quotes.
    - Drop orphaned/unnecessary globals.
    - Consistent logging methods/object names, add some docstrings.
  * Install fakeroot into testbed for "build-needed". Thanks Jean-Baptiste
    Lallement! (Closes: #726714, LP: #1241456)
  * Create testtmp directory with 0755 permissions to fix failure with tight
    umasks. Thanks Arthur de Jong! (Closes: #728057)
  * Allow test control Depends: to have a trailing comma. Thanks Jean-Baptiste
    Lallement for the patch!
  * Make test stdout re-appear in --log-file file for realtime output.

 -- Martin Pitt <mpitt@debian.org>  Mon, 28 Oct 2013 11:25:30 +0100

autopkgtest (2.3.8) unstable; urgency=low

  * Skip ChrootRunner test if running under cowdancer, as chrooting in
    cowdancer doesn't work.
  * Fix endless bomb/stop loop if the virt runner fails and exits
    unexpectedly.
  * adt-virt-schroot: Add some debugging output of the schroot config.
  * Fix OSError crash with real-time output when running adt-run as non-root
    on the host, and the runner bind-mounts /tmp (such as -schroot), in which
    case the temporary runner dir isn't accessible to the host. This is a
    quickfix, eventually we should make real-time output work properly in this
    situation.
  * Show stderr also for non-zero exit codes.
  * Restrict live stdout/stderr to the null virt runner for now, as it does
    not work properly with the schroot runner even if /tmp gets bind-mounted.
  * Add tests for the schroot runner. Ad building a schroot would be too
    expensive for a test, use an existing schroot if $ADT_TEST_SCHROOT is set,
    otherwise skip the tests.
  * Show stderr for all non-null runners with "allow-stderr".

 -- Martin Pitt <mpitt@debian.org>  Wed, 16 Oct 2013 14:55:39 +0200

autopkgtest (2.3.7) unstable; urgency=low

  * tests/adt-run: Factorize a base test class with common functionality.
  * lib/VirtSubproc.py, downtmp_mktemp(): Create temporary directory in the
    target (which isn't the host for anything but the null runner), to fix the
    schroot/chroot runners for directories.
  * Only show stdout/stderr in realtime if tests run in the same file system
    as the host, as otherwise we cannot create/use a named pipe. If not, fall
    back to the old way of just showing the complete stdout/stderr after the
    tests finished. (LP: #1235189)
  * Add some test cases for adt-virt-chroot.
  * Add new --timeout-copy option to make copy timeout configurable. Pass that
    down to adt-virt-* via the environment ($ADT_VIRT_COPY_TIMEOUT).
    (LP: #1200693)
  * Fix tests to also work with Python 3.1.
  * tests/testpkg: Go back to compat level 7 so that this also works on older
    Debian/Ubuntu releases.

 -- Martin Pitt <mpitt@debian.org>  Tue, 08 Oct 2013 18:55:33 +0200

autopkgtest (2.3.6) unstable; urgency=low

  * Always kill the tee children after a test finishes, to avoid race
    condition when they get stuck in a read() call which doesn't return with
    "no data".
  * Fix pyflakes failure on older Debian/Ubuntu releases.
  * Fix PEP-8 errors.

 -- Martin Pitt <mpitt@debian.org>  Thu, 26 Sep 2013 13:12:11 +0200

autopkgtest (2.3.5) unstable; urgency=low

  * Don't show source_rules_command() "set -x" trace unless running with -d.
  * Kill the tee child process if the testbed bombs out (e. g. due to a
    timeout), to avoid hanging eternally. Add test case for --timeout-test
    handling.
  * Add test case for --summary option.

 -- Martin Pitt <mpitt@debian.org>  Wed, 25 Sep 2013 08:51:21 +0200

autopkgtest (2.3.4) unstable; urgency=low

  * Add tests/testpkg/: Simple source package for testing autopkgtest.
  * Add tests/adt-run: Automatic regression tests for adt-run, covering/using
    the null runner.
  * Add debian/tests: autopkgtest for autopkgtest, using tests/adt-run.
  * Make topmost temporary directory group/world-readable and make $ADTTMP
    have appropriate 1777 permissions so that users other than root can
    actually use it. (Closes: #722458)
  * Don't clip first stderr line to 35 characters in summary. (Side issue in
    #722457)
  * Don't show shell tracing of script that creates the temporary directories.
  * Move unimportant messages to debug level 1, to not clutter up default
    output so much.
  * Drop unnecessary "trace: " from adt-run debug/progress lines.
  * Show stdout/err of the running tests in realtime, which is much nicer for
    watching. Don't split that realtime output, so that stderr messages appear
    in the right context. Show separate stderr if and only if the allow-stderr
    restriction is not set and there is stderr output. (Closes: #722457)
  * For tests with "build-needed", actually run the tests in the built
    directory, not in the original unbuilt tree. (Closes: #711209)
  * Fix various unknown and unused symbols throughout the source, spotted by
    pyflakes.
  * Add tests/pyflakes: Run pyflakes over source and test code.
  * Add tests/pep8: Run pep8 over source and test code.
  * Support empty "Depends:" test control field, installing no dependencies in
    that case.
  * README.package-tests: Point out that you can use upper-case test names as
    well. Update test_tree_tmp_dir() test to use these, to ensure it stays
    working. (Closes: #711844)
  * Some code cleanups:
    - Don't rename modules on import.
    - Format to be PEP-8 compliant.
    - Rename first argument of methods to "self", as that's the wide
      convention, gets rid of some single-letter variable names, and makes it
      a bit easier to see which variables refer to foreign objects.
  * Run tests/pep8 and tests/pyflakes during package build.

 -- Martin Pitt <mpitt@debian.org>  Mon, 23 Sep 2013 14:44:13 +0200

autopkgtest (2.3.3) unstable; urgency=low

  * runner/adt-run: Drop "errors" keyword from decode() call to fix
    compatibility with earlier Python versions. Thanks Christoph Berg.
  * adt-run: Fail tests if they exit with nonzero if "allow-stderr"
    restriction is set. Thanks Robie Basak! (LP: #1210503)

 -- Martin Pitt <mpitt@debian.org>  Mon, 09 Sep 2013 15:49:52 -0400

autopkgtest (2.3.2) unstable; urgency=low

  * runner/adt-run: Fix "allow-stderr" restrictions to still report success,
    so that this gets into the summary.log.

 -- Martin Pitt <mpitt@debian.org>  Fri, 26 Jul 2013 12:41:07 +0200

autopkgtest (2.3.1) unstable; urgency=low

  * adt-run: Support older python-debian versions whose module was still
    called "debian_bundle". (Closes: #717191)
  * runner/adt-run: Correctly re-raise exception on some register failure
    errors. Thanks Robie Basak!
  * runner/adt-run: Short-circuit publishing if there are no registered built
    binaries. This is the step that takes by far the longest time for short
    tests, and thus speeds up test running significantly.
  * runner/adt-run: Set DEBIAN_FRONTEND=noninteractive for installing build or
    test dependencies, too. Thanks Robie Basak! (LP: #1204989)

 -- Martin Pitt <mpitt@debian.org>  Fri, 26 Jul 2013 08:02:35 +0200

autopkgtest (2.3) unstable; urgency=low

  * runner/adt-run.1: Fix bad "affect modify" wording. (LP: #1199500)
  * Drop hosts/chinstrap. We haven't actually used this in many years, it has
    been replaced with https://launchpad.net/auto-package-testing, Jenkins,
    and blocking migration to release until tests pass. (LP: #381210)
  * Promote apt-utils from Recommends to Depends:, to avoid test failures due
    to not finding apt-ftparchive. (LP: #1065874)
  * Promote pbuilder from Recommends: to Depends:, as we always call
    pbuilder-satisfydepends-classic. (LP: #1065874)
  * runner/adt-run: Stop explicitly checking for $HOME (with broken error
    message) when giving --gnupg-home, use os.path.expanduser() instead.
    (LP: #1065873)
  * runner/adt-run: Fix timeout --help output.
  * runner/adt-run: Fix bomb() to clean up the testbed before removing it.
    Afterwards (in cleanup()) we don't have a testbed object any more to run
    commands in. (LP: #1157292)
  * runner/adt-run: Fix UnicodeDecodeError crash if stderr contains non-ASCII
    characters. (LP: #1100283)
  * Add "allow-stderr" restriction for tests where re-routing or disabling
    stderr is impractical. (LP: #1197005)
  * runner-adt-run: Support architecture specifiers in Depends: field.
    (LP: #1165128)
  * runner/adt-run: Remove/fix some unused variables, spotted by pyflakes.

 -- Martin Pitt <mpitt@debian.org>  Fri, 19 Jul 2013 11:58:15 +0200

autopkgtest (2.2.5) unstable; urgency=low

  [ Jean-Baptiste Lallement ]
  * Fix call to atmostone(), so that Tests-Directory: actually works.

 -- Martin Pitt <mpitt@debian.org>  Thu, 11 Jul 2013 06:54:29 +0200

autopkgtest (2.2.4) unstable; urgency=low

  [Jean-Baptiste Lallement]
  * Fix failure with "permission denied" with option --user. Closes: #686292,
    LP: #1084116
  * Use debian.deb822 Python module to parse control files. This fixes parsing
    of folded dependencies. Closes: #695797, LP: #1073856
  * Support versioned dependencies in debian/tests/control.
    Closes: #693540, LP: #1164362

  [ Martin Pitt ]
  * Add myself as a co-maintainer, as per mailing list discussion.
  * Add machine-readable debian/copyright as per current 1.0 standard. Remove
    dynamic creation of debian/copyright from debian/rules.
  * Move from deprecated dh compat level 4 to 8 (supported in squeeze).
  * debian/rules: Use dh_installdocs to install copyright file instead of
    custom shell code.
  * debian/control: Add missing ${misc:Depends}.
  * Bump Standards-Version to 3.9.4.

 -- Martin Pitt <mpitt@debian.org>  Thu, 27 Jun 2013 13:49:25 +0200

autopkgtest (2.2.3+nmu1) unstable; urgency=medium

  * Non-maintainer upload.
  * adt-run: Catch EXDEV.  Closes: #696625.

 -- Christoph Berg <myon@debian.org>  Thu, 31 Jan 2013 10:31:56 +0100

autopkgtest (2.2.3) unstable; urgency=medium

  [ Martin Pitt ]
  * Make `@' in tests' Depends work even if we're not building the
    source tree.  Closes: #678359.  This is an important bugfix.

 -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 08 Jul 2012 23:15:42 +0100

autopkgtest (2.2.2) unstable; urgency=low

  [ Martin Pitt ]
  * Fix hashbang lines to use python instead of python2.6, and update
    debian/control to only depend on python (>= 2.6) instead of python2.6.
    Closes: #644332.

 -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 28 Jun 2012 01:03:02 +0100

autopkgtest (2.2.1) unstable; urgency=low

  [ Stefano Zacchiroli ]
  * specification: document (XS-)Testsuite source header
    Closes: #679097
  * debian/control: add Vcs-* headers pointing to Alioth Git repository

 -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Wed, 27 Jun 2012 21:36:56 +0100

autopkgtest (2.2.0) unstable; urgency=low

  * Provide tests with ADTTMP rather than TMPDIR.

    Well, actually, that's just according to the spec.  In reality, for
    backward compatibity, we provide each test script with both (pointing
    to different directories so that tests don't need to worry about
    possible filename clashes between ADTTMP and TMPDIR).

 -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 15 Jun 2012 02:05:54 +0100

autopkgtest (2.1.0) unstable; urgency=low

  Bugfixes:
  * Remove our strange apt config on exit.
    Partial fix to #648142, from Timo Lindfors.
  * Suppress apt-listbugs and apt-listchanges.  Michael Prokop.
  * Fix parsing of "@" dependencies.  Colin Watson.  Closes: #667022.
  * Fix NameError re "f" in restriction parsing.
    Martin Pitt.  Closes: #647882.
  * Improve handling of schroot root-users and root-groups.
    Colin Watson.  Closes: #667001.
  * Correctly handle quoting of copyup/copydown filenames.  Fixes
    but where we couldn't cope with packages' filenames containing
    + and ~.  Report from Martin Pitt.  Closes: #648161.

  Documentation fixes:
  * Clarify the spec to say that copyup/down takes encoded filenames.
  * Fix the spec to refer to `breaks-testbed' rather than `breaks-computer'.
    Report from Jakub Wilk.  Closes: #669721.
  * Manpage should refer to `*' in tests file's Depends field, not `@'.
    Report from Jakub Wilk.  Closes: #670648.

  Packaging fixes:
  * Add Recommends against pbuilder, whose dependency resolver adt-run
    uses.
  * Remove runner/tmp on debian/rules clean, and add it to .gitignore,
    for convenience.

 -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 11 Jun 2012 02:05:49 +0100

autopkgtest (2.0.1) unstable; urgency=medium

  * Bugfixes:
    - Python backtrace (no method "bomb") on bad tests/control syntax.
    - Permit tests/control fields with medial capital letters.
    - Do not duplicate previous stanzas (closes: #637333).
    - Make adt-run --quiet work (closes: #637350).
    - Make "build-needed" restriction work (closes: #637353).
    - Fix a debugging message which was spuriously sent to stderr.
  * Change Maintainer to the new list and move me to Uploaders.

 -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 27 Aug 2011 11:21:29 +0100

autopkgtest (2.0.0) unstable; urgency=medium

  * Incompatible test declaration spec changes:
     - no-build-needed is now the default; build-needed is a Restriction
       that tests which need it have to declare.
  * Incompatible virtualisation server spec changes:
     - print-execute-command replaced by print-{auxverb,shscript}-command.
     - "revert" capability split into "revert" and "revert-full-system"
  * New adt-virt-schroot for driving schroot.  Sorry, no manpage yet.
  * New README.schroot-setup.
  * Remove dependency on python in testbed.
  * Update python version to 2.6.
  * Spec wording improvements, clarifications, editorial changes, etc.
  * Many bugfixes, including:
    - replace Python string exceptions (closes:#585226).
    - fix some broken formatting in adt-run manpage (closes:#636034).
    - fix adt-virt-chroot for simple chroots (closes:#520066).

 -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 30 Jul 2011 17:57:27 +0100

autopkgtest (1.2.0~) unstable; urgency=low

  * adt-xenlvm-*: support for swap, defaulting to 5G.
    This will break existing setups with insufficient LVM space.
  * adt-xenlvm-*: allow specification of LVM PVs to use.
  * remove spurious mkdir of empty variable $snap.
  * hosts/magrathea/*: setup as working for initial tests.
  * adt-xenlvm-with-testbed: sleep 1 after xm destroy, which is racy.
  * Fix a few other bugs from deployment in 2008.

 -- Ian Jackson <ian@davenant.greenend.org.uk>  Wed, 27 Aug 2008 22:12:13 +0100

autopkgtest (1.1.1~) unstable; urgency=low

  * adt-xenlvm-setup: new hooks for xmdomain config file.
  * hosts/cadmium/update-suppression: really do not install empty file.
  * allow suppresspackages and blacklist lists to contain more
    information after some whitespace
  * adt-openbugs-*: new machinery for working with debbugs.
  * hosts/magrathea/*: work-in-progress configuration
  * Add Recommends against apt-utils.
  * hosts/cadmium/crontab: savelog -c7 not savelog -n7
  * hosts/{cadmium,chinstrap}/crontab: set MAILTO
  * adt-testreport-cronjob: make executable.

 -- Ian Jackson <ian@davenant.greenend.org.uk>  Fri, 26 Oct 2007 18:12:32 +0100

autopkgtest (1.1.0) unreleased; urgency=low

  * adt-testreport-runloop: manpage
  * adt-testreport-runloop: better command line parsing
  * adt-testreport-runloop: removed old lalonde junk
  * adt-testreport-runloop: replaced `..._ok' vars with sentinel files
  * hosts/chinstrap/update-suppressions: big comment
  * adt-testreport-runloop: renamed from hosts/cadmium/lalonde-nightly
  * hosts/cadmium/onepackage-config: set PATH (was in lalonde-nightly)
  * adt-testreport-onepackage: many manpage improvements
  * adt-testreport-runloop: add to Makefile
  * hosts/* installed as examples with a big fat warning.
  * adt-testreport-cronjob: renamed from hosts/cadmium/cronjob
  * adt-testreport-runloop: copyright message.
  * cfg and adt-testreport-runloop: do not cd in config files.
  * adt-testreport-runloop: fix handling of test_classes (was xoptslist)
  * hosts/cadmium/*, debian/rules: onepackage_config renamed to cfg.

 -- Ian Jackson <ian@davenant.greenend.org.uk>  Thu, 18 Oct 2007 17:17:31 +0100

autopkgtest (1.0.9) unstable; urgency=low

  * Separate email_sourcepackage_header and email_binarypackage_header
    to allow us to properly file bugs in LP against binary packages built
    from differently-named sources.
  * adt-testreport-onepackage: Dump a logfile giving the scores and facts
    used for package selection.
  * adt-testreport-onepackage: Do not prefer packages whose source package
    is listed in the suppressions file.
  * hosts/cadmium/manual-test-one-binary: new testing script.
  * hosts/cadmium/onepackage-config: explain about archive skew.
  * adt-testreport-onepackage: nicer score logging re skip chars.
  * adt-testreport-onepackage: skip emails if _source_ is suppresed.
  * adt-testreport-onepackage etc.: new blacklist feature, and initially
    blacklist ltsp-client{,-core}.
  * adt-testreport-onepackage: limit log to 64K (32K head, 32K tail)
    to avoid humungous bug reports which LP silently discards.
  * hosts/cadmium/lalonde-nightly: check for testbed sentinel file
    and stop if not present.

 -- Ian Jackson <iwj@ubuntu.com>  Thu, 18 Oct 2007 11:56:51 +0100

autopkgtest (1.0.8) gutsy; urgency=low

  * adt-run: pass -o Debug::pkgProblemResolver=true to apt & gdebi;
    this improves dependency problem reporting.  (LP: #135581.)
  * adt-testreport-onepackage: seddery the log to remove ctrl chars.
    In particular, this gets rid of ^M's from apt which get corrupted
    by email transport and thus break the email signatures.
  * hosts/chinstrap/update-suppressions: pass -S to curl.
  * hosts/{chinstrap,cadmium}/install-on-*: use --ubuntu branch.

 -- Ian Jackson <iwj@ubuntu.com>  Wed, 19 Sep 2007 15:44:33 +0100

autopkgtest (1.0.7) gutsy; urgency=low

  * Build properly with debian/copyright.

 -- Ian Jackson <iwj@ubuntu.com>  Tue, 28 Aug 2007 18:16:35 +0100

autopkgtest (1.0.6) unstable; urgency=low

  * Better changelog for 1.0.4.
  * .bzrignore debian/copyright.

 -- Ian Jackson <iwj@ubuntu.com>  Tue, 28 Aug 2007 18:08:46 +0100

autopkgtest (1.0.5) gutsy; urgency=low

  * Generate debian/copyright file in source package.

 -- Ian Jackson <iwj@ubuntu.com>  Tue, 28 Aug 2007 18:01:16 +0100

autopkgtest (1.0.4) gutsy; urgency=low

  * adt-testreport-onepackage:
    - Handling of source packages' Architecture: field corrected
      so package selection works properly.
    - Use ln -f when installing summary.
    - Capability to suppress emails similar to ones already sent.
    - Launchpad bug filing including PGP-signing, `affects' line, etc.
    - Capability to suppress email for packages listed in a
      suppression file.
    - Better formatting and explanations in some emails.

  * adt-run:
    - Options for setting timeouts.
    - Increase default timeouts 100s, 3ks, 10ks, 100ks.
  
  * hosts/chinstrap/*:
     Screen-scrape Launchpad to get existing bugs and generate a suitable
     suppression file so we file a bug iff there isn't one already. 
  
  * hosts/cadmium/*:
     New directory for convenience scripts etc on Canonical buildd.

 -- Ian Jackson <iwj@ubuntu.com>  Tue, 28 Aug 2007 17:42:13 +0100

autopkgtest (1.0.3) unstable; urgency=low

  * Set LANG to C by default for commands (eg builds and tests) run on
    testbed, and make this configurable.
  * Make builds work again: Fix `cd *' in work.write (broken by
    inclusion of `tmpdir' in that directory).
  * adt-testreport-onepackage has better reporting for DC-running.
  * Fix handling of non-.deb-producing source packages (eg, ones
    which produce only .udebs).

 -- Ian Jackson <iwj@ubuntu.com>  Mon, 16 Jul 2007 17:18:03 +0100

autopkgtest (1.0.2) unstable; urgency=low

  * xenlvm command-line settings properly override config file
    settings everywhere.
  * Default value for adt_distro computed in time to be used for
    default value for adt_play.
  * Close fd 4 for lvm tools too (suppresses daft `File descriptor
    left open' message).
  * Change default lvm lv sizes and make documentation correspond
    to reality.

 -- Ian Jackson <ian@davenant.greenend.org.uk>  Fri, 13 Jul 2007 15:31:58 +0100

autopkgtest (1.0.1) unstable; urgency=low

  * adt_debootstrap_opts mentioned in README and passable on
    command lines, instead of unused adt_pbuilder_args.
  * Dependency on pbuilder fixed; we use debootstrap, not pbuilder.

 -- Ian Jackson <iwj@ubuntu.com>  Thu, 12 Jul 2007 16:54:47 +0100

autopkgtest (1.0.0) gutsy; urgency=low

  * Locking: <play>.lock (unlinkable fcntl style) plus <play>/good
    sentinel file.  This will avoid conflicts between simultaneous calls
    to with-testbed and setup (and others).  The `with' mode of the userv
    target is enhanced so that the caller can take out the lock and hold
    it will starting and discarding the testbed more than once.

 -- Ian Jackson <iwj@ubuntu.com>  Thu, 12 Jul 2007 15:01:35 +0100

autopkgtest (0.9.2) unreleased; urgency=low

  * Really discard stderr from our ought-to-be-unnecessary
    modprobe dm-snapshot.

 -- Ian Jackson <ian@davenant.greenend.org.uk>  Thu, 12 Jul 2007 14:31:20 +0100

autopkgtest (0.9.1) gutsy; urgency=low

  * autopkgtest-xenlvm declares that it Depends on dmsetup.
  * Discard stderr from our ought-to-be-unnecessary modprobe dm-snapshot.
  * New `console' mode for userv service.
  * Move README.userv to autopkgtest-xenlvm package (and hence to
    /usr/share/doc/autopkgtest-xenlvm).
  * Do not mind if directory named by adt_modules doesn't exist - in
    that case just don't copy any modules.
  * Attempt to install libc6-xen in fixups-inside, rather than instructing
    debootstrap to install it.  This makes us not mind if it's missing.

 -- Ian Jackson <iwj@ubuntu.com>  Thu, 12 Jul 2007 09:50:13 +0100

autopkgtest (0.9.0) gutsy; urgency=low

  New features:
  * userv service for testbed invocation now provided and
    at least somewhat tested, and useable by adt-virt-xenlvm.
  * New print-execute-command command for virtualisation servers.
  * New adt_sshauthkeys_hook config variable.
  * pass count= to dd for erasure when lvm_erasebase=true.

  Bugfixes:
  * Fix filename pattern bug which can prevent automatic keypair
    generation (false claim that privkey and pubkey do not match).
  * Do not demand vg or distro information for initscript to work.
  * export adt_* variable settings resulting from command-line
    arguments so that subprocesses get them properly, and arrange
    for the `defaults for simple settings' not to override environment
    variables.
  * suppress various variable settings' default computations (and
    consequent failure if the default can't be established) when
    processing config for the initscript.  The initscript does not
    need per-testbed configuration options.
  * close fd 8 when running vgdisplay (which avoids an annoying and
    spurious warning from the lvm tools).

  Packaging:
  * autopkgtest-xenlvm now Recommends: lvm2 and debootstrap.
  * autopkgtest Suggests curl (adt-testreport-onepackage needs it).

  Portability:
  * Check for udev persistent-net-generator and if enabled we
    write a rune for eth0 for guest_macaddr into the RULES_FILE
    specified in /lib/udev/write_net_rules.  (Needed for gutsy.)
  * Remove iwj-specific stuff from adt-testreport-onepackage and put
    it into onepackage-config with scary warnings to tell people to
    edit the file.

  Documentation:
  * ip forwarding warning clarified.
  * README documentation of default value for erasebase corrected.

 -- Ian Jackson <iwj@ubuntu.com>  Tue,  3 Jul 2007 14:58:56 +0100

autopkgtest (0.8.2feisty1~iwj) feisty-updates; urgency=low

  * Fix readconfig.in to set adt_$var rather than just $var.
  * Use fd 8 for readconfig stdout parking rather than fd 10, to avoid
    Debian #423400 (bash bug).
  * Truncate files when writing them (copyup, copydown, etc) (!)
  * Remove spurious \ from `do not know how to handle filename' message.
  * Reset signal handlers in VirtSubproc cleanup.

 -- Ian Jackson <ian@davenant.greenend.org.uk>  Thu, 17 May 2007 15:11:31 +0100

autopkgtest (0.8.2) gutsy unstable; urgency=low

  * Fix fd handling to work around Python's habit of closing files
    you specify in subprocess.Popen.
  * Error handling bugfixes: say except (IOError,OSError) everywhere
    rather than just one of those two; correct harmless bug in gpg key
    generation error handling.
  * Make adt-virt-null work properly (VirtSubProc runs `down' with
    a single argument, so down must be sh -c and not []).
  * In VirtSubProc close spurious copy of plumbing pipe, which prevents
    certain hangs during error situations.
  * Xen cleanup script runs dmsetup info / dmsetup remove several times
    with some sleeps because xm destroy is not properly instantaneous.
  * Fix handling of pre-built source trees.
  * Fix cleanup handling not to delete tmpdir before resetting testbed's
    apt.
  
 -- Ian Jackson <ian@davenant.greenend.org.uk>  Fri, 27 Apr 2007 16:06:15 +0100

autopkgtest (0.8.1) feisty; urgency=low

  * Call dmsetup remove repeatedly instead of messing with udevsettle.
    udevsettle doesn't always help with the dmsetup remove race.

 -- Ian Jackson <iwj@ubuntu.com>  Wed,  4 Apr 2007 18:04:38 +0100

autopkgtest (0.8.0) feisty; urgency=low

  * adt-run: new --instantiate option to allow package installation to be
    forced for testing.  (This is not an ideal approach - it's not very
    flexible - but works well enough for the current requirements.)
  * adt-testreport-onepackage: new ability to test binary as well as
    source packages, using new --instantiate option.
  * new `timeout=' option on `execute' virt server command.
  * set some default timeouts (these should be settable with options,
    really).
  * Default kernel image guesser is more sophisticated - now we look
    for something that looks like a Xen kernel rather than guessing
    from the filename since the filenames seem unstable.
  * Default setting for adt_fw_allowglobalports is none.
  * Set DEBIAN_FRONTEND=noninteractive.
  * Run udevsettle after xm destroy but before dmsetup remove.
  * Run sendmail -odi not -odq in adt-testreport-onepackage.
  * Longer timeouts by default.
  * Print `adt-run: trace' for trace output.
  * Show all apt stdout (including dpkg stdout) in contemporaneous trace.
  
 -- Ian Jackson <iwj@ubuntu.com>  Tue,  3 Apr 2007 20:08:13 +0100

autopkgtest (0.7.2) feisty; urgency=low

  * adt-testreport-onepackage: new management script, with some
    example config files onepackage-config and ubuntu-config.
  * Fixed quite a few bugs in adt-run.
  * Made adt_distro xenlvm config var settable.
  * Fixed various packaging problems.

 -- Ian Jackson <iwj@ubuntu.com>  Thu,  8 Mar 2007 14:54:33 +0000

autopkgtest (0.7.1) feisty; urgency=low

  * Actually ship README.* files.
  * Manpage for adt-virt-xenlvm.
  * New adt-virt-null.

 -- Ian Jackson <iwj@ubuntu.com>  Mon, 26 Feb 2007 16:34:41 +0000

autopkgtest (0.7.0) feisty; urgency=low

  * Many new features, including:
    - Xen virtualisation service works
    - Can build packages as necessary
    - Many bugfixes.
    - Documentation (moved from the wiki).

 -- Ian Jackson <iwj@ubuntu.com>  Thu, 22 Feb 2007 20:10:30 +0000

autopkgtest (0.6.1) edgy; urgency=low

  * autopkgtest-xenlvm: filter output from debootstrap to make
    the amount of output more reasonable.  set -o pipefail.
    Create a timestamp file on image creation.  Warn if ipv4
    forwarding is turned off.
  * Add missing file `xen/justconfig' to bzr.
  * Fix typo in usage message in adt-virt-chroot.

 -- Ian Jackson <iwj@ubuntu.com>  Wed, 11 Oct 2006 15:42:18 +0100

autopkgtest (0.6.0) edgy; urgency=low

  * autopkgtest-xenlvm: new package with Xen/LVM management
    scripts productised.  Not yet glued into autopkgtest proper.

 -- Ian Jackson <iwj@ubuntu.com>  Fri,  6 Oct 2006 20:45:41 +0100

autopkgtest (0.5.3) dapper; urgency=low

  * Rename package autodebtest => autopkgtest.
  * Remove a leftover debugging print from adt-virt-chroot.

 -- Ian Jackson <iwj@ubuntu.com>  Tue,  7 Feb 2006 18:02:08 +0000

autodebtest (0.5.2) dapper; urgency=low

  * New --output-dir option to adt-run.
  * Bugfixes (including new mandatory cwd argument to `execute'
    virt server command).

 -- Ian Jackson <iwj@ubuntu.com>  Thu,  2 Feb 2006 19:44:18 +0000

autodebtest (0.5.1) dapper; urgency=low

  * Manpages and minor fixes.

 -- Ian Jackson <iwj@ubuntu.com>  Tue, 24 Jan 2006 18:37:46 +0000

autodebtest (0.5.0) unstable; urgency=low

  * Initial release of (still largely proof-of-concept) automatic binary
    package testing framework.

 -- Ian Jackson <iwj@ubuntu.com>  Fri, 20 Jan 2006 17:56:55 +0000