[gdal-dev] GDAL Maintainers Meeting Minutes

Howard Butler howard at hobu.co
Sun Nov 26 10:22:01 PST 2023


Howard Butler, Even Rouault, Dan Baston, Alessandro Pasotti, Frank Warmerdam, and Javier Jimenez Shaw held the monthly GDAL Maintainers Meeting on 11/23/2023. The following items were discussed and reported upon:

Fundraising update
----------------------------

Howard has begun out thank you / renewal letters to sponsors as their renewal periods are coming due for 2024. If your organization is not currently a member of the GDAL Sponsorship Program, please contact Howard to sign up. Economic uncertainty and corporate turnover are always risks to the program, and if your company has resources to contribute, we would be very happy to have you at whatever sponsorship level your organization can support.

OSGeo Community Sprint
------------------------------------------
Even Rouault, Jukka Rahkonen, and Dan Baston attended the OSGeo Community Sprint next week in Vienna https://wiki.osgeo.org/wiki/OSGeo_Community_Sprint_2023 

Maintenance activities update
------------------------------------------

Status from Dan:

* At the Vienna sprint, Dan focused adding SELECT ALL EXCEPT support fields to OGRSQL 
* Signature change for OGROpen (RFC97 related) which is documented in the migration guide
* const correctness and ownership tightening in OGR
* Dropped older CI configurations

Status from Alessandro:

* Computation of 3D extents for OGR features (#8570)
* PostGIS search path override
* OAPIF initial page size open option 

Status from Even:

* Gathered, built, motioned, and released GDAL 3.7.3 https://github.com/OSGeo/gdal/releases/tag/v3.7.3
* Gathered, built, motioned, and released GDAL 3.8.0 https://github.com/OSGeo/gdal/releases/tag/v3.8.0
* GDAL 3.8.1RC2 is now available to address some regressions present in 3.8.0
* RFC96 – Deferred C++ Plugin Loading
  * one example showed default plugin loading times improved from ~300ms to ~30ms as a result of implementation
  * converted all drivers that depend on external dependencies
  * about 50 drivers with no dependencies that could be updated
  * spent most of code sprint doing RFC 96 updates

* RFC 97 – "Sealing" of Definitions
  * Tightening of ownership and const correctness of driver primitives
  * Vote currently underway

* RFC 98 – Build requirements for GDAL 3.9 brings forward a number of GDAL dependencies to newer versions to enable the project to jettison code, workarounds, and configuration complexity that is no longer necessary.

* Even experimented with using "unity" builds in CMake with PROJ. Some significant code modifications were required in PROJ to take advantage of them, but a 2x compile speed benefit was achieved. While that improves a developer's life significantly, the real win is in CI scenarios. There are downsides of unity builds, however, and they will not be enabled for all CI configurations. Even expects to complete more unity build work in GDAL as time permits.

C++17 and GDAL 3.9 or GDAL 4.0?
-------------------------------------------------

* C++17 is currently enabled in master. An RFC will be written in combination with RFC 98 to describe the consequences, requirements, usages, and API changes that may result of this update. Note that RFC 68 in 2017 was where we updated to C++11 in GDAL 2.3.0 https://gdal.org/development/rfc/rfc68_cplusplus11.html 

* The update to C++ brings up the question of whether or not the next release should be called 3.9 or 4.0. Some items that might possibly go into the next release necessitating a major increment include:

  * Standard C++ types (RFC 95 https://github.com/OSGeo/gdal/blob/master/doc/source/development/rfc/rfc95_standard_int_types.rst)
  * Enabling Python exceptions by default (only took 20 years!)
  * C++ 17 minimum version
  * Removal of GDALRasterIOExtraArg
  * "reasonable" std::unique_ptr usage in GDAL C++ API
  * Make OGRSpatialReference usage be std::shared_ptr instead of homespun reference counts
  * Remove CPL_STDCALL (old windows crap no one needs)
  * Make exportToWkt export WKT2 by default
  * use TILED=YES by default in GTiff driver
  * use COMPRESS=LZW by default in GTiff driver
  * design and unify datasource, open options, and subdatasets
  * See https://github.com/OSGeo/gdal/issues/8440 for more and to continue discussion

The next GDAL Maintainers Meeting is 12/28/2023 at 9:00 EDT. Any PSC members are welcome to join by reaching out to me for an invite.

Howard



More information about the gdal-dev mailing list