Weekly Status Report: 08 Feb 2002
What's going on with Turbine these days? Well, quite a lot actually. We were in a lull there for a while but things are back on track so I thought I would try and report some of the work and changes that have been going on recently.
Stratum
Stratum is the repository where we are trying to refactor a lot of the existing Turbine code into modularized components that can be used across all Turbine projects. The short term goal is refactoring for the purpose of clarifying the code for Turbine use, but after this has happened the goal is to move all the code, with thorough units tests of course, into the commons where we can share our code with the Jakarta community.
There are several components in Stratum, most of the code originated in Turbine but there are some new additions. Here is a short run down of the components that will be available in Stratum:
Using DVSL for Documentation
DVSL is now being used for the Turbine 3.x documentation as it is more flexible and will allow the generation of PDF documents. Work was started in the Velocity repository that transformed the xdocs into FOP documents so I have started from that work to try and produce a good set of PDF docs.
New Security Model
Gonzalo and Eric are currently working on some ideas for a new security model for Turbine 3.x. Anyone can view the work being done by looking at the rundata_security_changes branch in the jakarta-turbine-3 repository.
RunData Reworking
I am currently reworking the RunData system so that it can be decoupled from Fulcrum and generally work in a more flexible manner. We want to be able to use multiple variants of RunData in an application, and we want each of those variants to house a configurable set of tools: a cookie parser or a parameter parser for example. This work needs to be finished before the security models can be tried and tested. Hopefully the RunData work will be finished next week sometime.
Turbine 3.x Pipeline
The Pipeline in Turbine 3.x is now fully functional. Some documentation on the pipeline has been created and it will be posted to the site this weekend. The upshot of this change is that we now have configurable request processing so an application can tailor its pipeline(s) very easily to meet any requirements.
Introduction of Cactus
The use of Cactus was introduced in the Turbine 3.x tree so that changes can be tested easily. Jeff has also backported our Cactus based testing framework to the 2.x branch. This is a big step forward for us as we had virtually no testing prior to this addition. Thanks a ton to Jeff for getting this working!
More Consistent Build Pattern
The build systems for Turbine 3.x, Turbine 2.x, Fulcrum, Torque and Flux are all now basically the same. There is a new target in each of the respective build files that will allow you to download the JARs necessary for building the project. The TDK has also been outfitted with this feature so developers interested in helping improve the TDK can do so without having to hunt down all the necessary JAR files. We hope that the addition of the JAR downloader will help make it easier for people to participate without having to build everything under the sun.