-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathCHANGES
724 lines (455 loc) · 21.7 KB
/
CHANGES
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
- 2.15 released -
Fix invalid escape sequences that cause warnings in Python 3.12.
- 2.14 released -
In the deprecated anita.Release method, use https, and use
archive.netbsd.org for releases older than 9.0.
Ignoring a suffix of "-dvd" when deducing the architecture name from
the URL of an install ISO, to work around the issue of PR 58357.
Define a scratch disk for vax guests so that they can export ATF test
results to the host.
Support Xen pvshim. From Manuel Bouyer.
- 2.13 released -
Install the base32 set by default (when present).
When installing a NetBSD version that has the new "base32" set, don't
mistake it for the "base" set.
- 2.12 released -
Fix incorrect scratch disk device name for riscv-riscv64 causing the
export of test result data to the host to fail.
Support the new manhtml, base32, and debug32 sets.
When installing a NetBSD version that has the new "manhtml" set, don't
mistake it for the "man" set.
- 2.11 released -
Increase the default memory size for sparc to 64M.
On macOS, use the -joliet option to "hdiutil makehybrid" as the -iso
option fails to create a Rock Ridge file system even though the
hdiutil manpage says it will. From Benny Siegert.
Add initial support for riscv-riscv64.
Increase the default of the --test-timeout option to 3 hours, as the
timeout of the crypto/libcrypto/t_libcrypto:bn test case in the NetBSD
ATF test suite has now been increased to 2 hours, and anita must use a
longer timeout than any individual test case.
New command line --no-entropy.
Support Xen PVH virtualization, enabled by "--xen-type pvh".
From Manuel Bouyer.
New command line --partitioning-scheme, for testing i386 and amd64
with MBR partitioning rather than the default GPT partitioning.
- 2.10 released -
Support the new sysinst root password and entropy configuration user
interface introduced on source date 2022.04.21.17.30.15.
Fix stray quotes in the anita --help output.
When choosing to overwrite a non-NetBSD partition, handle yes/no
choices presented in either order.
Define a scratch disk for macppc (wd1c) so that ATF test results can
be exported to the host.
- 2.9 released -
Support the new "gpufw" set.
Actually reduce the default test timeout to 1 hour as documented in
version 2.5 when anita is invoked as a program rather than as a
library.
Log a message to the structured log file on timeout so that the time
when the timeout occurred can be determined from the message timestamp.
Define a scratch disk for alpha (wd1c) so that ATF test results can
be exported to the host.
In addition to the plain-text ATF test report printed to the console
as the tests progress, also store a clean copy without other console
output in test.txt and export it to the host. Suggested by
Greg Troxel.
Fix failure to destroy the Xen DomU used by the installation stage
before trying to create the one for the boot stage when running
under Python 3.
Fix failure to log in after reboot when running "anita test" on a
self-resizing image without running a separate "anita install" first.
From Joerg Sonnenberger.
Support coypu's proposed sysinst entropy patch.
Remove extra newline in reponse to entropy prompt.
- 2.8 released -
Preemeptively support sysinst requesting entropy as a single line.
Fix bug in 2.7 that caused the provision of entropy to the installer
to fail when running under Python 3.
Omit ",cdrom" when passing a CD-ROM device to a Xen PV domain because
doing so will cause NetBSD/Xen to ignore device since xenbus_probe.c
1.51.
- 2.7 released -
Fix bug in 2.6 that caused the provision of entropy to the installer
to fail when running under Python 2.
- 2.6 released -
Support upcoming sysinst changes to support interactive input of
entropy.
Add support for NetBSD/alpha targets.
The "interact" mode now supports interaction with the boot process,
except when the --run option is used.
- 2.5 released -
Reset the test timeout once per test case, not just once per test
program, and reduce the default timeout to 1 hour.
- 2.4 released -
Deal with the root device name of evbarm-aarch64 changing as a result
of the the switch to GPT at source date 2020.05.24.18.44.46.
- 2.3 released -
Deal with curses sometimes optimizing away the final "s" in "Debug
symbols", causing the debug set to not be installed.
Increase default memory size for amd64 from 128M to 192M, as the
installer no longer runs reliably in 128M without exhausting memory.
Keep logging the console output for a few seconds after shutdown to
catch the autoconf detach messages and possible panics on detach.
When logging shell commands, avoid line breaks between options and
their arguments.
Support the "virt" machine type for evbarm-eamv7hf as an alternative
to the default of vexpress-a15. To enable, use the command line
option --machine virt.
- 2.2 released -
Clean up some b'' quoting that appeared around strings in the log
output under python3.
New command line option --image-format for selecting the guest disk
image format. Supported values are "dense" (the default) and
"sparse".
Reset the install timeout whenever a new set extraction or other
command is started by sysinst, and reduce the timeout to 1 hour.
This allows hangs in the install phase to be detected more quickly.
Reset the test timeout whenever a new test program is started by ATF,
and reduce the default timeout to 2 hours. If you are passing a
non-default test timeout with the --test-timeout option, it can also
be reduced. This allows hangs during test runs to be detected more
quickly.
Fix the sparc64 CD install which was broken in 2.1, by adding an
index=2 attribute to the virtual CD drive.
Make NetBSD-current/macppc boot by passing "-prom-env qemu_boot_hack=y"
to qemu-system-ppc. From Joerg Sonnenberger.
- 2.1 released -
Add support for the newly added rescue set.
Deal with the sysinst changes of 2019-11-16.
Add support for macppc targets, based on a patch from Joerg
Sonnenberger.
Fix failure to install the sharesrc set due to curses optimization.
- 2.0 released -
In the test suite, run the tests in parallel to reduce the run time.
Downloads can now be interrupted using SIGINT (control-C).
On NetBSD, invoke makefs using its absolute path /usr/sbin/makefs
as /usr/sbin may not be in PATH.
Add support for Python 3.
When using qemu from pkgsrc, log the exact pkgsrc version of qemu and
glib2, including any nb suffix.
- 1.49 released -
Fix issue introduced in 1.48 that caused the Xen install kernel to be
used instead of the regular Xen kernel when booting the installed
system.
- 1.48 released -
When sysinst offers a choice of partitioning schemes, anita now uses
the one listed first. Therefore, i386 and amd64 installs of versions
where sysinst offers GPT as the first choice will use GPT rather than
MBR as was previously the case.
Add support for NetBSD/hppa targets.
Support some upcoming sysinst UI changes.
The structured log file is now flushed after each line so that
it can be used to debug a hung installation without waiting for
it to time out first.
Move the automatic determination of the type of the URL argument
(e.g., distribution directory vs. installation ISO) into a new library
function anita.distribution() so that it can be used not only from the
command line but also by Python programs calling anita as a library.
When using a pre-installed image, "anita install" will now boot it to
let it resize itself, rather than postponing the resize to when the
image is later booted in another mode such as "anita test".
- 1.47 released -
Deal with the removal of the VEXPRESS_A15 kernel, used by the
evbarm-earmv7hf target, in favor of GENERIC.
- 1.46 released -
Add support for NetBSD/evbarm-aarch64 targets.
Add support for NetBSD/sparc64 targets, from Utkarsh Anand.
The run_tests() method now halts the VM, to ensure that the
scratch disk containing ATF test results is flushed by the
guest before being read by the host.
- 1.45 released -
Support xz compressed distribution sets.
Support NetBSD/vax via simh. Installing and booting works;
running the ATF tests does not. From Utkarsh Anand.
Mark the NumberedVersion and Release classes as deprecated.
Remove the obsolete clases DailyBuild and LocalBuild.
Fix a bug that caused the guest OS to unnecessarily boot twice
when entering "interact" mode since version 1.43.
Don't send a spurious "x" at the end of installation.
Log the pexpect version.
- 1.44 released -
Disable optimization avoiding copies when installing from a file: URL
or local path, as it broke installation of source sets.
Deal with pexpect 4.3.1 requiring delayafterclose and
delayafterterminate to be set in two different places
(https://github.com/pexpect/pexpect/issues/462).
Support installing on disks with a corrupt or out-of-date MBR.
Log the command line arguments on startup.
- 1.43 released -
Log interactive mode input and output to the structured log file.
Add support for NetBSD/hpcmips targets, from Utkarsh Anand.
- 1.42 released -
VM console input is no longer logged to stdout, to keep it from
appearing twice when echoed by the VM.
Fix VM console output appearing twice in interact mode (again).
Add support for gxemul as a new VMM and NetBSD/pmax as a new guest.
From Utkarsh Anand.
Increase the default test timeout to 24 hours, as the tests now
take much longer to run than before due to a combination of
the addition of new tests and qemu performance regressions.
Added target support for NetBSD/evbarm-earmv7hf, from Utkarsh Anand.
This installs from a pre-built image rather than using sysinst.
When installing from a file: URL or local path, avoid creating
unnecessary copies of the release files. From Utkarsh Anand.
New command line option --tests for explicitly selecting the the Kyua
test framework instead of ATF, from Utkarsh Anand.
- 1.41 released -
If the VMM exits unexpectedly while running the ATF tests or some
other shell command, log the exit status and the signal that caused it
to exit (if any).
Log the qemu version used to stdout.
Fix reference to uninitialized variable when reporting a
timeout waiting for VM halt confirmation.
Increase default child timeout from 300 to 600 seconds
to support VMMs where power-up takes a long time.
Increase child.delayafterclose and child.delayafterterminate
to support VMMs where power-down takes a long time.
Run more network diagnostics after failed network installs.
Add timestamps to structured log output.
- 1.40 released -
Work around a bug in the urllib library of Python 2.7.12 that causes
FTP transfers to fail with the error message "[Errno ftp error] 200
Type set to I"; see https://bugs.python.org/issue27973.
When halting the child results in an EOF, don't print the exception
since that may be confused with a failure.
Run vmstat -s at the end of the ATF tests to help diagnose issues
like excessive paging due to insufficient memory.
Increase the default of the --test-timeout option from 3 hours to 8
hours, since the sparc tests are now taking more than 5 hours.
Increase the default disk size to 1526M, as 1G is no longer enough
for amd64.
Pass format=raw in the qemu -drive option to suppress warnings in
recent qemu versions.
- 1.39 released -
Deal with incompatible change in the output format of the "info block"
command in qemu 2.5.0.
Fix bug where the exit status of the shell command specified with the
--run option was not propagated to the exit status of anita.
New public method start_boot, to facilitate writing test cases that
interact with the boot prompt.
The structured log file now also contains informational messages,
of the form info('message').
- 1.38 released -
Deal with the sysinst message changes of 2015-04-30.
When halting the VM, don't quit as soon as the text "halted" is seen,
because it may be part the message "halted by root", which is printed
before disks have been synced. Instead look for "The operating system
has halted", EOF, or a timeout.
- 1.37 released -
The global test() function is no longer supported, use the run_tests()
method of the Anita object instead.
When halting the VM, do not attempt to log in if already logged in.
Make the distinctive shell prompts different from one invocation of
anita to another, so that anita can run itself recursively on the VM
without the outer instance mistaking a shell prompt from an inner
instance for one of its own.
- 1.36 released -
When running a shell command, wrap the exit status in distictive text
so that it can be reliably matched in the presence of buffered output
containing other numeric strings.
Halt the VM when done.
Print the qemu command.
- 1.35 released -
Support Linux host systems that have genisoimage but not mkisofs, such
as Debian 7.
New command line option --run-timeout.
- 1.34 released -
Do not require releases to contain install floppies, since amd64 no
longer has them.
The default value of the --boot-from option is now "cdrom" if the
install floppies are missing.
When reporting a failed download of optional files, be clearer that
this is not an error. Also, don't treat arbitrary exceptions during
downloads as indicating a missing file, only the expected IOError.
Increase the default disk size from 768M to 1G, as 768M is no
longer sufficient for amd64.
New command line option --structured-log-file. This is like
--structured-log but takes the name of a log file as an
argument, and the structured logging is in addition to, not
instead of, the traditional logging to stdout.
Increase installation timeout from 1 hour to 3 hours so that
a system built with DEBUG and LOCKDEBUG can be installed under
qemu without timing out.
Unconditionally print a greeting message including the version number
of startup, so that logs from automated anita runs will always
indicate the version used.
In --structured-log mode, log the string matched by expect() instead
of the return value, as the latter is always zero and therefore
conveys no useful information.
- 1.33 released -
Support recent versions of sysinst (CVS date 2014.08.03.16.09.38 or
newer), where set selection happens after disk partitioning rather
than before.
Document qemu 2.0.0nb4 as a known working version.
New command line option --structured-log.
- 1.32 released -
Fix installation of source and debug sets, which had been broken since
the label displayed by sysinst was changed from "Source sets" to
"Source and debug sets".
- 1.31 released -
Fix a failure to consume a shell prompt which would cause it to remain
buffered and later be mistaken for one that had not yet issued. For
added protection, add a unique serial number to each prompt.
Omit drive index from qemu command line for backwards compatibility
with scripts written for anita 1.29 or older.
Fix X11 set names.
- 1.30 released -
Increase the default timeout for running the NetBSD test
suite from 2 hours to 3 hours.
Add support for installing the new "debug" set, and add a new
man page section on using anita for debugging NetBSD.
Organize the BUGS section of the man page into sections,
and add links to four more qemu 1.x regressions.
Add Kuya support, based on patch from Julio Merino.
New command line option "--version".
Support booting i386 and amd64 from boot-com.iso instead
of the boot floppies, attaching a second virtual CD-ROM drive
for the install sets. Enable with "--boot-from cdrom".
Fix the Anita 1.2 backwards compatibility Release class.
- 1.29 released -
Fix "xm" Xen interface support broken in 1.28.
- 1.28 released -
The "xl" Xen interface can now be selected with "--vmm xl".
Increase the default memory size for amd64 to 128M.
Improve progress messages when creating the disk image.
When execing /bin/sh, wait for its prompt before sending
it a command.
- 1.27 released -
Run shell commands on the target system using /bin/sh rather
than root's login shell, as sysinst no longer sets the login
shell to /bin/sh by default.
- 1.26 released -
Track the sysinst changes of 2012-04-06 introducing the new
post-install configuration menu.
Print a message before creating the disk image, as it can take
a long time and make it appear that anita has hung.
- 1.25 released -
Before running a shell command on the system under test, change the
shell prompt to a more distinctive one to reduce the risk of command
output being mistaken for a prompt.
Support installing SPARC ISOs having a non-numeric suffix following
the version number, such as NetBSD-6.0_BETA-sparc.iso.
Added experimental support for using Xen instead of qemu as the
virtual machine monitor. This is enabled by specifying "--vmm xen" on
the anita command line while running as root in a Xen dom0.
New command line option "--persist".
- 1.24 released -
Support the new distribution ISO naming scheme, e.g.,
NetBSD-5.99.60-sparc.iso instead of sparccd.iso.
Support installation of the X11 and source sets.
On unknown platforms, use mkisofs instead of genisoimage.
On sparc, the scratch disk is sd1c, not wd1d.
Allow a full hour for extracting sets.
Deal with the backwards incompatible renaming of "qemu" to
"qemu-system-i386" in qemu 1.0.
After running the ATF tests, run "ps" to show any processes possibly
left running by the tests.
- 1.23 released -
Support qemu 0.15, where the output of the "info block" monitor
command has backwards-incompatibly changed to no longer include a
"type" field.
- 1.22 released -
New command line option "--memory-size".
- 1.21 released -
Disk images no longer contain holes, making them easier to use with
vnd(4). Partially based on patch from Vladimir Kirillov.
Increase the default disk size from 512M to 768M, as 512M is no longer
sufficient for amd64.
- 1.20 released -
Run df before and after the ATF tests so that disk usage data
can be gathered from the test logs.
Increase the default timeout for the ATF test from 1 hour to 2 hours
as the number of tests has now increased to a point where 1 hour is
not always enough even on a fast machine.
Increase the timeout for the set extraction phase from 1200 to 2400
seconds; the extra time is needed when installing a system built
without optimization.
- 1.19 released -
Rename the --qemu-args option to --vmm-args in preparation for adding
support for other virtual machine monitors in addition to qemu.
Fix typos found by Antti Kantee and Jean-Yves Migeon.
Deprecate the --qemu-args -no-kvm-irqchip workaround, as it doesn't
quite work.
Add support for MacOS X hosts, from Jeff Rizzo.
New command line option "--test-timeout".
Deal with yet another seemingly nondeterministic "Press enter to
continue" prompt.
- 1.18 released -
Deal with sysinst no longer asking for a password cipher.
Create the work directory in "test" mode so that it works without
running "install" first.
Fix incorrect description of the --workdir option in the man page, and
consistently use the term "work directory" throughout.
Reorganized the man page, adding a MODES section.
New mode "print-workdir".
Fix installation of historical versions of -current around
CVS date 2009.08.23.20.57.40.
- 1.17 released -
Fix bugs in the new features introduced in 1.16: the --sets option
only worked when passing the URL of a distribution directory (rather
than a pathname or the url of an ISO), and exporting of ATF output
only worked when using --workdir with an abolute pathname.
- 1.16 released -
Update the discussion of Linux KVM virtualization compatibility in the
BUGS section, noting the --qemu-args -no-kvm-irqchip workaround and
including a reference to PR 44069.
New command line option "--sets".
Add a rudimentary INSTALL file.
The "misc" set is now installed by default, as it is required for
the ATF XML DTD, XSL files, and style sheets.
The "test" command now exports the raw and XML format ATF output
to the host, along with some auxiliary files needed for further
processing of the XML output.
Add support for FreeBSD hosts, from Kurt Lidl.
- 1.15 released -
Increase the timeout for "--run" commands to one hour.
Restrict snapshotting to the system disk, so that additional disks
mounted for the purpose of exporting data can be persistently
modified.
- 1.14 released -
Increase the maximum number of boot floppies, as four is no longer
enough for amd64.
New command line option "--run".
Handle the additional dialogs displayed by sysinst when an
i386 or amd64 system has more than one disk.
Add the words "OR CONTRIBUTORS" to the disclaimer of liabilities
in the copyright notice.
- 1.13 released -
When installing NetBSD/sparc, use a terminal type of "xterm" rather
than "sun", as anita is more likely run from an xterm or other
ANSI-like terminal than from a sun console.
In the BUGS section of the man page, mention the specific NetBSD ports
affected.
Fix typos in the man page.
- 1.12 released -
Add support for the amd64 and sparc ports as targets.
Improve error reporting for common types of unsuitable URLs.
Avoid sending multiple responses when the NetBSD 3.0.1 sysinst
updates the menu display multiple times.
New command line option "--disk-size".
- 1.11 released -
Remove '-serial stdio' from qemu argument list. It's not actually
needed when the '-nographic' option is present, and it confuses
qemu 0.12.
- 1.10 released -
Deal with recent sysinst changes: sysinst no longer displays a dialog
to select the CD-ROM device path, etc.
New command line option "--qemu-args".
Anita no longer passes the "-no-acpi" option to qemu by default,
because the ACPI case now works with -current, and disabling
ACPI triggers other bugs. See PR port-i386/42681 for more details.
- 1.9 released -
Deal with recent renumbering of password encryption choices in sysinst.
- 1.8 released -
Increase timeouts, particularly when extracting sets and running the
ATF tests
Document the "test" command and path-in-place-of-URL
- 1.7 released -
Remove workaround for lib/39175, which broke the installation
of the "comp" set
Add "test" command for running the ATF tests
Accept a local distribution directory path in place of a URL
Check for missing slash at end of distribution directory URL
Detect HTTP 404 errors
- 1.6 released -