xref: /netbsd-src/external/bsd/atf/dist/NEWS (revision 0ebb519dda66c17a69738c989556b0403b1914cd)
1edebbb8eSjmmvMajor changes between releases                  Automated Testing Framework
2edebbb8eSjmmv===========================================================================
3e2207522Sjmmv
4e2207522Sjmmv
5*0ebb519dSjmmvChanges in version 0.12
6*0ebb519dSjmmv***********************
7*0ebb519dSjmmv
8*0ebb519dSjmmvExperimental version released on November 7th, 2010.
9*0ebb519dSjmmv
10*0ebb519dSjmmv* Added the ATF_REQUIRE_THROW_RE to atf-c++, which is the same as
11*0ebb519dSjmmv  ATF_REQUIRE_THROW but allows checking for the validity of the exception's
12*0ebb519dSjmmv  error message by means of a regular expression.
13*0ebb519dSjmmv
14*0ebb519dSjmmv* Added the ATF_REQUIRE_MATCH to atf-c++, which allows checking for a
15*0ebb519dSjmmv  regular expression match in a string.
16*0ebb519dSjmmv
17*0ebb519dSjmmv* Changed the default timeout for test cases from 5 minutes to 30 seconds.
18*0ebb519dSjmmv  30 seconds is long enough for virtually all tests to complete, and 5
19*0ebb519dSjmmv  minutes is a way too long pause in a test suite where a single test case
20*0ebb519dSjmmv  stalls.
21*0ebb519dSjmmv
22*0ebb519dSjmmv* Deprecated the use.fs property.  While this seemed like a good idea in
23*0ebb519dSjmmv  the first place to impose more control on what test cases can do, it
24*0ebb519dSjmmv  turns out to be bad.  First, use.fs=false prevents bogus test cases
25*0ebb519dSjmmv  from dumping core so after-the-fact debugging is harder.  Second,
26*0ebb519dSjmmv  supporting use.fs adds a lot of unnecessary complexity.  atf-run will
27*0ebb519dSjmmv  now ignore any value provided to use.fs and will allow test cases to
28*0ebb519dSjmmv  freely access the file system if they wish to.
29*0ebb519dSjmmv
30*0ebb519dSjmmv* Added the atf_tc_get_config_var_as_{bool,long}{,_wd} functions to the atf-c
31*0ebb519dSjmmv  library.  The 'text' module became private in 0.11 but was being used
32*0ebb519dSjmmv  externally to simplify the parsing of configuration variables.
33*0ebb519dSjmmv
34*0ebb519dSjmmv* Made atf-run recognize the 'unprivileged-user' configuration variable
35*0ebb519dSjmmv  and automatically drop root privileges when a test case sets
36*0ebb519dSjmmv  require.user=unprivileged.  Note that this is, by no means, done for
37*0ebb519dSjmmv  security purposes; this is just for user convenience; tests should, in
38*0ebb519dSjmmv  general, not be blindly run as root in the first place.
39*0ebb519dSjmmv
40*0ebb519dSjmmv
41895f502bSjmmvChanges in version 0.11
42895f502bSjmmv***********************
43895f502bSjmmv
44895f502bSjmmvExperimental version released on October 20th, 2010.
45895f502bSjmmv
46895f502bSjmmv* The ATF_CHECK* macros in atf-c++ were renamed to ATF_REQUIRE* to match
47895f502bSjmmv  their counterparts in atf-c.
48895f502bSjmmv
49895f502bSjmmv* Clearly separated the modules in atf-c that are supposed to be public
50895f502bSjmmv  from those that are implementation details.  The header files for the
51895f502bSjmmv  internal modules are not installed any more.
52895f502bSjmmv
53895f502bSjmmv* Made the atf-check tool private.  It is only required by atf-sh and being
54895f502bSjmmv  public has the danger of causing confusion.  Also, making it private
55895f502bSjmmv  simplifies the public API of atf.
56895f502bSjmmv
57895f502bSjmmv* Changed atf-sh to enable per-command error checking (set -e) by default.
58895f502bSjmmv  This catches many cases in which a test case is broken but it is not
59895f502bSjmmv  reported as such because execution continues.
60895f502bSjmmv
61895f502bSjmmv* Fixed the XSTL and CSS stylesheets to support expected failures.
62895f502bSjmmv
63895f502bSjmmv
64edebbb8eSjmmvChanges in version 0.10
65edebbb8eSjmmv***********************
66e2207522Sjmmv
67edebbb8eSjmmvExperimental version released on July 2nd, 2010.
68e2207522Sjmmv
69edebbb8eSjmmvMiscellaneous features
7012aa0b5aSjmmv
71edebbb8eSjmmv* Added expected failures support to test cases and atf-run.  These
72edebbb8eSjmmv  include, for example, expected clean exits, expected reception of fatal
73edebbb8eSjmmv  signals, expected timeouts and expected errors in condition checks.
74edebbb8eSjmmv  These statuses can be used to denote test cases that are known to fail
75edebbb8eSjmmv  due to a bug in the code they are testing.  atf-report reports these
76edebbb8eSjmmv  tests separately but they do not count towards the failed test cases
77edebbb8eSjmmv  amount.
7812aa0b5aSjmmv
79edebbb8eSjmmv* Added the ATF_CHECK_ERRNO and ATF_REQUIRE_ERRNO to the C library to
80edebbb8eSjmmv  allow easy checking of call failures that update errno.
8112aa0b5aSjmmv
82edebbb8eSjmmv* Added the has.cleanup meta-data property to test caes that specifies
83edebbb8eSjmmv  whether the test case has a cleanup routine or not; its value is
84edebbb8eSjmmv  automatically set.  This property is read by atf-run to know if it has to
85edebbb8eSjmmv  run the cleanup routine; skipping this run for every test case
86edebbb8eSjmmv  significantly speeds up the run time of test suites.
8712aa0b5aSjmmv
88edebbb8eSjmmv* Reversed the order of the ATF_CHECK_THROW macro in the C++ binding to
89edebbb8eSjmmv  take the expected exception as the first argument and the statement to
90edebbb8eSjmmv  execute as the second argument.
9112aa0b5aSjmmv
92edebbb8eSjmmvChanges in atf-check
93407d7761Sjmmv
94edebbb8eSjmmv* Changed atf-check to support negating the status and output checks by
95edebbb8eSjmmv  prefixing them with not- and added support to specify multiple checkers
96edebbb8eSjmmv  for stdout and stderr, not only one.
979b3149ccSjmmv
98edebbb8eSjmmv* Added the match output checker to atf-check to look for regular
99edebbb8eSjmmv  expressions in the stdout and stderr of commands.
100edebbb8eSjmmv
101edebbb8eSjmmv* Modified the exit checks in atf-check to support checking for the
102edebbb8eSjmmv  reception of signals.
103edebbb8eSjmmv
104edebbb8eSjmmvCode simplifications and cleanups
105edebbb8eSjmmv
106edebbb8eSjmmv* Removed usage messages from test programs to simplify the
107edebbb8eSjmmv  implementation of every binding by a significant amount.  They just now
108edebbb8eSjmmv  refer the user to the appropriate manual page and do not attempt to wrap
109edebbb8eSjmmv  lines on terminal boundaries.  Test programs are not supposed to be run
110edebbb8eSjmmv  by users directly so this minor interface regression is not important.
111edebbb8eSjmmv
112edebbb8eSjmmv* Removed the atf-format internal utility, which is unused after the
113edebbb8eSjmmv  change documented above.
114edebbb8eSjmmv
115edebbb8eSjmmv* Removed the atf-cleanup internal utility.  It has been unused since the
116edebbb8eSjmmv  test case isolation was moved to atf-run in 0.8
117edebbb8eSjmmv
118edebbb8eSjmmv* Splitted the Makefile.am into smaller files for easier maintenance and
119edebbb8eSjmmv  dropped the use of M4.  Only affects users building from the repository
120edebbb8eSjmmv  sources.
121edebbb8eSjmmv
122edebbb8eSjmmv* Intermixed tests with the source files in the source tree to provide
123edebbb8eSjmmv  them more visibility and easier access.  The tests directory is gone from
124edebbb8eSjmmv  the source tree and tests are now suffixed by _test, not prefixed by t_.
125edebbb8eSjmmv
126edebbb8eSjmmv* Simplifications to the atf-c library: removed the io, tcr and ui
127edebbb8eSjmmv  modules as they had become unnecessary after all simplifications
128edebbb8eSjmmv  introduced since the 0.8 release.
129edebbb8eSjmmv
130edebbb8eSjmmv* Removed the application/X-atf-tcr format introduced in 0.8 release.
131edebbb8eSjmmv  Tests now print a much simplified format that is easy to parse and nicer
132edebbb8eSjmmv  to read by end users.  As a side effect, the default for test cases is
133edebbb8eSjmmv  now to print their results to stdout unless otherwise stated by providing
134edebbb8eSjmmv  the -r flag.
135edebbb8eSjmmv
136edebbb8eSjmmv* Removed XML distribution documents and replaced them with plain-text
137edebbb8eSjmmv  documents.  They provided little value and introduced a lot of complexity
138edebbb8eSjmmv  to the build system.
139edebbb8eSjmmv
140edebbb8eSjmmv* Simplified the output of atf-version by not attempting to print a
141edebbb8eSjmmv  revision number when building form a distfile.  Makes the build system
142edebbb8eSjmmv  easier to maintain.
143edebbb8eSjmmv
1449b3149ccSjmmv
1459b3149ccSjmmvChanges in version 0.9
146edebbb8eSjmmv**********************
1479b3149ccSjmmv
1489b3149ccSjmmvExperimental version released on June 3rd, 2010.
1499b3149ccSjmmv
1509b3149ccSjmmv* Added atf-sh, an interpreter to process test programs written using
151edebbb8eSjmmv  the shell API.  This is not really a shell interpreter by itself though:
152edebbb8eSjmmv  it is just a wrapper around the system shell that eases the loading of
153edebbb8eSjmmv  the necessary ATF libraries.
1549b3149ccSjmmv
1559b3149ccSjmmv* Removed atf-compile in favour of atf-sh.
1569b3149ccSjmmv
1579b3149ccSjmmv* Added the use.fs metadata property to test case, which is used to
1589b3149ccSjmmv  specify which test cases require file system access.  This is to
159edebbb8eSjmmv  highlight dependencies on external resources more clearly and to speed up
160edebbb8eSjmmv  the execution of test suites by skipping the creation of many unnecessary
161edebbb8eSjmmv  work directories.
1629b3149ccSjmmv
1639b3149ccSjmmv* Fixed test programs to get a sane default value for their source
1649b3149ccSjmmv  directory.  This means that it should not be necessary any more to pass
165edebbb8eSjmmv  -s when running test programs that do not live in the current directory.
1669b3149ccSjmmv
1679b3149ccSjmmv* Defining test case headers became optional.  This is trivial to achieve
1689b3149ccSjmmv  in shell-based tests but a bit ugly in C and C++.  In C, use the new
1699b3149ccSjmmv  ATF_TC_WITHOUT_HEAD macro to define the test case, and in C++ use
1709b3149ccSjmmv  ATF_TEST_CASE_WITHOUT_HEAD.
171407d7761Sjmmv
172edebbb8eSjmmv
173407d7761SjmmvChanges in version 0.8
174edebbb8eSjmmv**********************
175407d7761Sjmmv
176407d7761SjmmvExperimental version released on May 7th, 2010.
177407d7761Sjmmv
178407d7761Sjmmv* Test programs no longer run several test cases in a row.  The execution
179407d7761Sjmmv  of a test program now requires a test case name, and that single test
180edebbb8eSjmmv  case is executed.  To execute several test cases, use the atf-run utility
181edebbb8eSjmmv  as usual.
182407d7761Sjmmv
183407d7761Sjmmv* Test programs no longer fork a subprocess to isolate the execution of
184407d7761Sjmmv  test cases.  They run the test case code in-process, and a crash of the
185407d7761Sjmmv  test case will result in a crash of the test program.  This is to ease
186407d7761Sjmmv  debugging of faulty test cases.
187407d7761Sjmmv
188407d7761Sjmmv* Test programs no longer isolate their test cases.  This means that they
189407d7761Sjmmv  will not create temporary directories nor sanitize the environment any
190edebbb8eSjmmv  more.  Yes: running a test case that depends on system state by hand will
191edebbb8eSjmmv  most likely yield different results depending on where (machine,
192407d7761Sjmmv  directory, user environment, etc.) it is run.  Isolation has been moved
193407d7761Sjmmv  to atf-run.
194407d7761Sjmmv
195407d7761Sjmmv* Test programs no longer print a cryptic format (application/X-atf-tcs)
196edebbb8eSjmmv  on a special file channel.  They can now print whatever they want on the
197edebbb8eSjmmv  screen.  Because test programs can now only run one test case every time,
198edebbb8eSjmmv  providing controlled output is not necessary any more.
199407d7761Sjmmv
200407d7761Sjmmv* Test programs no longer write their status into a special file
201edebbb8eSjmmv  descriptor.  Instead, they create a file with the results, which is later
202edebbb8eSjmmv  parsed by atf-run.  This changes the semantics of the -r flag.
203407d7761Sjmmv
204407d7761Sjmmv* atf-run has been adjusted to perform the test case isolation.  As a
205407d7761Sjmmv  result, there is now a single canonical place that implements the
206407d7761Sjmmv  isolation of test caes.  In previous releases, the three language
207edebbb8eSjmmv  bindings (C, C++ and shell) had to be kept in sync with each other (read:
208edebbb8eSjmmv  not a nice thing to do at all).  As a side effect of this change, writing
209edebbb8eSjmmv  bindings for other languages will be much, much easier from now on.
210407d7761Sjmmv
211407d7761Sjmmv* atf-run forks test programs on a test case basis, instead of on a test
212407d7761Sjmmv  program basis as it did before.  This is to provide the test case
213407d7761Sjmmv  isolation that was before implemented by the test programs themselves.
214407d7761Sjmmv
215407d7761Sjmmv* Removed the atf-exec tool.  This was used to implement test case
216407d7761Sjmmv  isolation in atf-sh, but it is now unnecessary.
217407d7761Sjmmv
218407d7761Sjmmv* It is now optional to define the descr meta-data property.  It has been
219edebbb8eSjmmv  proven to be mostly useless, because test cases often carry a descriptive
220edebbb8eSjmmv  name of their own.
221edebbb8eSjmmv
22212aa0b5aSjmmv
22312aa0b5aSjmmvChanges in version 0.7
224edebbb8eSjmmv**********************
22512aa0b5aSjmmv
22612aa0b5aSjmmvExperimental version released on December 22nd, 2009.
22712aa0b5aSjmmv
22812aa0b5aSjmmv* Added build-time checks to atf-c and atf-c++.  A binding for atf-sh
22912aa0b5aSjmmv  will come later.
23012aa0b5aSjmmv
23112aa0b5aSjmmv* Migrated all build-time checks for header files to proper ATF tests.
23212aa0b5aSjmmv  This demonstrates the use of the new feature described above.
23312aa0b5aSjmmv
23412aa0b5aSjmmv* Added an internal API for child process management.
23512aa0b5aSjmmv
23612aa0b5aSjmmv* Converted all plain-text distribution documents to a Docbook canonical
23712aa0b5aSjmmv  version, and include pre-generated plain text and HTML copies in the
23812aa0b5aSjmmv  distribution file.
23912aa0b5aSjmmv
24012aa0b5aSjmmv* Simplified the contents of the Makefile.am by regenerating it from a
24112aa0b5aSjmmv  canonical Makefile.am.m4 source.  As a side-effect, some dependency
24212aa0b5aSjmmv  specifications were fixed.
24312aa0b5aSjmmv
24412aa0b5aSjmmv* Migrated all checks from the check target to installcheck, as these
24512aa0b5aSjmmv  require ATF to be installed.
24612aa0b5aSjmmv
24712aa0b5aSjmmv* Fixed sign comparison mismatches triggered by the now-enabled
24812aa0b5aSjmmv  -Wsign-compare.
24912aa0b5aSjmmv
25012aa0b5aSjmmv* Fixed many memory and object leaks.
25112aa0b5aSjmmv
252edebbb8eSjmmv
25312aa0b5aSjmmvChanges in version 0.6
254edebbb8eSjmmv**********************
25512aa0b5aSjmmv
25612aa0b5aSjmmvExperimental version released on January 18th, 2009.
25712aa0b5aSjmmv
25812aa0b5aSjmmv* Make atf-exec be able to kill its child process after a certain period
25912aa0b5aSjmmv  of time; this is controlled through the new -t option.
260e2207522Sjmmv
261e2207522Sjmmv* Change atf-sh to use atf-exec's -t option to control the test case's
262e2207522Sjmmv  timeouts, instead of doing it internally.  Same behavior as before, but
263e2207522Sjmmv  noticeably faster.
264e2207522Sjmmv
26512aa0b5aSjmmv* atf-exec's -g option and atf-killpg are gone due to the previous
26612aa0b5aSjmmv  change.
267e2207522Sjmmv
26812aa0b5aSjmmv* Added the atf-check(1) tool, a program that executes a given command
269edebbb8eSjmmv  and checks its exit code against a known value and allows the management
270edebbb8eSjmmv  of stdout and stderr in multiple ways.  This replaces the previous
271edebbb8eSjmmv  atf_check function in the atf-sh library and exposes this functionality
272edebbb8eSjmmv  to both atf-c and atf-c++.
273e2207522Sjmmv
274e2207522Sjmmv* Added the ATF_REQUIRE family of macros to the C interface.  These help
275e2207522Sjmmv  in checking for fatal test conditions.  The old ATF_CHECK macros now
276e2207522Sjmmv  perform non-fatal checks only.  I.e. by using ATF_CHECK, the test case
277e2207522Sjmmv  can now continue its execution and the failures will not be reported
278e2207522Sjmmv  until the end of the whole run.
279e2207522Sjmmv
28012aa0b5aSjmmv* Extended the amount of ATF_CHECK_* C macros with new ones to provide
28112aa0b5aSjmmv  more features to the developer.  These also have their corresponding
282e2207522Sjmmv  counterparts in the ATF_REQUIRE_* family.  The new macros (listing the
283e2207522Sjmmv  suffixes only) are: _EQ (replaces _EQUAL), _EQ_MSG, _STREQ and
284e2207522Sjmmv  _STREQ_MSG.
285e2207522Sjmmv
286edebbb8eSjmmv
28712aa0b5aSjmmvChanges in version 0.5
288edebbb8eSjmmv**********************
289e2207522Sjmmv
29012aa0b5aSjmmvExperimental version released on May 1st, 2008.
291e2207522Sjmmv
292e2207522Sjmmv* Clauses 3 and 4 of the BSD license used by the project were dropped.
293edebbb8eSjmmv  All the code is now under a 2-clause BSD license compatible with the GNU
294edebbb8eSjmmv  General Public License (GPL).
295e2207522Sjmmv
296e2207522Sjmmv* Added a C-only binding so that binary test programs do not need to be
297e2207522Sjmmv  tied to C++ at all.  This binding is now known as the atf-c library.
298e2207522Sjmmv
299e2207522Sjmmv* Renamed the C++ binding to atf-c++ for consistency with the new atf-c.
300e2207522Sjmmv
301e2207522Sjmmv* Renamed the POSIX shell binding to atf-sh for consistency with the new
302e2207522Sjmmv  atf-c and atf-c++.
303e2207522Sjmmv
30412aa0b5aSjmmv* Added a -w flag to test programs through which it is possible to
30512aa0b5aSjmmv  specify the work directory to be used.  This was possible in prior
306edebbb8eSjmmv  releases by defining the workdir configuration variable (-v workdir=...),
307edebbb8eSjmmv  but was a conceptually incorrect mechanism.
308e2207522Sjmmv
309e2207522Sjmmv* Test programs now preserve the execution order of test cases when they
310e2207522Sjmmv  are given in the command line.  Even those mentioned more than once are
311e2207522Sjmmv  executed multiple times to comply with the user's requests.
312e2207522Sjmmv
313edebbb8eSjmmv
31412aa0b5aSjmmvChanges in version 0.4
315edebbb8eSjmmv**********************
316e2207522Sjmmv
31712aa0b5aSjmmvExperimental version released on February 4th, 2008.
318e2207522Sjmmv
319e2207522Sjmmv* Added two new manual pages, atf-c++-api and atf-sh-api, describing the
320e2207522Sjmmv  C++ and POSIX shell interfaces used to write test programs.
321e2207522Sjmmv
322e2207522Sjmmv* Added a pkg-config file, useful to get the flags to build against the
323e2207522Sjmmv  C++ library or to easily detect the presence of ATF.
324e2207522Sjmmv
325e2207522Sjmmv* Added a way for test cases to require a specific architecture and/or
326e2207522Sjmmv  machine type through the new 'require.arch' and 'require.machine'
327e2207522Sjmmv  meta-data properties, respectively.
328e2207522Sjmmv
32912aa0b5aSjmmv* Added the 'timeout' property to test cases, useful to set an
33012aa0b5aSjmmv  upper-bound limit for the test's run time and thus prevent global test
33112aa0b5aSjmmv  program stalls due to the test case's misbehavior.
332e2207522Sjmmv
33312aa0b5aSjmmv* Added the atf-exec(1) internal utility, used to execute a command
33412aa0b5aSjmmv  after changing the process group it belongs to.
335e2207522Sjmmv
336e2207522Sjmmv* Added the atf-killpg(1) internal utility, used to kill process groups.
337e2207522Sjmmv
33812aa0b5aSjmmv* Multiple portability fixes.  Of special interest, full support for
339edebbb8eSjmmv  SunOS (Solaris Express Developer Edition 2007/09) using the Sun Studio 12
340edebbb8eSjmmv  C++ compiler.
341e2207522Sjmmv
34212aa0b5aSjmmv* Fixed a serious bug that prevented atf-run(1) from working at all
34312aa0b5aSjmmv  under Fedora 8 x86_64.  Due to the nature of the bug, other platforms
34412aa0b5aSjmmv  were likely affected too.
345e2207522Sjmmv
346edebbb8eSjmmv
34712aa0b5aSjmmvChanges in version 0.3
348edebbb8eSjmmv**********************
349e2207522Sjmmv
35012aa0b5aSjmmvExperimental version released on November 11th, 2007.
351e2207522Sjmmv
35212aa0b5aSjmmv* Added XML output support to atf-report.  This is accompanied by a DTD
353edebbb8eSjmmv  for the format's structure and sample XSLT/CSS files to post-process this
354edebbb8eSjmmv  output and convert it to a plain HTML report.
355e2207522Sjmmv
356e2207522Sjmmv* Changed atf-run to add system information to the report it generates.
357e2207522Sjmmv  This is currently used by atf-report's XML output only, and is later
358edebbb8eSjmmv  printed in the HTML reports in a nice and useful summary table.  The user
359edebbb8eSjmmv  and system administrator are allowed to tune this feature by means of
360edebbb8eSjmmv  hooks.
361e2207522Sjmmv
36212aa0b5aSjmmv* Removed the test cases' 'isolated' property.  This was intended to
363edebbb8eSjmmv  avoid touching the file system at all when running the related test case,
364edebbb8eSjmmv  but this has not been true for a long while: some control files are
365edebbb8eSjmmv  unconditionally required for several purposes, and we cannot easily get
366edebbb8eSjmmv  rid of them.  This way we remove several critical and delicate pieces of
367edebbb8eSjmmv  code.
368e2207522Sjmmv
369e2207522Sjmmv* Improved atf-report's CSV output format to include information about
370e2207522Sjmmv  test programs too.
371e2207522Sjmmv
372e2207522Sjmmv* Fixed the tests that used atf-compile to not require this tool as a
373e2207522Sjmmv  helper.  Avoids systems without build-time utilities to skip many tests
374e2207522Sjmmv  that could otherwise be run.  (E.g. NetBSD without the comp.tgz set
375e2207522Sjmmv  installed.)
376e2207522Sjmmv
377e2207522Sjmmv* Many general cleanups: Fixed many pieces of code marked as ugly and/or
378e2207522Sjmmv  incomplete.
379e2207522Sjmmv
380edebbb8eSjmmv
38112aa0b5aSjmmvChanges in version 0.2
382edebbb8eSjmmv**********************
383e2207522Sjmmv
38412aa0b5aSjmmvExperimental version released on September 20th, 2007.
385e2207522Sjmmv
386e2207522Sjmmv* Test cases now get a known umask on entry.
387e2207522Sjmmv
388edebbb8eSjmmv* atf-run now detects many unexpected failures caused by test programs and
389edebbb8eSjmmv  reports them as bogus tests.  atf-report is able to handle these new
390edebbb8eSjmmv  errors and nicely reports them to the user.
391e2207522Sjmmv
39212aa0b5aSjmmv* All the data formats read and written by the tools have been
393edebbb8eSjmmv  documented and cleaned up.  These include those grammars that define how
394edebbb8eSjmmv  the different components communicate with each other as well as the
395edebbb8eSjmmv  format of files written by the developers and users: the Atffiles and the
396edebbb8eSjmmv  configuration files.
397e2207522Sjmmv
39812aa0b5aSjmmv* Added the atf-version tool, a utility that displays information about
39912aa0b5aSjmmv  the currently installed version of ATF.
400e2207522Sjmmv
401e2207522Sjmmv* Test cases can now define an optional cleanup routine to undo their
402e2207522Sjmmv  actions regardless of their exit status.
403e2207522Sjmmv
40412aa0b5aSjmmv* atf-report now summarizes the list of failed (bogus) test programs
40512aa0b5aSjmmv  when using the ticker output format.
406e2207522Sjmmv
407e2207522Sjmmv* Test programs now capture some termination signals and clean up any
408e2207522Sjmmv  temporary files before exiting the program.
409e2207522Sjmmv
410e2207522Sjmmv* Multiple bug fixes and improvements all around.
411e2207522Sjmmv
412edebbb8eSjmmv
41312aa0b5aSjmmvChanges in version 0.1
414edebbb8eSjmmv**********************
415e2207522Sjmmv
41612aa0b5aSjmmvExperimental version released on August 20th, 2007.
417e2207522Sjmmv
418e2207522Sjmmv* First public version.  This was released coinciding with the end of the
419e2207522Sjmmv  Google Summer of Code 2007 program.
420edebbb8eSjmmv
421edebbb8eSjmmv
422edebbb8eSjmmv===========================================================================
423edebbb8eSjmmvvim: filetype=text:textwidth=75:expandtab:shiftwidth=2:softtabstop=2
424