Changes between Version 5 and Version 6 of RFC6


Ignore:
Timestamp:
Oct 2, 2017, 5:52:44 PM (7 years ago)
Author:
robe
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • RFC6

    v5 v6  
    1 = GEOS RFC 6: Drop support for C++ API and stop shipping the header =
    2 
    3 This document proposes to drop the support of GEOS C++ API starting with GEOS 3.8 and to not ship the C++ Headers anymore
     1= GEOS RFC 6: Require explicit configure with  C++ API to use C++ API and ship c++ headers =
    42
    53||RFC 6:  ||Drop support for C++ API and stop shipping the header||
     
    1412[https://lists.osgeo.org/pipermail/geos-devel/2017-January/007653.html Pointing out removing ability to use GEOS C++ reduces users freedoms]
    1513
     14This document proposes to change the ./configure to by default only allow use of the C-API.  The C++ API headers will only be installed if explicitly asked for
     15as detailed in https://lists.osgeo.org/pipermail/geos-devel/2017-October/008054.html
    1616
    17 We should drop C++ API because we do not have the manpower to guarantee ABI compatiblity from version to version.
    18 Currently osm2pgsql (and before Osmium) and OSSIM were the only ones that use the GEOS C++ API.
     17Any developers who want to use the C++ API will have to build with
    1918
    20 Sandro proposed perhaps just making it [https://lists.osgeo.org/pipermail/geos-devel/2017-October/008047.html more noisy].  It is my experience
    21 that most developers ignore noise.  So if we can't support an API full-heartedly I'd just assume drop it. 
     19./configure --enable-c++-headers-install
    2220
    23 It causes all sorts of problems for users relying on the GEOS upstream and novice users will be burned when their code no longer works with newer GEOS.
     21As proposed in [https://lists.osgeo.org/pipermail/geos-devel/2017-October/008054.html]
    2422
    25 For GEOS 3.7.0 we should put in a stern warning at configure / cmake that this will be the last minor to support the C++ API so people should start changing their code to not rely on it.
     23I propose doing this in GEOS 3.7.0.
    2624
     25The main purpose is to discourage the use of the C++ API because we do not have the manpower to guarantee ABI compatiblity from version to version and thus using  in an environment where
     26the GEOS library is shared across many software is unsupported.
     27
     28Currently osm2pgsql (and before Osmium) are the only ones that use the GEOS C++ API and largely distributed in s shared linux environment.
     29
     30