Changes between Version 5 and Version 6 of RFC6
- Timestamp:
- Oct 2, 2017, 5:52:44 PM (7 years ago)
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 = 4 2 5 3 ||RFC 6: ||Drop support for C++ API and stop shipping the header|| … … 14 12 [https://lists.osgeo.org/pipermail/geos-devel/2017-January/007653.html Pointing out removing ability to use GEOS C++ reduces users freedoms] 15 13 14 This 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 15 as detailed in https://lists.osgeo.org/pipermail/geos-devel/2017-October/008054.html 16 16 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. 17 Any developers who want to use the C++ API will have to build with 19 18 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 22 20 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. 21 As proposed in [https://lists.osgeo.org/pipermail/geos-devel/2017-October/008054.html] 24 22 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.23 I propose doing this in GEOS 3.7.0. 26 24 25 The 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 26 the GEOS library is shared across many software is unsupported. 27 28 Currently osm2pgsql (and before Osmium) are the only ones that use the GEOS C++ API and largely distributed in s shared linux environment. 29 30