Add tests for result conversion after errors
[dejagnu.git] / NEWS
blob245669a3a792e32b2798ce21eb8340215dafd932
1 -*- text -*-
3 Changes since 1.6.2:
5  1. The internal proc 'is_remote' has been renamed to 'isremote' for
6     consistency with the other similar procs (eg, istarget). Testsuites
7     should use this proc. The 'is_remote' proc is deprecated.
8  2. runtest now accepts --local_init and --global_init options to override
9     the default of reading "site.exp".  See the manual for details.
10  3. runtest now responds consistently to all Tcl errors and generates an
11     UNRESOLVED result when a test script aborts.  Previously, calling an
12     undefined procedure would cause the test run to abort while other Tcl
13     errors produced only an easily-ignored message.
14  4. runtest now collects Tcl errors encountered during a test run and prints
15     the collected errors a second time at the end of the test run after the
16     summary.  Separator lines containing more than 10 hyphens are included.
17  5. A utility procedure relative_filename has been added.  This procedure
18     computes a relative file name to a given destination from a given base.
19  6. The utility procedure 'grep' now accepts a '-n' option that
20     includes line numbers in the output, consistent with GNU grep.
21  7. The target_compile procedure now accepts a "linker=" option that
22     overrides the compiler selection when producing an executable.
23  8. The internal default_target_compile procedure now supports compiling
24     sources in Go (using GCC Go) and Rust.
25  9. The host_execute procedure no longer insists that the executable be in
26     the current directory if the file exists under the given name.
27 10. The host_execute procedure now reads input to end-of-file, to ensure
28     that the child process will be able to complete instead of being cut
29     short by a SIGPIPE under unpredictable unfavorable timing scenarios.
30 11. The match patterns in the host_execute procedure have been revised to
31     fix timing issues causing test names to be truncated.
32 12. The host_execute procedure is no longer sensitive to the value of the
33     "text" global variable.
34 13. A new multiplex procedure "testsuite" is added for commands retrieving
35     or providing information about the current testsuite.
36 14. A command "testsuite file" is added to replace the use of the "*dir"
37     variables in test scripts.
38 15. A command "testsuite can call" is added to report the availability of
39     multiplexed API calls.
40 16. A new multiplex procedure "testcase" is added for commands examining or
41     manipulating the dynamic state of ongoing testing.
42 17. A command "testcase group" is provided for reporting test groups to the
43     DejaGnu core.  Currently, the usage of this command is validated, but
44     it will affect at least XML output in a future release of DejaGnu.
45 18. A shell command "dejagnu" is added as a place to hang various
46     auxiliary commands not directly involved with running tests. The
47     "runtest" command will remain for that purpose for the foreseeable
48     future.
49 19. The first auxiliary command is added: "report card". The "dejagnu
50     report card" command reads DejaGnu summary files and produces a compact
51     tabular summary across multiple tools.
52 20. A Tcl namespace is now used for some internal procedures and variables.
53     The Tcl namespace ::dejagnu and all child namespaces are entirely
54     internal and should not be mentioned in testsuite code.  Its contents
55     are subject to change without notice, even on point releases.
56 21. The DejaGnu testsuite no longer searches for a nearby Expect executable
57     in the location where it would have been located in the old Cygnus tree
58     layout.  If you want to use a special Expect other than the system
59     Expect, specify EXPECT=/name/of/expect to "runtest" or "make check".
61 Changes since 1.6.1:
63 1. runtest will abort if $DEJAGNU is defined but the file is not
64    found.
66 Changes since 1.6:
68 Minor bug fixes, no major changes.
70 Changes since 1.5.3:
72 1. Proper support for target communication via SSH has been added.
73 2. A large number of very old config and baseboard files have been
74    removed.  If you need to resurrect these, you can get them from
75    version 1.5.3.  If you can show that a board is still in use, it
76    can be put back in the distribution.
77 3. The --status command line option is now the default. This means
78    that any error in the testsuite Tcl scripts will cause runtest to
79    abort with exit status code 2.  The --status option has been
80    removed from the documentation, but will continue to be accepted
81    for backward compatibility.
82 4. runtest now exits with exit code 0 if the testsuite "passed", 1 if
83    something unexpected happened (eg, FAIL, XPASS or UNRESOLVED), and
84    2 if an exception is raised by the Tcl interpreter.
85 5. runtest now exits with the standard exit codes of programs that are
86    terminated by the SIGINT, SIGTERM and SIGQUIT signals.
87 6. The user-visible utility procedures `absolute', `psource' and
88    `slay' have been removed.  If a testsuite uses any of these
89    procedures, a copy of the procedure should be made and placed in
90    the lib directory of the testsuite.
91 7. Support was added for testing the D compiler.
92 8. ~/.dejagnurc is now loaded last, not first. This allows the user to
93    have the ability to override anything in their environment (even
94    the site.exp file specified by $DEJAGNU).
95 9. The user-visible utility procedure `unsetenv' is deprecated and
96    will be removed in the next release.  If a testsuite uses any of
97    these procedures, a copy of the procedure should be made and placed
98    in the lib directory of the testsuite.
100 Changes since 1.4.4:
102 1. The runtest.1 man page has been brought up to date.
103 2. The Docbook/SGML documentation files were removed in favour of the
104    Docbook/XML documentation.  The Texinfo source for the Info pages is
105    now automatically generated from the Docbook source.
106 3. The Makefile structure has been substantially simplified.  There
107    is now a single top-level Makefile.am.  The use of recursive make
108    has been eliminated.
109 4. lib/mondfe.exp and lib/xsh.exp have been removed.  Users requiring
110    these communication modes can still use the DejaGnu 1.4 branch or
111    can contact dejagnu@gnu.org to discuss reinstating these files.
112 5. The configure script now ensures that Expect is installed and that
113    it is linked against Tcl 8.3 or greater.
114 6. The runtest program now gracefully handles the possibility of the
115    expect binary vanishing after DejaGnu has been installed (for
116    example, by the user altering their PATH).
117 7. The user-visible utility procedures `absolute', `prune', `psource'
118    and `slay' are deprecated and will be removed in the next release.
119    If a testsuite uses any of these procedures, a copy of the
120    procedure should be made and placed in the lib directory of the
121    testsuite.
123 Changes since 1.4.2:
125 1. New XML output option, so test results can be loaded into a database.
126 2. Support for the KFAIL/KPASS (known failures).
127 3. New "Hello World" example.
128 4. New tutorial chapter.
129 5. Test cases build with either GCC 2.x or 3.x.
130 6. BlueGnu has been removed from the contrib directory.
131 7. The contrib/test* scipts were bitrotten and have been removed.  If
132    you still want copies of these, they can be found in the previous
133    DejaGnu release.
134 8. i960glue.c has been removed.
136 Changes since 1.4.1:
138 1. Various patches for bugs reported from net users.
139 2. Test case builds with either libstdc++-v3 (as used by GCC 3.0.x) or
140    the older v2 (as used by GCC 2.95.x).
142 Changes since 1.4.0:
144 1. There is new support for a simple unit testing API, that is also
145    useful for embedded testing.
147 Changes since 1.3:
149 1. DejaGnu is now back under active maintainance. The initial work has
150    been rewriting the manual to bring it up to date, and switching to
151    SGML.
152 2. NT support has also been added.
153 3. DejaGnu now uses Automake.
155 Changes since 1.1.1:
157 1. Works with (included in release) Tcl 7.3 and Expect 5.6.
158 2. Much better error trapping and handling, including the execution of
159    sub scripts.
160 3. Re-worked configuration subsystem.
161 4. Default handling for testing unknown targets.
162 5. New testsuite for expect and runtest.
163 6. More debugging procedures.
165 Changes since 1.0:
167 1. DejaGnu now conforms to POSIX 1003.3, a standard for testing frameworks.
168 2. A Tcl debugger written by Don Libes has been added.
169 3. Lots of bug fixes.
171 Changes since 0.9:
173 1. DejaGnu now installs itself like other utilities.
174 2. 700 G++ tests are included.
175 3. The bugs in the GCC tests have been fixed.
176 4. Testsuites are released separately.
177 5. Testsuite sources now reside with the within each tool's source tree.