This page contains the complete list of all news items for this project. They are all kept for historical reference.
To keep informed of new news about ATF, subscribe to the RSS feed from your preferred feed reader.
ATF 0.15 released
Posted by jmmv on Mon, 16 Jan 2012 19:30:00 GMT | Permanent link
The release 0.15 of ATF is now available for public consumption!
This new release comes with a few performance improvements, some bug fixes, new M4 macros for easier integration of ATF into other projects and new features in atf-run. Remember that atf-run and atf-report are maintenance mode in favor of Kyua.
Check out the 0.15 release page for the download links and a list of the major changes that went into this release.
ATF 0.14 released
Posted by jmmv on Tue, 14 Jun 2011 14:30:00 GMT | Permanent link
The release 0.14 of ATF is now available for public consumption!
This new release comes with some feature additions, particularly in atf-sh, and improves the test case isolation in a couple of areas. Remember that atf-run and atf-report are now in maintenance mode in favor of Kyua.
Check out the 0.14 release page for the download links and a list of the major changes that went into this release.
ATF 0.13 released
Posted by jmmv on Wed, 31 Mar 2011 17:15:00 GMT | Permanent link
The release 0.13 of ATF is now available for public consumption!
This new release comes with important bug fixes, a few feature additions for atf-c++ and atf-run and officially declares atf-run and atf-report as being in maintenance mode in favor of Kyua.
Check out the 0.13 release page for the download links and a list of the major changes that went into this release.
Bug tracker decommissioned
Posted by jmmv on Tue, 30 Nov 2010 17:30:00 GMT | Permanent link
Maintaining a custom Trac instance has proven to be more a hassle than else: the machine it was running on was very slow, there have been constant problems with spam, I can't promise the availability of the installation for much longer and I'm trying to get more time for coding the new codebase.
Therefore, the ad-hoc bug tracker is gone for good. In its place, bugs will be located in the NetBSD Gnats and to-do items will be recorded in the TODO file along the source tree... just as things used to be in the past.
For details, please see the discussion on the mailing list.
Introducing Kyua (think of it as ATF 2.0)
Posted by jmmv on Sat, 13 Nov 2010 11:50:00 GMT | Permanent link
Kyua is a project that aims to reimplement ATF in a progressive manner. The rewrite will focus first on the most pain points (aka atf-run) and will continue with the bindings. Compatibility will be maintained along the way to make the transition painless.
Another, very important point of Kyua is to make the project more accessible to users and developers by dropping niche development tools and using widespread project hosting (Google Code) and tools (Subversion).
For details, please see the announcement to the mailing list.
ATF 0.12 released
Posted by jmmv on Wed, 07 Nov 2010 13:30:00 GMT | Permanent link
The release 0.12 of ATF is now available for public consumption!
This new release comes with several little improvements on the atf-c++ and atf-c interfaces, eases the execution of unprivileged tests when running as root and deprecates the use.fs property.
Check out the 0.12 release page for the download links and a list of the major changes that went into this release.
ATF 0.11 released
Posted by jmmv on Wed, 20 Oct 2010 09:00:00 GMT | Permanent link
After a long quiet period, the release 0.11 of ATF is now available for public consumption!
This new release comes with more internal reorganizations of the code to remove private implementation details from the public API and provides some polishments to the tools and libraries. I expect that future releases will avoid such big rototills as the ones that were part of this and previous releases, which will simplify the release process quite a bit.
Check out the 0.11 release page for the download links and a list of the major changes that went into this release.
ATF 0.10 released
Posted by jmmv on Thu, 02 Jul 2010 16:07:00 GMT | Permanent link
It is my pleasure to announce that the 0.10 release of ATF is now available!
This new version comes with several new features and lots of code simplifications to make the distribution more lightweight and easier to manage. Of special interest is the addition of expected failures, a feature required by the NetBSD test suite to get clean passes.
Check out the 0.10 release page for the download links and a list of the major changes that went into this release.
ATF 0.9 released
Posted by jmmv on Thu, 03 Jun 2010 16:35:00 GMT | Permanent link
Ladies and gentlemen, I am happy to announce the availability of the 0.9 formal release of ATF!
It has only been a month since the last release, and releasing again now feels premature given the past frequency of releases. However, I would really like to reach a point of frequent releases as that adds dynamism to the project. Also, it looks like the Trac installation and the milestone planning in it do help in getting releases out of the door in a more agile manner.
That said, the list of changes is not impressive but comes with some simplifications and isolation improvements:
Added atf-sh, an interpreter to process test programs written using the shell API. This is not really a shell interpreter by itself though: it is just a wrapper around the system shell that eases the loading of the necessary ATF libraries.
Removed atf-compile in favour of atf-sh.
Added the use.fs metadata property to test case, which is used to specify which test cases require file system access. This is to highlight dependencies on external resources more clearly and to speed up the execution of test suites by skipping the creation of many unnecessary work directories.
Fixed test programs to get a sane default value for their source directory. This means that it should not be necessary any more to pass -s when running test programs that do not live in the current directory.
Defining test case headers became optional. This is trivial to achieve in shell-based tests but a bit ugly in C and C++. In C, use the new ATF_TC_WITHOUT_HEAD macro to define the test case, and in C++ use ATF_TEST_CASE_WITHOUT_HEAD.
The SHA1 checksum for atf-0.9.tar.gz is: 10a3dee3543ee9e8b5d2b67bcd3f4b2a8921f21f
And, as the previous news entry mentions, what has kept me busy the most during the past month has been the new web site.
Web site revamped
Posted by jmmv on Thu, 03 Jun 2010 16:35:00 GMT | Permanent link
Coinciding with the release of ATF 0.9, the project is inaugurating a completely revamped web site! The new look is intended to feel more modern, the new layout is aimed at simplifying the navigation experience and the new build files will simplify maintenance.
Along this reorganization, new contents have been added too. For example, there is now more information on how to fill/query bugs, a shiny-new FAQ and more direct access to the download of the latest release.
Bear with us if you find any breakage and do not hesitate to report it! Also, please do send us any suggestions you may have!
New atf-log mailing list
Posted by jmmv on Thu, 13 May 2010 17:20:00 GMT | Permanent link
Following the configuration of a new bug tracker for ATF, I (well, the NetBSD administrators) have set up a new mailing list called atf-log. This mailing list will receive a notification on every change to the source tree and on every change to the tickets in the bug tracker.
Disclaimer: I am not completely convinced that the email submissions are bulletproof. On the one hand, the monotone mail notification scripts are quite delicate; on the other, my setup is not completely correct so there may be false positives in some spam filters. However, as the recent activity shows, things seems to work.
Visit the mailing lists page for more details.
New bug tracker available
Posted by jmmv on Fri, 9 May 2010 19:30:00 GMT | Permanent link
After a full day of work, I have been able to set up an experimental Trac server to provide a decent bug/task tracking system for ATF.
Why Trac? Well, first because I am familiar with Python and thus I will be able to better manage it. Second because the Gnats system used by NetBSD is... suboptimal to put it mildly (I don't dare to use it for ATF). Third because, after experimenting with it, I like its feature planning facilities, the bug tracker, and the command line interface. And fourth, because it is available from the NetBSD packaging system.
Bear in mind that this experimental server is running from my home connection, which is quite flaky at the moment. The server is not really fast, and this Python installation overloads it quite a bit. Also, the setup uses a self-signed certificate that you will need to accept.
All that said, I've migrated most of the items from the to-do list previously located in the source code to the new bug tracker and killed the file in the source tree. It was unmanageable and really out of date.
If you are curious what the future will bring, check the tickets planned for the 0.9 release.
Hope you find this new bug tracker as useful as I will!
ATF 0.8 released
Posted by jmmv on Fri, 7 May 2010 15:06:00 GMT | Permanent link
Say hello to the nofork release, ATF 0.8! This new version bundles major changes to move the test case isolation from the test programs to the atf-run utility. The benefits: simpler and faster code, easier to debug tests. The downsides: some backwards-incompatible changes. However, fear this not: the NetBSD test suite runs unmodified after updating the system to this new version.
Here comes the list of major changes:
Test programs no longer run several test cases in a row. The execution of a test program now requires a test case name, and that single test case is executed. To execute several test cases, use the atf-run utility as usual.
Test programs no longer fork a subprocess to isolate the execution of test cases. They run the test case code in-process, and a crash of the test case will result in a crash of the test program. This is to ease debugging of faulty test cases.
Test programs no longer isolate their test cases. This means that they will not create temporary directories nor sanitize the environment any more. Yes: running a test case that depends on system state by hand will most likely yield different results depending on where (machine, directory, user environment, etc.) it is run. Isolation has been moved to atf-run.
Test programs no longer print a cryptic format (application/X-atf-tcs) on a special file channel. They can now print whatever they want on the screen. Because test programs can now only run one test case every time, providing controlled output is not necessary any more.
Test programs no longer write their status into a special file descriptor. Instead, they create a file with the results, which is later parsed by atf-run. This changes the semantics of the -r flag.
atf-run has been adjusted to perform the test case isolation. As a result, there is now a single canonical place that implements the isolation of test caes. In previous releases, the three language bindings (C, C++ and shell) had to be kept in sync with each other (read: not a nice thing to do at all). As a side effect of this change, writing bindings for other languages will be much, much easier from now on.
atf-run forks test programs on a test case basis, instead of on a test program basis as it did before. This is to provide the test case isolation that was before implemented by the test programs themselves.
Removed the atf-exec tool. This was used to implement test case isolation in atf-sh, but it is now unnecessary.
It is now optional to define the descr meta-data property. It has been proven to be mostly useless, because test cases often carry a descriptive name of their own.
The SHA1 checksum for atf-0.8.tar.gz is: a86416081f0381eaab2d7f1c129202f282335afd
Go to the downloads page to get it!
Restricting supported platforms
Posted by jmmv on Tue, 4 May 2010 12:00:00 GMT | Permanent link
Up until now, every time I have put out a new release, I have run the code base through a fairly reasonable set of platforms to make sure that the code builds and all tests pass. This set of platforms has been usually composed of several Linux systems (Debian, Ubuntu, Fedora, OpenSuSE), several BSD systems (FreeBSD, NetBSD), Solaris and Mac OS X, both in their 32-bit and 64-bit variants.
While running the release through this testing process is nice and something that all projects should go through, the whole thing is complex and takes lots of effort. Typically, this involves setting up virtual machines for all of the supported platforms, making sure my clunky automation scripts for platform testing still work and, once this is done, using these virtual machines to test a release candidate, discover bugs and fix them. Of course, every time a bug is fixed, a new release candidate has to be rolled out and it needs to go through all the testing from the very beginning. (Note: these release candidates have always been internal snapshots of the source tree, nothing visible.)
The complexity and slowness of this process is one of the major blocker issues to put out a new release. Every time I ponder releasing a new version, I see all this work ahead and just postpone the release indefinitely. Considering the current user base of ATF, this is nonsense.
Knowing that ATF is currently only used by NetBSD and that there are no packages for any other operating system, I am officially dropping all this QA process in an attempt to make the release process more agile. From now on, new ATF releases will go through testing only on the platforms I have easy access to: no more, no less. This will probably mean NetBSD, Mac OS X and some sort of Linux. Portability bugs found by users on other platforms will be gladly fixed, but this will happen a posteriori.
I am sorry to have to do this, but I seriously need to make a better job at publishing new releases. 0.8 is around the corner and I really want to get it out without having to deal with all of this nightmare. I expect this QA process to come back once the project is much more mature though. But for now, it is gone.
nofork branch merged into mainline
Posted by jmmv on Sun, 2 May 2010 15:00:00 GMT | Permanent link
After fixing one of the major regressions introduced by the nofork branch, I have just merged that branch into mainline and deprecated it. This means that the experiment performed in the nofork branch has been successful and will be part of the next release! If you are wondering what that regression was, it was the support to kill test cases that time out and signal them as failed; this now works at the atf-run level.
There is still an important regression left, but I do not consider it a blocker issue. Hitting ctrl+c when running a test suite will now not correctly clean up all temporary files. I may just release a new version soon with this regression in it and just proceed to fix it later on.
Of course, there are also several things to be cleaned such as the interface of test programs, but this can also come later. At the moment, things seem to work pretty well and, after I verify that the current code base works well with the current NetBSD test suite, expect a fresh release soon!
ATF is in Google Summer of Code 2010
Posted by jmmv on Wed, 24 Mar 2010 19:00:00 GMT | Permanent link
Time flies... ATF was a project that I started during the Google Summer of Code 2007 program. It was a successful project that became part of the NetBSD operating system right after the program ended. But, more importantly, the project is still active (albeit with slow development in some periods) and in the need help.
I am pleased to announce that ATF is part of Google Summer of Code 2010! Yes, you read well! ATF is a small project but it has the honor of being managed by The NetBSD Foundation, an organization that has been selected to participate once again, for the 6th year in a row, in the program.
If you would like to contribute to the development of this testing framework, do not hesitate to apply! We have the following two project proposals but, of course, you can also come up with your own ideas:
Optimize and speed-up ATF: I, myself, am spending a lot of efforts on this these days, but help would be welcome. There are many little things that can be done to the codebase to speed it up and I'll be glad to guide you through them.
Reorganize and improve modularity: Sincerely, some pieces of the code are in really bad shape. They require refactoring and finer-grained unit testing.
Take a look at the linked project proposals for details and do not hesitate to contact us for further information.
Introducing the nofork branch
Posted by jmmv on Sat, 06 Mar 2010 19:16:00 GMT | Permanent link
Yesterday, I announced the org.NetBSD.atf.src.nofork branch, an experimental prototype to remove the forking and isolation of test cases from within test programs (don't worry, the isolation is now in atf-run). This feature has been highly requested because the previous design of test programs gets in the way when attempting to debug a failing test case. The new approach makes debugging easier and simplifies, a lot, the internal ATF code.
For more details, please refer to the announcement posted to the atf-devel mailing list. I hope this new code base will be the foundation of the 0.8 release.
ATF 0.7 released
Posted by jmmv on Tue, 22 Dec 2009 12:37:00 GMT | Permanent link
The long-awaited 0.7 release is finally here! It has been a very long time since 0.6 and this release does not carry some of the improvements that were expected. I am publishing this now to give exposure to the new internals and to free me from blocking changes, thus finally being able to work on new features for 0.8.
If you are wondering why it takes so long between releases, here is why: preparing a release is a very time-consuming process and it is hard to convince oneself that it is the moment to do so. If it wasn't for this, trust me, there would be more frequent releases because the mainstream code is rarely broken to the point of being unusable.
Without further ado, the major changes in this release are:
Added build-time checks to atf-c and atf-c++. A binding for atf-sh will come later.
Migrated all build-time checks for header files to proper ATF tests. This demonstrates the use of the new feature described above.
Added an internal API for child process management.
Converted all plain-text distribution documents to a Docbook canonical version, and include pre-generated plain text and HTML copies in the distribution file.
Simplified the contents of the Makefile.am by regenerating it from a canonical Makefile.am.m4 source. As a side-effect, some dependency specifications were fixed.
Migrated all checks from the check target to installcheck, as these require ATF to be installed.
Fixed sign comparison mismatches triggered by the now-enabled -Wsign-compare.
Fixed many memory and object leaks.
The checksums for atf-0.7.tar.gz are:
MD5: e0367c184a6d5b3085e3258ca0520610
SHA1: a77edf79576039374a3d88872b9059ac5f6d25aa
SHA512: a8efaa13 4d73554c fa3b5b59 94fdab6d 2ca7d943 d31058f8 318c6232 ea6f39fa 8c6496b9 bf0e318b 9a673f41 a2b58b2b 3ea36b46 3e98ac8c f3b125f0 3caa9e9c
Go to the downloads page to get it!
ATF 0.6 released
Posted by jmmv on Sun, 18 Jan 2009 20:20:00 GMT | Permanent link
After a very long quiet period, I am happy to announce the 0.6 release of ATF. The major goal of this release is to integrate the changes made to the source code by Lukasz Strzygowski as part of his Google Summer of Code 2008 project. Integrating these changes into a formal release is a prerequirement for later integration of his NetBSD-specific work on regression tests into the NetBSD source tree.
The major changes in this release are:
Make atf-exec be able to kill its child process after a certain period of time; this is controlled through the new -t option.
Change atf-sh to use atf-exec's -t option to control the test case's timeouts, instead of doing it internally. Same behavior as before, but noticeably faster.
atf-exec's -g option and atf-killpg are gone due to the previous change.
Added the atf-check(1) tool, a program that executes a given command and checks its exit code against a known value and allows the management of stdout and stderr in multiple ways. This replaces the previous atf_check function in the atf-sh library and exposes this functionality to both atf-c and atf-c++.
Added the ATF_REQUIRE family of macros to the C interface. These help in checking for fatal test conditions. The old ATF_CHECK macros now perform non-fatal checks only. I.e. by using ATF_CHECK, the test case can now continue its execution and the failures will not be reported until the end of the whole run.
Extended the amount of ATF_CHECK_* C macros with new ones to provide more features to the developer. These also have their corresponding counterparts in the ATF_REQUIRE_* family. The new macros (listing the suffixes only) are: _EQ (replaces _EQUAL), _EQ_MSG, _STREQ and _STREQ_MSG.
The checksums for atf-0.6.tar.gz are:
MD5: 55cf06177889dbe1891c766dc5bf5b94
SHA1: 311b277477bae7dab8e634f7c17cce25a8664012
SHA512: 4aa980c5 545e606d 1b660f05 a8eae399 12830606 9703ed09 5f6d30a3 a963af77 ea53a8a7 daada27c 8e77f13b a385ce28 70472791 ef2bf81f f9385fda 800525db
Go to the downloads page to get it!
ATF 0.5 released
Posted by jmmv on Thu, 01 May 2008 17:00:00 GMT | Permanent link
I am very pleased to announce the availability of ATF's fifth public release, 0.5, which is probably the one with the most code changes so far. The main goal of this release is to provide a C-only binding to write test cases, completely freeing the developers of the use of C++. This new C library weights at around 7000 lines and the C++ library has lost around 1000 due to the fact that it now reuses code in the C library. Another important change of this release is the relicensing of the complete code base under a 2-clause BSD license.
The major changes in this release are:
Clauses 3 and 4 of the BSD license used by the project were dropped. All the code is now under a 2-clause BSD license compatible with the GNU General Public License (GPL). Read the new license for further details.
Added a C-only binding so that binary test programs do not need to be tied to C++ at all. This binding is now known as the atf-c library.
Renamed the C++ binding to atf-c++ for consistency with the new atf-c.
Renamed the POSIX shell binding to atf-sh for consistency with the new atf-c and atf-c++.
Added a -w flag to test programs through which it is possible to specify the work directory to be used. This was possible in prior releases by defining the workdir configuration variable (-v workdir=...), but was a conceptually incorrect mechanism.
Test programs now preserve the execution order of test cases when they are given in the command line. Even those mentioned more than once are executed multiple times to comply with the user's requests.
The checksums for atf-0.5.tar.gz are:
MD5: b1d078b716e344bcf65f735cd74dc5d8
SHA1: 63cb8541608518cdb214a10e71228d3e8c8af514
SHA512: f78cce89 bfa34810 9e4bbd5c 20ea1930 8f8e3c4a 835b22cc 60e0e300 d243f98a ab4180ac 28673767 f34bbddf 1ad36acc 7569f483 0773d391 c5a38df4 1d6883a2
Go to the downloads page to get it!
C-only library for test programs
Posted by jmmv on Mon, 18 Feb 2008 11:15:00 GMT | Permanent link
The branch org.NetBSD.atf.src.c has just hit the public repository. This contains a preliminary implementation of a C-only library for test programs. It will allow developers using ATF in their projects to restrict their test programs to the C language without having to use C++ at all, which is a highly desired feature in, for example, the NetBSD source tree.
The main focus of 0.5 will be the stabilization of this branch and its integration into mainline, assuming there is no important bug fix to roll off before this happens.
See some more details in this atf-devel post. Feel free to raise your comments there.
ATF 0.4 released
Posted by jmmv on Thu, 04 Feb 2008 21:00:00 GMT | Permanent link
I am very pleased to announce the availability of ATF's fourth public release, 0.4. The initial main goal of this release was to provide some developer-specific documentation, but once I attacked the implementation of the features planned in the roadmap, things got more complex. In the end, this release brings several new features and lots of portability fixes.
The major changes in this release are:
Added two new manual pages, atf-c++-api and atf-sh-api, describing the C++ and POSIX shell interfaces used to write test programs.
Added a pkg-config file, useful to get the flags to build against the C++ library or to easily detect the presence of ATF.
Added a way for test cases to require a specific architecture and/or machine type through the new require.arch and require.machine meta-data properties, respectively.
Added the timeout property to test cases, useful to set an upper-bound limit for the test's run time and thus prevent global test program stalls due to the test case's misbehavior.
Added the atf-exec(1) internal utility, used to execute a command after changing the process group it belongs to.
Added the atf-killpg(1) internal utility, used to kill process groups.
Multiple portability fixes. Of special interest, full support for SunOS (Solaris Express Developer Edition 2007/09) using the Sun Studio 12 C++ compiler.
Fixed a serious bug that prevented atf-run(1) from working at all under Fedora 8 x86_64. Due to the nature of the bug, other platforms were likely affected too.
The checksums for atf-0.4.tar.gz are:
MD5: df5b8794577cf962ccb7a0434644c9a3
SHA1: dce4885a2f2d55d73d5f248fe482d5ac3101ce86
SHA512: 93bb92bb 50784092 5ba10613 240360e6 eef605c9 e1eafff7 c0bcdc4b b27c27cd b272d479 cedf3bee b37d7550 bcb58ab5 c1fdb893 04492277 9bec29c8 4c9659ce
Go to the downloads page to get it!
ATF imported into NetBSD-current
Posted by jmmv on Thu, 12 Nov 2007 21:20:00 GMT | Permanent link
As I mentioned yesterday, ATF was hopefully ready to be integrated into NetBSD with the release of the 0.3 version. And it was! As there seem to be no serious problems with it, and as some people were adding pressure to get the thing integrated, I merged ATF into the NetBSD-current source tree today. Or, in other words, ATF will be part of NetBSD 5.0!
This marks a big milestone in the project, because ATF is now really put into use by an important and huge project: The NetBSD Operating System. This will hopefully boost interest in ATF and raise external contributions to either the core framework and/or to the NetBSD-specific tests.
For more details please refer to my official announcement at the tech-userlevel mailing list or to the news item at the NetBSD site.
ATF 0.3 released
Posted by jmmv on Thu, 11 Nov 2007 21:45:00 GMT | Permanent link
I am very pleased to announce the availability of ATF's third public release, 0.3. This release marks a big milestone for the ATF project: it is planned to be the first one to be integrated into the NetBSD source tree. Integration into the NetBSD operating system was the original goal of the ATF project as part of a Google Summer of Code 2007 project but, as it was not good enough when the program ended (or at least I considered it was not ready), integration was delayed. It is now polished enough to take make this important step forward!
The major changes in this release are:
Added XML output support to atf-report. This is accompanied by a DTD for the format's structure and sample XSLT/CSS files to post-process this output and convert it to a plain HTML report.
Changed atf-run to add system information to the report it generates. This is currently used by atf-report's XML output only, and is later printed in the HTML reports in a nice and useful summary table. The user and system administrator are allowed to tune this feature by means of hooks.
Removed the test cases' isolated property. This was intended to avoid touching the file system at all when running the related test case, but this has not been true for a long while: some control files are unconditionally required for several purposes, and we cannot easily get rid of them. This way we remove several critical and delicate pieces of code.
Improved atf-report's CSV output format to include information about test programs too.
Fixed the tests that used atf-compile to not require this tool as a helper. Avoids systems without build-time utilities to skip many tests that could otherwise be run. (E.g. NetBSD without the comp.tgz set installed.)
Many general cleanups: Fixed many pieces of code marked as ugly and/or incomplete.
The checksums for atf-0.3.tar.gz are:
MD5: b01dde98a3950f4cbdb914197455dab7
SHA1: 3734ed79d6116e4ec3c90ca2cf5aca5bac86e5a1
SHA512: ae353c4a b1356bea 92dbbf9f 53a8c1fb e381fffb e4f09959 3580926d 242be393 25043592 440a64d1 b14be895 ebef8ded 05716c89 04cc309c a6031933 8fc3c7ba
Go to the downloads page to get it!
ATF 0.2 released
Posted by jmmv on Thu, 20 Sep 2007 23:15:00 GMT | Permanent link
Exactly a month ago, the Google Summer of Code 2007 program concluded and, coinciding with that date, I published ATF 0.1. Development has continued since then and I am now pleased to announce the availability of the ATF 0.2 release, the first release outside of the program; hopefully many more will come. This new version has still many rough edges but given that the goals planned for it have been accomplished, I felt it was time to make it public.
The major changes in this release are:
Test cases now get a known umask on entry.
atf-run now detects many unexpected failures caused by test programs and reports them as bogus tests. atf-report is able to handle these new errors and nicely reports them to the user.
All the data formats read and written by the tools have been documented and cleaned up. These include those grammars that define how the different components communicate with each other as well as the format of files written by the developers and users: the Atffiles and the configuration files.
Added the atf-version tool, a utility that displays information about the currently installed version of ATF.
Test cases can now define an optional cleanup routine to undo their actions regardless of their exit status.
atf-report now summarizes the list of failed (bogus) test programs when using the ticker output format.
Test programs now capture some termination signals and clean up any temporary files before exiting the program.
Multiple bug fixes and improvements all around.
For a list of supported platforms in this release please see the downloads page. From now on this information will be kept there.
The checksums for atf-0.2.tar.gz are:
MD5: 163331daef2a41caafda9f08dc7bf5cd
SHA1: f31cf24df78c194b63c0694c0f1a7b2f7bb0c9b6
SHA512: d6edbba3 15da21fc 9b8c6318 18c42aa1 0dc44d00 2af045bf 4bfd1e21 835912b1 5914b383 c84d32d6 48c4e421 10ed5049 460a3627 9016f14e e84e2905 37adb98a
Go to the downloads page to get it!
Second preview of NetBSD with ATF
Posted by jmmv on Mon, 20 Aug 2007 21:40:34 GMT | Permanent link
I have just updated the first preview of NetBSD-current release builds with ATF merged in to match the ATF 0.1 release published today. As already stated in the old news item: These will ease testing to the casual user who is interested in this project because he will not need to mess with patches to the NetBSD source tree nor rebuild a full release, which is a delicate and slow process. For the best experience, these releases are meant to be installed from scratch even though you can also do an upgrade of a current installation. They will give you a preview of how a NetBSD installation will look like once ATF is imported into it; we are not sure when that will happen, though.
By the way, ATF 0.1 is also in pkgsrc as devel/atf. This may be an easier way for you to try it, even though you will not get the NetBSD-specific tests.
For more details see my post to the NetBSD's current-users mailing list.
ATF 0.1 released
Posted by jmmv on Mon, 20 Aug 2007 13:01:00 GMT | Permanent link
I am very pleased to announce the first public release of ATF, numbered 0.1 as you may expect. This release is being published to coincide with the end of the Google Summer of Code 2007, a program that sponsored this initial work in the project. Development will continue from now on with the primary goal of integrating ATF into the NetBSD operating system. But, of course, feel free to adopt ATF in your own applications.
This release has been tested under NetBSD-current (4.99.29), NetBSD 4.0_BETA2, Mac OS X 10.4.10 and openSUSE 10.2.
The checksums for atf-0.1.tar.gz are:
Go to the downloads page to get it!
New mailing list: atf-devel
Posted by jmmv on Sat, 18 Aug 2007 16:32:12 GMT | Permanent link
In preparation for the first public release of ATF, which will be released on the 20th, the project has got its first mailing list addressed at covering development-related topics and, at the moment, user-specific questions too. Its name is atf-devel, and you can find more details about it in the mailing lists page.
The description for the list reads:
atf-devel is the mailing list to discuss development issues related to the Automated Testing Framework (ATF) and is not tied to any specific project using ATF. Given that ATF is still very young and that the list is low-traffic, this is also the appropriate place to ask user-related questions. Inquiries related to the integration of ATF into NetBSD should be directed to tech-kern or tech-userlevel instead.
Many thanks to S.P.Zeidler from the NetBSD administration team for setting this up so quickly.
First preview of NetBSD with ATF
Posted by jmmv on Wed, 8 Aug 2007 01:52:12 GMT | Permanent link
I have just uploaded some NetBSD-current release builds with ATF merged in. These will ease testing to the casual user who is interested in this project because he will not need to mess with patches to the NetBSD source tree nor rebuild a full release, which is a delicate and slow process. For the best experience, these releases are meant to be installed from scratch even though you can also do an upgrade of a current installation. They will give you a preview of how a NetBSD installation will look like once ATF 0.1 is made public, which should happen later this month.
For more details see my post to the NetBSD's current-users mailing list.
Web site launched
Posted by jmmv on Sun, 16 Jul 2007 08:00:00 GMT | Permanent link
The official web site for ATF was launched. The old page will live until the Google Summer of Code 2007 program is over. If you ever visited the web site of the now-dead Buildtool project, this page will look very familiar. I did not want to rewrite everything from scratch, so I just copied several files from there, modified them a bit and liked the results.
Oh, and by the way, ATF has also got a logo! See it in the top-left corner of the page. It is pretty simple and may be replaced if somebody else comes up with a better one. But it is cool-enough for now :-)
Code made public
Posted by jmmv on Tue, 10 Jul 2007 17:00:00 GMT | Permanent link
ATF's code has been made public just in time for the Summer of Code 2007 midterm evaluation. You can find more information on how to access these sources (in early stages of development) at the repository page.
ATF selected as a Google Summer of Code 2007 project
Posted by jmmv on Thu, 12 Apr 2007 10:00:00 GMT | Permanent link
NetBSD was in the need of a testing framework to replace its current home-grown tests. ATF was presented as a project proposal to resolve these needs, and Julio M. Merino Vidal (the one writing these lines :-) was selected to work on it. Stay tuned for further news.