GeoTools Incubation Progress

GeoTools is one of the round of projects out of the gate, and as an rather old project (lots of background) with an active development community (who is busy hacking) does not expect to finish all that quickly.

Representative: Jody Garnett (jgarnett@refractions.net)

= Initial Impressions =

Judging from the email list the number one question is, what needs to be done? Rather wait we are going to wing it and hope for futher direction.

Community Feedback
The GeoTools community responded with the following questions:
 * rgould: What if I want to commit a patch or other code sent to me by someone else? Do they have to sign a CLA too?
 * three line fix is okay
 * three line w/ new functionality, or large change, requires a CLA
 * If you can get a CLA
 * bryce: Public domain contributions (ie gov employees)
 * individual code: can sign w/ no conflict as themselves
 * gov code: already public domain - osgeo does not need a license
 * treat on a case by case basis

= What is in a Name =

GeoTools is a common name, that many conferences, other open source projects and so on try to adopt. Yes we know it is obvious. Since the project has been going for 10 years (congrats) in a very public manner with out complaint we are going to keep on keeping on. If pressed we will adopt the name "GeoTools.org" and call it a day.

= IP Check = We don't know if everyone who worked on geotools is even alive, let alone how to find the ones that are still ticking. This is a problem.

"svn blame" is almost an answer:
 * 1) Create a perl script that can process svn blame
 * 2) Get a list of names
 * 3) Module maintainers will need to hunt down those involved and beat a Contributor Agreement out of them

But it is not a complete answer:
 * 1) It only shows who has done what (per line) most revently
 * 2) Svn is backed on to a berkly DB, and we can ask someone (hi paul) to query the heck out of this database and give us report, by module
 * 3) If this is too hard I would be content with an SVN blame check based on the 2.0, 2.1 and 2.2 releases

If a module maintainer cannot document a change for a section of code they will need to re implement. Sad but true.

documentation
The documentation has always had a strict license, as indicated in the developers guide, however we break it down by maintainer:
 * Wiki
 * news anouncements - can we ignore please?
 * product branding logos - jody
 * Developers Guide - james (1st) and jody (2nd)
 * Users Guide - rueben
 * Tutorials - rueben
 * Snipits - rueben
 * Articles - jody
 * RnD - jody
 * Feature Model - gabriel
 * Converage - bryce
 * Rest - jody

We have lost our early history of news to a crash (I still am sad), and we have had around 6 websites. Some of the generated websites will be in version control and will show up as part of the code IP check.

code
The code has always been under LGPL: - 1.x code code was (c) leeds - jmacgill confirm? - 2.x code had (c) GeoTools PMC at the top.

module
The module section of code is kind of lame and has a long tangled history. It started off as "core" and contained implementations for all the interfaces we had ever defined. It may even of contained the interfaces. The conversion notes are in confluence.

Conversion? Yeah we converted it - into a single module called "main" (because we could not manage our build as everything was so brittle). This was done for GeoTools 2.0, for geotools 2.2 things are breaking up along different lines:
 * API - Jody Garnett - Capturing the (from main) interfaces that have been through a Q&A check
 * MAIN - PMC - sad but the definition of PMC was almost module maintainer of main for a while
 * filter/expresison - cory
 * rendering - jesse
 * REFERENCING - martin
 * LEGEND - andrea (may just want it deleted)

plugins
Plugins are bits of functionality that implement all the great stuff that makes geotools useful. They slot in at the various layers defined by the libary and are nice and targetted:
 * postgis: justin
 * oracle: marc

ext
Extentions and Functionality built on GeoTools.
 * graph - justin
 * validation - jody

demo
Demos and Examples ...
 * property - jody