incubator-jena-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andy Seaborne (Commented) (JIRA)" <>
Subject [jira] [Commented] (JENA-191) Jena module structure and build
Date Wed, 29 Feb 2012 15:11:57 GMT


Andy Seaborne commented on JENA-191:

Proposal for shuffling the existign code about as a first step:

1/ "svn mv" or "svn cp"?
2/ Do we want a root like "Jena3"?
3/ parent and top

We can move or copy; if copy we can decide how long the old code remain in--place.
I would prefer to move the code where possible.  That might be by copy, sort out the new structure
then delete the old one in a single session (let's cal that a move for now - i think svn history
is preserved because import->Jena2 was by copy and I see history).

2/ The proposal below puts code under /trunk, no intermediate directory. There are no plans
I know of that put system outside there but (for example) Fuseki is actually a freestanding
application that uses Jena, rather than a piece of fundamental code.  We could have /Jena
for the core system, /XYZ for other things.  (Note: this is just an example: it might be nice
to have a single distribution include Fuseki so that does make it fundamental code).

There are examples of every style including /trunk, and then having /extrabit/trunk.

3/ We could pull the parent in and make it a versioned-as-the-rest item.  It makes it easier
to change e.g. icu4j.  From having tried the independent way, I'd like to use the other, in-system
way (and call it "parent").

Proposal for a first step:
Move active modules from /Jena2/MOD/ to /trunk/jena-mod:

/Jena2/IRI/trunk     ->    /trunk/jena-iri
/Jena2/ARQ/trunk     ->    /trunk/jena-arq
/Jena2/jena/trunk     ->    /trunk/jena-core
/Jena2/TDB/trunk     ->    /trunk/jena-tdb
/Jena2/Fuseki/trunk     ->    /trunk/jena-fuseki
/Jena2/SDB/trunk     ->    /trunk/jena-sdb
/Jena2/LARQ/trunk     ->    /trunk/jena-larq
/Jena2/JenaTop/trunk     ->    /trunk/jena-top ?? jena-parent
/Jena2/Examples/trunk     ->    /trunk/jena-examples

This leaves these alone:


tags (for Apache releases)
/Jena2/MODULE/tags/ABC     ->   /trunk/tags/ABC

branches (all I could find):
/Jena2/jena/branches/owl2/    -> /branches/owl2
/Jena2/TDB/branches/hash-ids/    -> /branches/tdb-hash-ids

> Jena module structure and build
> -------------------------------
>                 Key: JENA-191
>                 URL:
>             Project: Apache Jena
>          Issue Type: Brainstorming
>            Reporter: Andy Seaborne
> The current multi-trunk, multi-module, multi-version build is good for independent evolution
but bad for making a jena a single "thing".
> Maybe we should have a single trunk, multi-module, single source-release, single version
number build for Jena.
> There would be a single POM in the root directory that did a module build (this is not
the parent POM).
> Advantages:
> - The build is simpler
> Disadvantages:
> - Individual release of a module is harder.
> See also JENA-190 (delivery).

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message