Hello all,
I am very grateful for the simplification of the
Cocoon build process. I think this triggers new ideas for Cocoon and the build
proces in particular. The latter is this posting about.
Stefano: How are you doing on the samples? Recently
you indicated (http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=104583891315429&w=4 and
http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=104609471513702&w=4)
that samples are going to be heavily refactored - any RT popped up since
then?
I hope this doen't interfere your ideas, so f you
don't mind I'd like to propose the following:
1) Refactor the project-info.xml to split in
several files contained in the blocks themselves.
Just like Eclipse plugin.xml files in their
plugins, a plugin is installed by just dropping it in the plugins dir.
Usecase: This will make it easy for me to maintain my JavadocSource block
(or any (external) block for that matter), now I need to sync each time when
project-info.xml changes ;-)
2) Have each sample have its own block, which
depends on the block(s) declaring the components they need.
IIRC the infrastructure to support this is already
there. Usecase: The XMLForm sample(s) use the databases block, XMLForm block and
the Mail block. Having the XMLForm block depend on the Mail block is silly, of
course.
3) Instead of exclude-block-xxx properties, use the
include-block-xxx properties in file blocks.properties (or accept both - just
like Ant's <fileset> include/exclude attributes).
Let the build process figure out what the
dependencies between blocks are. Usecase: If I need to test a certain block, I
don't want to set each exclude-property to true, while hoping not to forget
anything.
IMHO this covers all that is necessary to reliably
include samples. The build process can be as easy as specifying the blocks
(including samples) you need, while it figures out which other blocks need to be
built.
Again, I don't want to interfere with your own
ideas, I just thought this proposal would do it because it is simple, most
necessary infrastructure is already there and I'd like to build my
JavadocSource stuff again ;-)
so... fire at will!
Ciao,
Bart Guijt
|