As the declared-at-the-last-minute sprint master, one of my duties was to summarize the post- Plone Conference 2010 sprints. Now that it's been over a month, it's high time I force myself to do so...
85 sprinters spent their weekend working on a number of Plone projects. Detailed topics are available on the sprint wiki.
Below are the responses I've received from each group, or links to blog posts/mailing lists describing what was accomplished at the sprint.
Video
plone.app.collection
- Implemented a few missing features, fixed bugs, added the collection portlet, implemented more criteria and got much more test coverage and fixed the views.
Dexterity
plone.app.event
The plone.app.event team was active during pre-conference and post-conference sprints. we've got even more people working on the topic. basically we were bringing all of the involved packages a bit further. there is still some work left, which was/is done during this week, before plip deadline. specifically we were working on:
- Cleanup and simplifying plone.app.event package (base plone integration package, content types, etc.)
- Generalizing code from plone.app.event into plone.event (recurrence functionality, event related utils)
- Testing and benchmarking Products.DateRecurringIndex (drop-in replacement for DateIndex. provides support for indexing and querying recurring events)
- Further ui and RFC2445 parsing development on jquery.recurrenceinput.js (jquery plugin for a recurrence events widget)
- Creating plone.formwidget.recurrence (plone integration of jquery.recurrenceinput.js)
- Creating archetypes.datetimewidget (jquerytools dateinput integration in archetypes)
- Testing all bits
Diazo
Hostout
Tom Lazar, Chris Shenton, Fulvio Casali, Naotaka Jay Hotta were all keen to sprint on hostout. The general feeling seemed to be want to explore hostout as it looked like a flexible system to build upon. However it needs more work to make it robust, better documented and easy to integrate all the different deployment scenarios. First we moved the code into the github collective.
The rest of the sprint was spent creating a demo and trying to deploy that on many different systems, fixing bugs and cleaning up the code as we went. There was a lot of mind dumping by me in explaining the architecture and the reasons behind the decisions. For this also came some great new directions which have mostly been put into the TODO.txt
Some highlights include:
- Using rsync to speed things up,
- Autodetecting the os and putting hostout.ubuntu etc back into the core
- Making the commandline more similar to fabric
- Better ability for fabric hooks/overrides to run the default behaviour or not
- Hostout.plone which includes ability to transfer databases
- Simple rollback to previous buildout by versioning buildouts uploaded
- Getting hostout.cloud to work with mirco ec2 instances and slicehost
- Better docs and testing
plone.app.discussion
Thomas Desvenain, Silvio Tomatis and Timo Stollenwerk completed the following tasks:
- Use jstestdriver to run JS qunit tests (http://svn.plone.org/svn/plone/plone.app.discussion/trunk/test-plone-4.0.x.cfg)
- User email notification (z3c.form >= 2.3.3; new KGS for Plone 3.x: http://good-py.appspot.com/admin/plone.app.discussion/1.0b11)
- Ajaxify UI: delete and publish comments
After the sprint plone.app.discussion 1.0b11 and 1.0b12 (with user email notification and an ajaxified "publish" button) were released.
Currently working on a branch of p.a.discussion with more AJAX-UI elements (comment deletion and infinite scrolling of comments).
Complete list of the sprint tasks is available on the sprint wiki.
Plomino
During the sprint, the Plomino team accomplished the following:
- Migrate Clouseau to Plone 4 and fix few old bugs
- Add user-friendly error notifications in Plomino (the objective is to Integrate error notification with Clouseau so users can debug their Plomino apps in live, but we haven't been that far).
QA
The QA sprint spent their weekend discussing testing within Plone and how best to automate it. We mainly focused on automated browser testing and continuous integration testing with Hudson.
- After a lot of discussion the sprinters decided to base browser functional tests on Selenium 2 (other contenders were Selenium 1 and Windmill). Selenium 2 is still in alpha, but a beta release is expected before the end of the year. Selenium 2 combines Selenium 1 with WebDriver, which means we'll be able to run old Selenium tests, but use WebDriver for new ones. WebDriver provides better handling of multiple frames, popups, drag-and-drop, and the AJAX UI elements becoming more and more common in Plone. More information about Selenium 2 is available at http://seleniumhq.org/docs/09_webdriver.html
- Selenium test case setup using plone.app.testing framework being introduced in Plone 4.1. Created a number of helper methods to ease testing of core Plone functionality.
- Merging of personal Hudson buildout configurations to http://svn.plone.org/svn/collective/buildout/hudson/hudson.cfg
Sponsorship by Matthew Wilkes, Ian Good, and PloneChix provided the sprinters with a well-received lunch treat from local favorite, Pieminister.
Please feel free to add your updates in the comments or email me at EricSteele@psu.edu