Skip to content

PROJ Provenance Review

Kristian Evers edited this page Oct 13, 2019 · 9 revisions

See the guidelines for the provenance review here: https://wiki.osgeo.org/wiki/Code_Provenance_Review

Project History

Summarise the history of the source code, including discussion about code ownership and license over time.

Libraries

List or reference a table of included libraries and/or components. Include:

  • Library Name
  • License
  • Whether the library licence is compatible with the project
  • Whether the library is compiled into the project's releases, or required as an external dependancy
  • Whether the library is included in the project's code repository
  • Issue? (link if issue if one exists)
  • Ok? (Yes/No/Black - implies not checked yet)
  • Comment(s)
Library License Compatible? Included in core? Issue(s)? OK? Comments
SQLite Public Domain Yes No Yes
nlohmann/json MIT Yes Yes Yes
lrucache11 BSD Yes Yes Yes License and author is attributed in the relevant source file

Source Files

List of source files, including code, documentation and data, including:

  • File name
  • License
  • Copyright Holder (if known)
  • License header included?
  • Issue? (link if issue if one exists)
  • Ok? (Yes/No/Black implies not checked yet)
  • Comment(s)

The list of source files and their license status is maintained on Google Docs:

https://docs.google.com/spreadsheets/d/1Bdu73lw8I1iFX4cb7CIUF6yqWGDTcZKBfW0cUsEjCXk/edit?usp=sharing

Copyright Holders

List or reference all copyright holders of the project's source files. These are all the people that would need to be contacted if the license of the project is to be changed. List:

  • Organisation or person
  • Contact details for Organisation or person
  • Issue? (link if issue if one exists)
  • Comments
Copyright Holder Contact details Issue? Comments
Even Rouault [email protected]
Saurav Mohapatra [email protected]
Niels Lohmann [email protected]
Dropbox Inc. dropbox.com
Thomas Knudsen [email protected]
Frank Warmerdam [email protected]
Charles Karney [email protected]
Kurt Schwehr [email protected]
Howard Butler [email protected]
Kristian Evers [email protected]
Andrea Antonello [email protected]
Martin Desruisseaux [email protected]
Drazen Tutic [email protected]
Lovro Gradiser Unknown Worked on the same code as Drazen Tutic, who presumably can pass on any enquiries
Philippe Rivière [email protected]
Lukasz Komsta [email protected]
Bojan Savric [email protected]
Juernjakob Dugge [email protected]
Martin Raspaud [email protected]
Didier Richard [email protected]
Thomas Flemming [email protected]
Michael.A.Bull [email protected]
Bernhard Jenny [email protected]
Martin Lambers [email protected]
California Institute of Technology www.caltech.edu
Ivan Veselov [email protected]
Andrey Kiselev [email protected]
Free Software Foundation www.fsf.org

Committers

List or reference a table of committers, including:

  • Committer name
  • Commit username in code repository
  • Committer's employer(s) (if applicable)
  • Committer (or employer) has signed contribution agreement? (yes/no)
Committer Username Affiliation Contribution Agreement Signed? OK?
Frank Warmerdam warmerdam No Yes
Even Rouault rouault Spatialys No Yes
Kristian Evers kbevers SDFE No Yes
Thomas Knudsen busstoptaktik SDFE No Yes
Howard Butler hobu Hobu Inc No Yes
Mike Taves mwtoews GNS Science No Yes
Kurt Schwehr schwehr Google No Yes
Charles Karney cffk No Yes

The project has opted to not ask committers to sign a contribution agreement because 1) the MIT license is permissive which eliminates the desire to re-license the software, 2) it's an added layer of complexity to the project and 3) some developers has expressed that they will not sign such an agreement. An article on the problems with instating a contribution agreement can be found here

Further Issues

List or reference a list of any outstanding issues not already listed above. Typically link to issues in project's issue tracker.

EPSG registry license compatibility

The ​EPSG Terms of Use requires that modified data is not attributed to the EPSG Dataset when the modifications fall outside of the permitted list:

No data that has been modified other than as permitted in these Terms of Use shall be attributed to the EPSG Dataset.

As long as the data is not attributed to the EPSG dataset, the terms of the MIT license used for PROJ can also cover the SQL files and resulting database.

Both the OSD & DSFG permit only allowing modifications when a different name is used, to dissociate the original author from the modified work:

  1. Integrity of The Author's Source Code

The license may restrict source-code from being distributed in modified form only if the license allows the distribution of "patch files" with the source code for the purpose of modifying the program at build time. The license must explicitly permit distribution of software built from modified source code. The license may require derived works to carry a different name or version number from the original software. (This is a compromise. The Debian group encourages all authors not to restrict any files, source or binary, from being modified.)

This has allowed PROJ 6.0.0 and newer to stay in the main component of the Debian archive.