The week in qooxdoo (2008-11-28)
Filed under: Activity Reports
By Andreas Ecker @ November 28, 2008 6:50 pm
Time for another weekly status update. Thanks to all the team members for their regular input and help in preparing the post (this time Thomas, thanks). Let's start with the tooling:
Generator
- URI handling has been further revamped. URIs to reference resources in generated JS code can now be influenced either through the "library/uri" or the "compile-source/root" config keys. See the special section of the manual.
- Configuration documentation has been amended. There were several config keys missing from the manual (desc, migrate-files, lint-check, clean-files (partly), fix-files, exclude, debug, log (partly)).
Bug Fixing
A lot of bug fixing has been going on, both in the 0.7.x as well the 0.8/trunk branches. Major areas of concern were
- key event handling (#1520, #803, #1645)
- TableModel (#1560, #1578)
- memory leaking in 0.7 (#1633)
- Window got a new getMode() method, to inspect minimized/maximized/normal states (#1531)
- browser detection has been improved (#1638)
The use of Python under Windows Vista requires some special attention (i.e. installing as an Administrator), and there is a dedicated troubleshouting entry.
The HtmlArea contrib received some love, too. The issues were around key handling, scrollbars and IE support.
Data Binding and Validation
As a feature related to the upcoming data binding, Martin put some initial code into trunk. It's about validation and is integrated into the property system. Now every property can include in its definition a validate key and specify a validator for it. Therefore, a new ValidationError class was added to the framework as well. Also, a set of common validators have been added to qx.util.
Please note that this feature is still experimental. There might be some changes in the API during the ongoing development process. But you can give it a try anyway. You will find some tests in qx.test.core.Validation and a demo has been added to the trunk version of the demobrowser.
Gadgets
Open Ajax Alliance
Daniel spent some time looking into the OpenAjax Alliance (OAA) Widget Metadata Specification and tried to figure out how to make qooxdoo apps play nicely with the OAA Message Hub. The result is a contribution consisting of two small qooxdoo apps that can be run as gadgets in OAA's Sample Mashup Application, demonstrating how to publish and subscribe to hub messages.
Google and Netvibes
The two other popular gadget specifications from Google and Netvibes have also been addressed. A while ago Torsten Wesolek posted a nice proof-of-concept to the mailing list for a qooxdoo 0.7 based Google Gadget. Just include his event calendar (sorry, in German only) to your iGoogle start page. It's using a qooxdoo Table to display the search results.
See Daniel's wiki documentation for creating qooxdoo-based Gadgets for Google and for Netvibes. If you managed to set up some nice gadgets yourself, please let us all know.
"A Rose with any other Name..."
Don't be surprised if you come across a name of Jonathan Weiß while Jonathan Rass seems to have vanished all of a sudden - it's the same guy! Core developer Johnny recently got married and took on his wife's name. - Congrats, Johnny!
Upcoming releases
The roadmap has been updated to account for the upcoming releases: We expect a release qooxdoo 0.7.4 of the legacy 0.7.x line to be available next week on 2008-12-04. On of its highlights is a substantially improved memory management, which allows for creating memory-leak-free applications. If you have an existing 0.7.x based application, please try out the current version in the legacy_0_7_x branch and report any issues asap. Thanks.
The other release qooxdoo 0.8.1 is planned for 2008-12-18, so that you get something to play with during holiday season. Wait, actually, you should start playing with the trunk version during the next two weeks already. It would be great you could help to find and possibly fix any open issues. qooxdoo 0.8.1 is expected to be quite a solid maintenance and bugfix release. Thanks for your collaboration in making this happen.
Thats' for this week - be in touch next time!




