PostGIS 3.5.0
The PostGIS Team is pleased to release PostGIS 3.5.0! Best Served with PostgreSQL 17 RC1 and GEOS 3.13.0.
This version requires PostgreSQL 12 - 17, GEOS 3.8 or higher, and Proj 6.1+. To take advantage of all features, GEOS 3.12+ is needed. SFCGAL 1.4+ is needed to enable postgis_sfcgal support. To take advantage of all SFCGAL features, SFCGAL 1.5 is needed.
-
Cheat Sheets:
This release is a feature release that includes bug fixes since PostGIS 3.4.3, new features, and a few breaking changes.
Many thanks to our translation teams, in particular:
- Dapeng Wang, Zuo Chenwei from HighGo (Chinese Team)
- Teramoto Ikuhiro (Japanese Team)
- Vincent Bre from Oslandia (French Team)
- #5546, TopoGeometry <> TopoGeometry is now ambiguous, to get the old behaviour, assuming your TopoGeometry objects are named tg1 and tg2, use: ( id(tg1) <> id(tg2) OR topology_id(tg1) <> topology_id(tg2) OR layer_id(tg1) <> layer_id(tg2) OR type(tg1) <> type(tg2) ) (Sandro Santilli)
- #5536, comments are not anymore included in PostGIS extensions (Sandro Santilli)
- xmllint is now required to build comments (Sandro Santilli)
- DocBook5 XSL is now required to build html (Sandro Santilli)
- #5602, Drop support for GEOS 3.6 and 3.7 (Regina Obe)
- #5571, Improve ST_GeneratePoints performance, but old seeded pseudo random points will need to be regenerated.
- #5596, GH-749, Allow promoting column as an id in ST_AsGeoJson(record,..). Views and materialized views that use the ST_AsGeoJSON(record ..) will need rebuilding to upgrade to new signature (Jan Tojnar)
- #5496, ST_Clip all variants replaced, will require rebuilding of materialized views that use them (Regina Obe)
- #5659, ST_DFullyWithin behaviour has changed to be ST_Contains(ST_Buffer(A, R), B) (Paul Ramsey)
- Remove the WFS_locks extra package. (Paul Ramsey)
- #5747, GH-776, ST_Length: Return 0 for CurvePolygon (Dan Baston)
- #5770, support for GEOS 3.13 and RelateNG. Most functionality
remains the same, but new GEOS predicate implementation
has a few small changes.
- Boundary Node Rule relate matrices might be different when using the “multi-valent end point” rule.
- Relate matrices for situations with invalid MultiPolygons with shared boundaries might be different. Run ST_MakeValid to get valid inputs to feed to the calculation.
- Zero length LineStrings are treated as if they are the equivalent Point object.
- GH-761, ST_StraightSkeleton => CG_StraightSkeleton (Loïc Bartoletti)
- GT-189, All SFCGAL functions now use the prefix CG_, with the old ones using ST_ being deprecated. (Loïc Bartoletti)
- Improvements in the ‘postgis’ script:
- new command list-enabled
- new command list-all
- command upgrade upgrades all databases that need to be
- command status reports status of all databases (Sandro Santilli)
- #5742, expose version of PROJ at compile time (Sandro Santilli)
- #5721, postgis_topology: Allow sharing sequences between different topologies (Lars Opsahl)
- #5667, postgis_topology: TopoGeo_LoadGeometry (Sandro Santilli)
- #5055, add explicit <> geometry operator to prevent non-unique error with <> and != (Paul Ramsey)
- Add ST_HasZ/ST_HasM (Loïc Bartoletti)
- GT-123, postgis_sfcgal: CG_YMonotonePartition, CG_ApproxConvexPartition, CG_GreeneApproxConvexPartition and CG_OptimalConvexPartition (Loïc Bartoletti)
- GT-156, postgis_sfcgal: CG_Visibility (Loïc Bartoletti)
- GT-157, postgis_sfcgal: Add ST_ExtrudeStraightSkeleton (Loïc Bartoletti)
- #5496, postgis_raster: ST_Clip support for touched (Regina Obe)
- GH-760, postgis_sfcgal: CG_Intersection, CG_3DIntersects, CG_Intersects, CG_Difference, CG_Union (and aggregate), CG_Triangulate, CG_Area, CG_3DDistance, CG_Distance (Loïc Bartoletti)
- #5687, Don’t rely on search_path to determine postgis schema Fix for PG17 security change (Regina Obe)
- #5705, GH-767, ST_RemoveIrrelevantPointsForView (Sam Peters)
- #5706, GH-768, ST_RemoveSmallParts (Sam Peters)
- #5550, Fix upgrades from 2.x in sandboxed systems (Sandro Santilli)
- #3587, postgis_topology: faster load of big lines in topologies (Sandro Santilli)
- #5670, postgis_topology: faster ST_CreateTopoGeo (Sandro Santilli)
- #5531, documentation format upgraded to DocBook 5 (Sandro Santilli)
- #5543, allow building without documentation (Sandro Santilli)
- #5596, GH-749, Allow promoting column as an id in ST_AsGeoJson(record,..). (Jan Tojnar)
- GH-744, Don’t create docbook.css for the HTML manual, use style.css instead (Chris Mayo)
- Faster implementation of point-in-poly cached index (Paul Ramsey)
- Improve performance of ST_GeneratePoints (Paul Ramsey)
- #5361, ST_CurveN, ST_NumCurves and consistency in accessors on curved geometry (Paul Ramsey)
- GH-761, postgis_sfcgal: Add an optional parameter to CG_StraightSkeleton (was ST_StraightSkeleton) to use m as a distance in result (Hannes Janetzek, Loïc Bartoletti)
After installing the binaries or after running pg_upgrade:
For PostGIS 3.4, 3.3, 3.2, 3.1, 3.0 do below which will upgrade all your postgis extensions.
SELECT postgis_extensions_upgrade();
For PostGIS 2.5 and below do:
ALTER EXTENSION postgis UPDATE;
SELECT postgis_extensions_upgrade();
SELECT postgis_extensions_upgrade();
If you come across any issues, feel free to report via our ticket tracker or mailing list with details
View all tickets for 3.5.0 milestone.