Adrian Custer a écrit :
> I have prepared a wiki page documenting the legal situation as I
> understand it, here:
>   http://docs.codehaus.org/display/GEOTOOLS/Geotools+Legal+Review

Thanks a lot for this document, it was an excellent reading for me (it helped me
a lot to have a better idea on this issue).

A few very minor comments:

Historical note about GeoTools under GPL
----------------------------------------
I can confirm that GeoTools 1 was initially under GPL (not LGPL) license.
However when the GeoTools 2 project started, it was decided to make it a brand
new project starting from scratch under LGPL license. It was called "GeoTools"
because initialized by the same guy than GeoTools 1 (James McGill) and hosted in
the same SourceForge project (sharing the same CVS before we migrated to
Refractions Research's SVN, etc.). Thus the GeoTools 1 and 2 projects shared the
same resources for a few years, but it was actually two almost independent
projects. GeoTools 1 stayed under GPL and was restricted to Java 1.1 for
compatibility with Internet Explorer (Microsoft JVM was important in those dark
ages), while GeoTools 2 was under LGPL from the begining and targeting Java 2.
I'm not aware of any GeoTools 1 code integrated into the GeoTools 2 code base -
however I guess that only James McGill could confirm for sure.


About the @author javadoc tag
-----------------------------
The Gt_Headers_prototypes.text file contains an interresting proposal for
tracing the provenance of various part of the code. However it contains a
citation from http://java.sun.com/j2se/javadoc/writingdoccomments/ about the
@author tag which is inacurate:

    "The @author tag is not critical, because it is not included
     when generating the API specification, and so it is seen only
     by those viewing the source code."

Actually the @author tag is just excluded by default, but do appears in the
javadoc if we provide the "-version" option to javadoc. Our GeoTools javadoc
displays this tag.

Nevertheless I like a lot the @author proposal with one amendment: instead of
using the @author javadoc tag, I suggest to use Java 5 annotations. We could
create a few enumerations:

    enum Compagny {
        FOO_CORPORATION,
        PAPER_CLIP_INTERNATIONAL,
        etc...
    };

    enum Contributor { // Including employer
        ADRIAN_CUSTER    (FOO_CORPORATION),
        ZAPHOD_BEEBLEROX (PAPER_CLIP_INTERNATIONAL),
        etc...
    };

    enum Assignment {
        GRANTED_TO_OSGEO,
        LICENSED_UNDER_LGPL
    };

and an @Author annotation that could be used as below:

    @Author(ZAPHOD_BEEBLEROX, LICENSED_UNDER_LGPL)
    public class MyClass {
        // Some code here...
    }

This is not a formal proposal, I just want to give the idea (we can decide later
on the details. Should the compagny be bundled in the contributor enumeration or
be separated? etc.). Annotations are much more powerful than using javadoc tags.
Annotations are checked at compile-time, we can use the Java Anotation Processor
in order to generate automatically whatever document we want, you can simply use
the "Search usage" menu in Netbeans (I'm sure there is something equivalent in
Eclipse) in order to list every usage of LICENSED_UNDER_LGPL, etc.

        Martin


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to