GeoTools Incubation Progress

From OSGeo
Jump to navigation Jump to search

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.

The following have been produced for the incubation process:

Representative: Jody Garnett (

Just The Docs

There is a lot of text here, most of it is notes. Here is the stuff that matters:

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 further direction.

Now that one month has gone buy we are getting much more specific 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 "" and call it a day.

Progress on Our Own Goals

Copyright to OSGeo Y/N

The GeoTools PMC is not a legal entity, although it is holding copyright on the codebase. Since the code is LGPL we are not likly to go after any offenders, but still we need to set our code on legal footing to move forward.

As such we are exploring the option of assigning copyright to the OSGeo Foundation, as far as I know we are the only project to consider this step out of the initial batch of hatchlings.

What is needed: (how do we know when to stop)

  • agreement by which (c) is assigned to OSGeo, acceptible to OSGeo Legal and developer community
  • contributor agreement acceptable to OSGeo legal and developer community



  • we have waited for feedback from OSGeo legal on the following issues
    • contributor agreement (there is a propsoal here Contributor_Agreement that has some problems with a) not listing specific responsibilities of OSGeo b) it is a proposal )
    • documentation license


Ask board for input (rather legal)?

Provide board with materials to make a motion (so they consider the issues)?

  • developer position docment
  • draft agreement
  • draft committer agreement

We tried the following agreement Process:

  1. Draft Agreements submitted to Board
  2. Board accepts, or clairfies
  3. Developer community signs agreements
  4. Code headers are updated

(This did not go anywhere)

Frank steps down as project mentor (conflict between holding legal advice purse strings and needs of mentoring project).

Cameron steps up as project mentor with this issue as the known road block.

Arnulf Cristl from the Board joins GeoTools for a breakout IRC session and untangles some of the communication problems between GeoTools PMC and OSGeo Board. -

Production of a formal proposal to update the headers: -

Open discussion as part of a OSGeo board meeting: -

Suggestions for Iccubation

Over the course of this topic GeoTools remained stuck and was not visible to the board:

  • Improvement: create a incubator list blocker
  • Improvement: check if the board uses an Issue Tracker

Hello? Tap Tap Tap is this thing on?

  • Improvement: GeoTools remained stuck on this issue for over a year, eventually burning out a series of representatives and one mentor

Developers are not Legal Experts:

  • Improvement: explicit incubation process support for legal considerations
  • Improvement: clear documentation saying what the OSGeo board will agree to

We are all acting in good faith here, but we do seem to be out of our depth.


We have also set our own goal of fixing the documentation into a consistent state that covers the library:

Progress on Incubation Goals

IP Check

It seems that a manual review of each header will be needed, we know we have some issues with code Bryce has written (ie in public domain license rather then LGPL).

  1. Module Maintainer will check source
  2. Module Maintainer will document manual check on wiki
  3. Jody will gather this up into the document expected by the Incubation committee

Finding out who did what?

We initially thought an IP check would involve asking each contributor to sign something, this presented several problems. We don't know if everyone who worked on geotools is even alive, let alone how to find the ones that are still ticking.

Property to Check

What do we need to check?


We thought we may need to check documentation, but so far only source code has been mentioned.

If we do need to check the docs they have always had a strict license, as indicated in the developers guide, however we break it down by maintainer:

  • Wiki
    • news announcements - 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.


The code has always been under GPL (1.x) or LGPL (2.x):

  • 1.x code code was GPL (c) leeds - jmacgill confirm?
  • 2.x code had LGPL (c) GeoTools PMC at the top.
  • 2.2.x code may get (c) OSGeo lets talk about it


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 are bits of functionality that implement all the great stuff that makes geotools useful. They slot in at the various layers defined by the library and are nice and targeted:

  • postgis: justin
  • oracle: marc
  • ...

ext =

Extenions and Functionality built on GeoTools.

  • graph - justin
  • validation - jody


Demos and Examples ...

  • property - jody