On Mon, Jan 07, 2002 at 09:33:43PM +0100, Oskar Sandberg wrote:
> This is my alternative: Leave the code in the current module. As I said,
> changing the java package name would be nice, but it is far from worth
> the effort of moving all the code. The beautification that needs to be
> made is the removal of all non-java and non-fred stuff from that module.

The currently layout is FUBARed.  Firstly, having the Makefile and
scripts in a "scripts/" directory *within* the code tree is ugly as
hell, virtually every project in every language has seen the benefits of
placing things like scripts and READMEs in the top level directory, and
the code in sub-directories off that, it is simply neater.  The emerging
standard practice with Java is increasingly to place the Java source
code in a src/ directory, and the class files into a separate build
directory. If you are so desperate to compile the code in your normal
way then simply make a symlink to the freenet directory in src/ from
your Java tree.  

> This also means we won't destroy the often very useful version history
> of the files.

We won't destroy it anyway, it will still be in the old "Freenet"
module.

> If you want to do have a module be the preperation area for the
> distributions, then have that module contain the scripts and readmes and
> whatnot - it is completely possible with CVS to check out one module
> into a subdirectory of another, so you could easly have a src/
> subdirectory of that module and checkout the Freenet module int it (thus
> having your directory structure look just the way you want it).

And what is the advantage of that over simply having the directory in
CVS in the format in which it is distributed? Every other project I am
familiar with does it that way, and it works beautifully for them.  This
would save us the confusion and inconvenience of having CVS-based
developers working with a different directory structure than developers
who might just be developing patches on the distributed code base.

> I think that the only decent thing to do is have the binary
> distributions move the Freenet package into a system specific java tree
> - but since I am not planning to make the distributions, I will have
> accept that others choose the route of folly. Just leave the code alone.

Firstly, the issue of where the .jar or class files are placed during
installation is orthogonal to the layout of the directory structure in
CVS.  Secondly, no matter how much you try to pretend that there is a
standard place to put Java .class files on popular operating systems, it
won't become true.  Your desire to put some kind of ideology (which I
don't necessarily agree with anyway) before ease of installation is a
very good reason why you should leave the installation work to people
who care about the ordinary user.

Ian.

-- 
Ian Clarke                                        ian at freenetproject.org
Founder & Coordinator, The Freenet Project    http://freenetproject.org/
Chief Technology Officer, Uprizer Inc.           http://www.uprizer.com/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 232 bytes
Desc: not available
URL: 
<https://emu.freenetproject.org/pipermail/devl/attachments/20020107/4273af86/attachment.pgp>

Reply via email to