Hi,
Note: This email supercedes all my other proposals on the SVN
directory structure.
The rationale for this mail is that we're starting to have lots of
applications built on top of the xwiki platform: XWiki Enterprise
(default wiki), XEM, Watch, Curriki, Chronopolys, etc. We need to
accomodate them in our directory structure.
Top level structure
===============
/svnroot/xwiki/
|_ xwiki-platform/
|_ xwiki-applications/
|_ xwiki-enterprise/
|_ xwiki-enterprise-manager/
|_ xwiki-watch/
|_ curriki/
|_ chronopolys/
|_ xwiki-extensions/
|_ xwiki-eclipse/
|_ xwiki-concerto/
|_ sandbox/
where:
* xwiki-platform is the xwiki platform on which all the applications
are built.
* xwiki-applications are applications that extend the platform with:
skins, xwiki pages (XAR), plugins
* xwiki-enterprise is the name of our previously known "default wiki"
application.
* xwiki-extensions are any other extensions of xwiki not fitting in
xwiki-applications. For example the XWiki Eclipse integration, etc.
I've put concerto there but I'm not sure what it'll look like.
Definition of xwiki-platform
=====================
/svnroot/xwiki/xwiki-platform/
|_ tools/
|_ core/ (JAR)
|_ plugins/ (JARs)
|_ skins/ (ZIPs)
|_ dodo/
|_ finch/
|_ albatross/
|_ web/ (WARs)
|_ gwt/
|_ standard/
|_ xarlets (XARs)
|_ selenium/
|_ blog/
|_ calendar/
|_ ...
where:
* tools/ contains tools used to build the platform and xwiki
applications
* xarlets/ contains independent xwiki apps (we need a word better
than xarlets and different than applications which we should reserve
for things like curriki, xwiki enterprise, xem, etc) that can be
installed in any running xwiki app
* In the future core/ will be replaced with:
|_ components/ (JARs)
|_ xwiki-model/
|_ xwiki-storage/
|_ ...
* In the future web/ will be replaced with UI components (see the UI
proposal for more)
Definition of xwiki-enterprise/
=======================
/svnroot/xwiki/xwiki-applications/xwiki-enterprise/
|_ wiki/
|_ distribution/
|_ distribution-test/
where:
* wiki/ contains the xar pages
Generic definition of an xwiki-application/
=================================
/svnroot/xwiki/xwiki-applications/<app name>/
|_ wiki/
|_ web/ (optional)
|_ plugins/ (optional)
|_ skin/ (optional)
|_ distribution/
|_ distribution-test/
For example for xwiki-watch/:
/svnroot/xwiki/xwiki-applications/xwiki-watch/
|_ wiki/
|_ web/ (the gwt stuff)
|_ distribution/
|_ distribution-test/
I think this pretty much includes everything we currently have in SVN.
WDYT?
Thanks
-Vincent