Hi everybody, I just wanted to let you know that I did not abandon webgen :) However, I did abandon one thing: the development of webgen 0.5.0 which started around February 2007. With webgen 0.5.0 I wanted to make it easier to create plugins and do partial site generation. After working around a year on this code base (most of the core was created from scratch, plugins got converted), I realized in the beginning of 2008 that the whole thing became too complex. The development line had some nice features like the partial site generation, resources could be shipped alongside plugins, plugins could be packaged and automatically downloaded/installed... but with the addition of new plugins the complexity grew and the core classes did some things that were more like ruby magic than ruby standard. At the same time I started to play with ramaze and looked at its source code and was awed by how neatly everything was layed out and worked - without much use of ruby tricks and magic but by cleverly using standard ruby methods. I have to say that the source layout of ramaze inspired much of the current webgen 0.5.0 source layout. So I started all over again and thought about how I really would like webgen to work. Development started around March 08 with much writings on paper and the first commit was done on March 28th. Four months passed since then and now the devel version is again at a point where simple websites can be created. The current status: * Implement file handleres (now called source handlers since data can come from other source - think databases, multiple directories): - Metainfo - Directory - Copy - Page - Fragment - Template New ones are the Metainfo and Fragment handler. The Metainfo handler allows to specify multiple meta information files insteaad of the one metainfo.yaml that is used in 0.4.x. The Fragment handler is used for generating fragment nodes for page files. * Implemented content processors - Maruku (a Markdown processor, default instead of RedCLoth/Textile) - Blocks (for specifiying blocks that should be rendered) - Tags (the known webgen tags system) The tags content processor has slightly been updated. It allows now to specify a body that can be processed. So it is possible to wrap some source code in a (to be written) highlight tag and it gets highlighted. * Implemented tags: - Reloctable - Metainfo (the default tag which provides access to metainformation) - Menu The main webgen command is not very sophisticated, it just can build a website. But partial site generation works throughout the entire codebase. Everything is unit tested and current code coverage is around 92%. Anyone looking at the source code should find it easy to follow (at least much easier than the previous source code :). I also moved to a new VCS, namely git. The rubyforge repository has been converted to git on Monday and I have pushed the current status to the repository. The rubyforge repository will always be in a useable state. Plans for the future: * Since everything for generating a basic website is now in place, the next step for me is updating the website. Time frame for this is the next two weeks. * When the homepage is updated, I will release the first 0.5.0 gem. This, however, will be more of a developer release for easily trying out this new webgen version. * After that I will try to implement new features or port features from 0.4.x on a regular basis. Depending on my RL, one or two features every or every other week should be possible. Each new feature implementation will be followed by a new release, so the release cycle should be much shorter. * This is where YOU come into play: look at the webgen repository or its feature list and post the features you want to be included next on this mailing list. * Also, I will look at all the emails I got since the release of 0.4.0 and write a list of all requested features since then. That''s all for now! :) I will post some infos on the progress once I''m nearly finished with the new website. -- Thomas