Niclas Hedhman wrote:

On Sunday 25 September 2005 21:39, Daniel Fagerstrom wrote:
I think we should move the content of trunk/src/ to trunk/, and start considering them as separate projects (blocks).

I would be really happy if a top-level build script (maven, ant, bash, perl, whatever) is maintained for us poor souls who wouldn't know what depends on what, and in which order stuff needs to be built.

That is the intention, you can see that there is a toplevel POM in the new M2 build. IIUC M2 POMs describe all the dependencies and the block POMs refers to the toplevel POM and build the needed blocks.

Doesn't need to support everything, just one sweep to compile/package each part.

Also, in the long run, consider getting rid of the ttb structure, drop the heritage from CVS and make a more direct statement;

/repos/asf/cocoon/
 main/
 legacy2.1/
 releases/
 experiments/

or something along those lines.

Agree. As your explanation is somewhat terse I expand a little bit on it.

When we discussed repository structure in Felix I propsed that we should follow the same structure as for Cocoon blocks with ttb(=trunk/tag/branch) under each bundle directory. Niclas instead propsed:

Personally, I don't use tags and branches at all. Code that are released, are copied into a proper directory named "releases", and straight after made read-only. Branches are handled differently depending on whether it is an "experiment" (in which case it is just copied to my laboratory) or it is "maintenance" of released code, in which case I first copy the "release" into a temporary area, do the changes and then create a new "release" make readonly and so forth.

Which we all agreed about as it seem to be more practical. We should do the same for Coccon IMO. In the directory structure above we would have

main/
 pom.xml
 apples/
 asciiart/
 ...
 core/
 ...
 webapp/
 ...

or maybe with a subdirectory for blocks, not certain if I want that as everything is blocks anyway. All the blocks are own projects and when we release a block we put it in releases:

releases/
 core-2.2.0
 core-2.2.1
 ...
 cforms-0.9
 ...
 portal-2.1
 ...

Simple and easy to understand!

/Daniel

Reply via email to