GEOS Provenance Review

Project History
GEOS was conceived as a port of the Java "JTS Topology Suite", to provide a set of robust and complete geometrical topological functions to the C/C++ family of open source geospatial software. Initially the only target of GEOS was to be PostGIS, but it has since also been incorporated (to our knowledge) in the open source QGIS, Mapserver, GDAL and MapGuide projects, as well as the FME from Safe Software. It is likely included in many many other open source projects and proprietary products as well.

The initial work on GEOS was done as a project that received funding from Refractions Research and Vivid Solutions, with a matching grant from the BC Advanced Systems Institute. The funding was directed to the University of Victoria Software Engineering Group, who hired computer science graduate student Yury Bychkov (ybychkov) to undertake the work.

The first version of GEOS checked into SVN was a working and largely complete version of ybychkov's work, that became GEOS 1.0 after some alterations to support GNU builds. As part of the funding agreement, all the copyrights to the original GEOS work were under the name of Vivid Solutions, since the code was derived more-or-less directly from the JTS code base, which was also under the Vivid copyright. The license was agreed to be LGPL and has remained LGPL.

Committers

 * svnlogin - Full Name (#commits, last-commit-date)

Current

 * pramsey - Paul Ramsey (124, 2007-12-21)
 * mbdavis - Martin Davis (1, 2003-02-11)
 * hobu - Howard Butler (17, 2006-11-10)
 * mloskot - Mateusz Loskot (136, 2008-08-01)
 * csavage - Charlie Savage (102, 2007-09-21)
 * frank, warmerdam - Frank Warmerdam (27, 2008-07-19)
 * sgillies - Sean Gillies (10, 2008-01-02)
 * benjubb - Ben Jubb (38, 2008-01-30)

Historical

 * ybychkov - Yury Bychkov (98, 2004-05-28)
 * fvilla - Ferdinando Villa (4, 2002-09-12)
 * strk - Sandro Santilli (1411, 2007-03-05)
 * dblasby - Dave Blasby (1, 2003-04-04)
 * nvine - Norman Vine (1, 2002-10-23)

NOTE 1
Change http://geos.refractions.net to http://www.osgeo.org/geos in all headers

NOTE 2
* $Id: RobustDeterminant.cpp 1820 2006-09-06 16:54:23Z mloskot $ * * RobustDeterminant implements an algorithm to compute the * sign of a 2x2 determinant for double precision values robustly. * It is a direct translation of code developed by Olivier Devillers. * * The original code carries the following copyright notice: * ************************************************************************* * Author : Olivier Devillers * Olivier.Devillers@sophia.inria.fr * http:/www.inria.fr:/prisme/personnel/devillers/anglais/determinant.html **************************************************************************

Resolution: Added original author to main copyright block.

NOTE 3
headers/geos/timeval.h nonstandard header, review in detail

Resolution: Altered to standard header format, with author noted in (c) assignment.

Included Libraries
None

Non-free Libraries
None.

Code reviewed
All code reviewed by Paul Ramsey, as of August 6, 2008 (r2146).


 * capi: reviewed
 * debian: reviewed
 * doc: reviewed
 * macros: reviewed
 * source/algorithm: reviewed
 * source/algorithm/locate: reviewed
 * source/examples: reviewed
 * source/geom: reviewed
 * source/geom/prep: reviewed
 * source/geom/util: reviewed
 * source/geomgraph: reviewed
 * source/headers: reviewed
 * source/index/bintree: reviewed
 * source/index/chain: reviewed
 * source/index/intervalrtree: reviewed
 * source/index/quadtree: reviewed
 * source/index/strtree: reviewed
 * source/index/sweepline: reviewed
 * source/io: reviewed
 * source/noding: reviewed
 * source/noding/snapround: reviewed
 * source/operation: reviewed
 * source/operation/buffer: reviewed
 * source/operation/distance: reviewed
 * source/operation/linemerge: reviewed
 * source/operation/overla: reviewed
 * source/operation/polygonize: reviewed
 * source/operation/predicate: reviewed
 * source/operation/relate: reviewed
 * source/operation/valid: reviewed
 * source/planargraph: reviewed
 * source/planargraph/algorithm: reviewed
 * source/precision: reviewed
 * source/simplify: reviewed
 * source/util: reviewed
 * swig: reviewed
 * tests: reviewed
 * tools: reviewed