Skip to end of metadata
Go to start of metadata


OSGeo graduation


Jody Garnett Adrian Custer


The last step for OSGeo graduation



The board has met and approved a letter for us to sign:

GeoTools IRC Meeting of January 21, 2008 accepted this document and made the decision to go ahead. After email discussion, Jody Garnett made the decision to require new contributors to sign this document prior to handing out svn access.


Adrian Custer's work leading up to this proposal is found here: Geotools Legal Review

We have received conflicting advice from different board members (along the following lines):

  • Leave (c) with individual developers (50% of the OSGeo projects are doing this). OSGeo then licenses Geotools like any other user. Geotools might choose to formalize this by adding the explicit list of (c) holders in each file.
  • Assign (c) to an organization (the other 50% are doing this). This is our current plan ... assigning (c) to OSGeo. An alternative version of this plan could be to assign (c) to the FSF Europe using their 'Fiduciary Licensing Agreement'.
  • Mark the (c) down to a fictional group (ie status quo where (c) GeoTools PMC is used); this is what PostgreSQL has gone on and it has not prevented investment from the likes of Sun. The end result of this option is similar to the first option: you can never change the license without contacting all the developers; and the record of the developers is to be found in version control.


The providence review of all the files has previously been done to identify the origin and license terms of the files and find any problem areas. These issues have all been marked.

A key remaining step is to resolve the copyright situation of the code base. When this is resolved, Geotools can undertake the final sweep of the code and update the headers in all the files. The working assumption was that the new headers would all assign copyright, at least in part, to the Open Source Geospatial Foundation. As part of this change, it was assumed that many developers would sign a document formally assigning the contributor's copyright over to OSGeo.


This proposal has been slapped together based on a number of recent irc meetings. Apparently much of the initial communication we had with the OSGeo board was complicated by talking with their legal representative at the time. Completing our graduation requirements may be as simple as:

  1. Signing a Code Contribution Agreement
  2. Updating our headers to have an OSGeo copyright and updating the providence review.txt files

During the IRC meeting of 21 January 2008, a show of hands indicating who would be willing to assign their copyright to OSGeo was taken. The request was: "+1 is "I'm willing to assign my copyright to OSGeo" 0 is "I don't care" -1 is "no way josé" " as can be seen in the IRC logs . That show of hands resulted in the following:

Community support:

Also, Chris Holmes had indicated that The Open Planning Project would be willing to sign such an agreement and Paul Ramsey had indicated that Refractions Research, Inc. would as well. So the decision has been to go forward with the OSGeo agreement.

Left unresolved during this meeting was the question of whether to force future contributors to sign the agreement or not, with several people suggesting that would be a good idea.

After email discussion, Jody Garnett went ahead with the assumption; we are no longer accepting new contributors until the sign and send in the contributors agreement. Adrian Custer was kind enough to update the developers guide



no progress






lack mandate/funds/time


volunteer needed

Get a Contributors Agreement and Sign it

  1. (tick) acuster: Attend November 2nd OSGeo Board Meeting, ask board for a direction they are comfortable with.
  2. (tick) osgeo: Review and Approve the contributors agreement
  3. (tick) acuster: Confirm direction with geotools community Proposal to assign our copyright to OSGeo, with attach sample contributor agreement.
  4. (tick) jgarnett: write up a letter to send to code contributors
  5. (tick) Obtain contact information by:
  6. (tick) Code contributors: signs documents and sends them as a FAX to OSGeo central
  7. (tick) Shut off svn access for members who have not signed by end of March
    • Access list available here: GeoTools Contributor Status
    • Some members have asked for more time, we will check with osgeo central just before graduation and do a final cut

Update Headers

  1. module maintainers: update header as shown
    • cql providence review
    • ....
  2. Update plugins headers
    • geometry module providence review (important!)
    • ...
  3. Update extensions headers
    • ...
  4. Update unsupported headers
    • ...

It would make sense to refresh the providence review at this time; basically a manual sanity check of header information. Particularly important for new modules listed above.

Out of Scope - Update License

We are only worried about OSGeo Graduation (signing the contributors agreement and updating our headers by hand as part of a providence review). Changing license to LGPL3 is out of scope. If we update our license in the future chances are we can do it with a search and replace (something that is not an option here).

API Changes

Updating a Normal Header

Normal Headers are a mix of boiler plate, initial (c) holders and some license information.

  1. The only thing we do to the file is to replace every (C) holders that signed the copyright assignment by a single a line:
    (C) 2008, Open Source Geospatial Foundation (OSGeo)
  2. Add a line to the review.txt file saying the package name and that you updated headers
  3. Update the review.txt file with your name and the date (so we don't duplicate work)



Updating an Empty Header

Empty Headers are something that was probably just added to the library

  1. We need to add the full header here; you can use svn history to check on the initial date and author
  2. Make a note of this file in the review.txt; if there are many files just list the package name as containing new files
  3. Update the review.txt file with your name and the date (so we don't duplicate work)



Updating Something Odd

Something Odd is usuall one of three things:

  • A non LGPL license (happy fun ball license comes to mind)
  • A developer without a signed code contribution agreement

Once again:

  1. Confirm that the License.TXT file matching this header exists (and it is bundled with our distribution)
  2. Add the usual line:
    (C) 2008, Open Source Geospatial Foundation (OSGeo)
  3. Make a note of this file in the review.txt; along with the issue
  4. Send an email to the developer author (some have given us permission to fix the license; others wont)
  5. Update the review.txt file with your name and the date (so we don't duplicate work)

If the license really does not work (ie is non open source), down check the entire module and strip it from the pom.xml build.



Documentation Changes

Please list the pages effected by this proposal.

Developers Guide:

OSGeo Wiki:

  • No labels

1 Comment

  1. From acuster:

    Hey all,

    Rumors brought by grey mice to the basement where I work appear to
    suggest that the OSGeo board accepted the proposed copyright assignment
    agreement (hereinafter CAA). The mice were too interested in the cheese
    used to bribe them to tell us anything else about what happened at that
    meeting so I don't know anything about the discussion which occurred.
    Regardless, it appears we are free to control our own destiny towards

    There are several steps which need to happen and I suggest that we lay
    out a schedule for each of them so we can meet our incubation mentor's
    90 day deadline. (Cameron, when is day 89?)

    Would it make sense for two of the PMC members to be placed in charge of
    such a schedule to keep us on track?

    The steps as I see them are as follows.

    I. Agree on a plan:
    The last informal discussion I saw resulted in a general consensus that
    everyone present would rather use the OSGeo copyright contribution
    agreement to assign copyright to OSGeo rather than work with the FSF.
    The latter had been a possibility recently. We really need to form a
    common front on this aspect to get essentially everyone on board the
    direction we choose.

    A. We need to confirm that we are going this route and address
    any residual concerns any of those who are willing to assign
    copyright may still have.

    B. We need to decide on how we will treat future contributors.
    If we are planning to move SVN to OSGeo, do we grant access to
    that SVN only to those who have signed? If not, we need to be
    very clear about how a contributor needs to track their
    copyright over the files they touch.

    II. Invite all past contributors to assign copyright:

    The group of people who already plan to participate need to compose a
    letter explaining what is happening, why, laying out the benefits and
    generally showing that by assigning copyright we will achieve world
    peace, place free geospatial software in everyone's pockets, and reform
    the planet to be tide-free, perfectly spheroidal and with only long-lat
    coordinates. The letter should also explain how to play along: where to
    get the form, where to send it, how to know when it has been
    countersigned and accepted.

    Since part of the intent of this work is to allow OSGeo to re-license
    the code one day, it might be worth mentioning the fact that Java itself
    has moved to GPL plus classpath exception and therefore we might need to
    follow that move someday.

    C. We must compose a letter, we must get an authoritative list
    of emails of past contributors, send the letter out to all the
    past contributors and attempt to get a statement of intent
    (will/won't sign) from each so we can know where everyone

    III. Torture committers to get docs signed, sealed and delivered.

    The ultimate threat to miss access to a 'future, better svn' may not be
    enough to get our lazy selves to mail the docs.

    D. Form a 'torture committee' able and willing to cause intense
    psychological torture, public mockery and general abuse to
    achieve our goals.

    IV. Setup the OSGeo SVN space:

    >From a quick look, it seems we need to first all get nicks in the OSGeo
    namespace using this page:
    then we can use the same nick in the SVN space.

    We need to ask to setup an OSGeo SVN space and grant commit rights to
    those who have signed the contributor agreement (and others if we want
    as well although that would probably require another legal document
    saying they will play nice and not pollute the codebase).

    For now, that space will remain empty or temporary. People could attempt
    test commits to show their access rights work; we would then wipe the
    space when we actually transfer the SVN.

    E. We need to have someone responsible for getting this space
    setup and having a way to grant commit rights as the letters
    land at OSGeo.

    IV. Clean up the headers on trunk:

    We can't start this step until we have all signed the copyright
    assignment document. Then the question arises how we want to go about
    automating this as much as possible.

    The situation today is that the headers are WRONG. The line that says
    (c) PMC is incorrect since that entity does not exist, it cannot hold
    copyright. The legal situation today, DESPITE what the headers may say,
    is that each contributor of non-trivial changes to any file holds a
    joint copyright to that file. The best assumption is that all the
    usernames in the svn log are those who have copyright on the file.
    svn log FILE | grep '^r0-9'
    gives the full list of copyright holders, except that for some of those
    the copyright will rest with their employers.

    Somehow we need to come up with a strategy and possilby automated
    scripts to help us with the cleanup.

    Jody proposed some new headers here:
    but I don't think that stuff is right yet. Especially the (c) PMC needs
    to be REMOVED since it is WRONG.

    F. We need to do a header cleanup sprint, possibly coordinated
    with the svn cleanup work.

    That's all I see for now. I'm sure I've missed something,