For more details, please read the full announcement in the NetBSD blog or my post in the current-users mailing list.
Showing posts with label announce. Show all posts
Showing posts with label announce. Show all posts
Thursday, February 28, 2013
Initial Kyua import into NetBSD done
I am very happy to announce that the initial import of Kyua into the NetBSD source tree is complete! It has been a really long journey and this is the first step towards completion. No, this is nowhere done yet: while the code is in the tree, there is some more integration work to be done.
Friday, February 22, 2013
Kyua 0.6 released
After a really long wait —wow, it has been 8 months since 0.5; way too long— Kyua 0.6 is finally out!
This release brings in tons of changes, and is the release that will go into the NetBSD tree this weekend as soon as I finish doing some local testing of the integration changes. Many of the changes in this release are the result of the user feedback gathered from the proposal to import the code into NetBSD.
For the full list of changes, please see the kyua-cli-0.6 release file page.
The pkgsrc packages have already been updated to this new version and the update in Fedora is blocked by the review of the kyua-testers package. Help in the latter appreciated!
This release brings in tons of changes, and is the release that will go into the NetBSD tree this weekend as soon as I finish doing some local testing of the integration changes. Many of the changes in this release are the result of the user feedback gathered from the proposal to import the code into NetBSD.
For the full list of changes, please see the kyua-cli-0.6 release file page.
The pkgsrc packages have already been updated to this new version and the update in Fedora is blocked by the review of the kyua-testers package. Help in the latter appreciated!
Thursday, December 27, 2012
Initial kyua-testers code published
Three months, a hurricane and an apartment move after the proposal to modularize testers as independent binaries, I am pleased to announce the publication of the initial code implementing such proposal! It has been a long way full of interrupts, but this marks a major milestone in the development of Kyua.
The code for the independent testers can be found in the new kyua-testers module, which weights at ~10K lines of C code (yep, no C++) and currently provides testers for ATF-based and old-style (framework-less) test programs. As the documentation describes, the goal of these programs is to provide a scriptable and generic interface to run diverse test programs. This provides the ability to: first, plug new testers dynamically into kyua(1)(e.g. imagine a new tester for googletest-based test programs); and, second, to simplify the code of the frontend by removing tricky low-level code so that, potentially, most of kyua(1) could be latter rewritten in Lua.
The changes to make kyua-cli use kyua-testers are now in a separate branch of kyua-cli called testers, which drops ~4K lines of C++ code (much more slaying to come). While these changes already work and do not appear to introduce functional regressions, there are still two major issues to fix:
The code for the independent testers can be found in the new kyua-testers module, which weights at ~10K lines of C code (yep, no C++) and currently provides testers for ATF-based and old-style (framework-less) test programs. As the documentation describes, the goal of these programs is to provide a scriptable and generic interface to run diverse test programs. This provides the ability to: first, plug new testers dynamically into kyua(1)(e.g. imagine a new tester for googletest-based test programs); and, second, to simplify the code of the frontend by removing tricky low-level code so that, potentially, most of kyua(1) could be latter rewritten in Lua.
The changes to make kyua-cli use kyua-testers are now in a separate branch of kyua-cli called testers, which drops ~4K lines of C++ code (much more slaying to come). While these changes already work and do not appear to introduce functional regressions, there are still two major issues to fix:
- The first pending item is to address a serious performance regression in kyua report. This regression is understandable considering how horrendous the database querying code is and the generalization of the database schema that went in with this refactoring. Conceptually easy to fix, but the database-backing code needs some serious cleanup.
- The second pending item is to improve the code in kyua-cli to execute the testers, which in turn will obsolete —and thus enable the removal of— lots of nasty and unnecessary abstractions. The current implementation to do this has been a hack of mine in an attempt to get things to work as quickly and as unobtrusively as possible. Now that the code is in place and that all the tests pass, it will be easier to reorganize the code.
If you inspect the code, you will realize that the engine/atf_iface/ and engine/plain_iface/ directories of kyua-cli are now gone. This is a big win because the abstractions in kyua-cli (those representing test programs, test cases and test results) are now really unaware of the specific interface implemented by the test programs being executed.
As soon as the two above items are addressed, I will start evaluating the merge of the testers branch into master, which should unblock the integration of Kyua into NetBSD! Stay tuned.
Tuesday, July 10, 2012
Kyua 0.5 released, and more!
Today is a release day:
- kyua-cli-0.5: The main highlight of this new version is that it achieves (what I think is) full feature parity with the atf-run and atf-report utilities, meaning that the latter can be finally replaced.
- kyua-atf-compat-0.1: The release of the Kyua-based ATF compatibility tools was blocked on the release of kyua-cli 0.5. Finally, this new package is now available for download. It should provide drop-in replacements for the atf-run and atf-report utilities, but using the Kyua binary.
- atf-0.16: Miscellaneous improvements. I would say that the major changes are the disabling of the build of the tools by default, and the decision to start versioning the shared libraries at all, but these hardly have an impact on users at the moment. This new version also includes some backported fixes from NetBSD.
The links above will take you to the specific release pages which include the list of major changes in every release.
Now that Kyua is officially two components, I'm wondering how I should be naming the releases... On the one hand, saying "Kyua 0.5" may now be misleading, but on the other hand, keeping all the components at the same release number means that users will have to go through upgrades for no reason (as not all components will include changes on every upgrade). Anyway, this is something to think about later. Now, enjoy the new features!
Wednesday, June 6, 2012
Kyua 0.4 released
Dear readers,
I am very pleased to announce that Kyua 0.4 is available for download!
This new release brings in a lot of new features. The major highlights are:
Enjoy this new release!
I am very pleased to announce that Kyua 0.4 is available for download!
This new release brings in a lot of new features. The major highlights are:
- Preliminary HTML reports for test suite runs. These are still very rudimentary and lack a lot of detail, but you can start playing with them.
- Better CLI presentation. Long lines now wrap on word boundaries and continuation lines are padded as needed to make reading easier.
- New configuration engine. The parsing of configuration files has been completely reworked internally. While this has no user-visible effects now, it paves the way for further customization in upcoming releases.
- Ability to disable the build of the tests that ship with Kyua. This is only to simplify the bootstrapping of Kyua on arbitrary systems, and to allow an easier creation of packages for a variety of Linux distributions (including Fedora and Debian).
The devel/yua-cli package in pkgsrc has been updated to this new release just now. A package for Fedora 17 is in the review stage, as the possibility of having such a package was blocked on the 0.4 release; expect this to be widely available within the next two/three weeks. A package for Debian should be coming as soon as I clear the prerequisites (ATF and Lutok).
Enjoy this new release!
Subscribe to:
Posts (Atom)