forked from postgis/postgis
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathNEWS
More file actions
3059 lines (2701 loc) · 135 KB
/
Copy pathNEWS
File metadata and controls
3059 lines (2701 loc) · 135 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
PostGIS 3.7.0dev
xxxx/xx/xx
* Breaking Changes *
- #5688, [topology] topology building functions now interpret tolerance 0
(old default) to really mean 0 and want -1 (new default) to mean
"use topology precision" (Sandro Santilli)
- #6024, Remove support for PostgreSQL 12 and 13 (Regina Obe)
* New Features *
- #5993, [topology] Add max_edges parameter to TopoGeo_AddLinestring
(Sandro Santilli)
- #6001, support MultiLineString in ST_MakeLine (Paul Ramsey)
- #2858, ST_MMin and ST_MMax (Paul Ramsey)
- #5941, [raster] Support GDT_Float16 pixel type (Darafei Praliaskouski)
- #5992, Optimize GiST index for repeated edge subdivision in topology (Darafei Praliaskouski)
- #5702, Allow the compiler to detect the parallelism -flto=auto (Darafei Praliaskouski)
- #4798, ST_AsGeoJSON warns about duplicate property keys (Darafei Praliaskouski)
- #5950, Document POSTGIS_REGRESS_DB_OWNER for sandboxed regression roles (Darafei Praliaskouski)
- #4332, Clarify the scope of several Function Reference categories (Darafei Praliaskouski)
- #4222, [raster] ST_DumpAsPolygons honours PostgreSQL interrupts (Darafei Praliaskouski)
- #5109, Document the meaning of topology.next_left_edge and topology.next_right_edge links (Darafei Praliaskouski)
- #5889, [topology] Include representative locations in topology build errors (Darafei Praliaskouski)
* Bug Fixes *
- #5948, [topology] Prevent MakeTopologyPrecise from erasing edges when
grid size exceeds their extent (Darafei Praliaskouski)
- #5959, Prevent histogram target overflow when analysing massive tables (Darafei Praliaskouski)
- #4828, geometry_columns handles NOT VALID SRID checks without errors (Darafei Praliaskouski)
- #5645, Docs: keep code operators ("=>") intact in translated manuals
by enforcing verbatim CSS (Darafei Praliaskouski)
- #5593, Docs: render manual images with GraphicsMagick without temporary files,
enabling parallel builds, keeping ImageMagick fallbacks working, and
documenting the generator workflow for contributors (Darafei Praliaskouski)
PostGIS 3.6.0
2025/09/01
This version requires PostgreSQL 12-18beta3, GEOS 3.8 or higher, and Proj 6.1+.
To take advantage of all features, GEOS 3.14+ is needed.
To take advantage of all SFCGAL features, SFCGAL 2.2+ is needed.
Many thanks to our translation teams, in particular:
Teramoto Ikuhiro (Japanese Team)
Daniel Nylander (Swedish Team)
Dapeng Wang, Zuo Chenwei from HighGo (Chinese Team)
Denys Kovshun (Ukrainian Team)
* Breaking Changes *
- #5799, make ST_TileEnvelope clips envelopes to tile plane extent (Paul Ramsey)
- #5829, remove constraint checking from geometry_columns view (Paul Ramsey)
- #3373, GT-255, [topology] Support for upgrading domains (Ayo Adesugba, U.S. Census Bureau)
- GT-252, ST_NumGeometries/ST_GeometryN treat TIN and PolyhedralSurface as unitary geometries,
use ST_NumPatches/ST_PatchN for patch access (Loïc Bartoletti)
- #3110, GT-242 [topology] Support for bigint (Ayo Adesugba, U.S. Census Bureau)
- #5359, #5897, GT-260 [tiger_geocoder] Use @extschema:extension@ for PG >= 16
to schema qualify dependent extensions, switch to use typmod for tiger tables
(Regina Obe)
* Deprecated / Removed signatures *
- #3110, GT-242, [topology] numerous topology functions that accepted integer
replaced with bigint versions to support both integer and bigint inputs
(Ayo Adesugba, U.S. Census Bureau)
- #5498 Drop st_approxquantile(raster, double precision), wasn't usable as it triggered
is not unique error when used (Regina Obe)
* New Features *
- GH-803, [sfcgal] ADD CG_Simplify function (Loïc Bartoletti)
- GH-805, [sfcgal] Add M support for SFCGAL >= 1.5.0 (Loïc Bartoletti)
- GH-801, [sfcgal] ADD CG_3DAlphaWrapping function (Jean Felder)
- #5894, [topology] TotalTopologySize (Sandro Santilli)
- #5890, [topology] ValidateTopologyPrecision, MakeTopologyPrecise (Sandro Santilli)
- #5861, [topology] Add --drop-topology switch to pgtopo_import (Sandro Santilli)
- #1247, [raster] ST_AsRasterAgg (Sandro Santilli)
- #5784, GT-223 Export circ_tree_distance_tree_internal for mobilitydb use
(Maxime Schoemans)
- GT-228, [sfcgal] Add new functions (Scale, Translate, Rotate, Buffer 3D and
Straight Skeleton Partition) from SFCGAL 2 (Loïc Bartoletti)
- [raster] New GUC postgis.gdal_cpl_debug, enables GDAL debugging messages
and routes them into the PostgreSQL logging system. (Paul Ramsey)
- #5841, Change interrupt handling to remove use of pqsignal to support PG 18 (Paul Ramsey)
- Add ST_CoverageClean to edge match and gap remove polygonal
coverages (Paul Ramsey) from GEOS 3.14 (Martin Davis)
- #3110, GT-242 [topology] Support for bigint (Ayo Adesugba, U.S. Census Bureau)
- [raster] Add ST_ReclassExact to quickly remap values in raster (Paul Ramsey)
- #5963, [raster] add ST_IntersectionFractions - Requires GEOS 3.14 (Paul Ramsey)
- #5971, Option to build --without-tiger (Regina Obe)
PostGIS 3.5.0
2024/09/25
To take advantage of all postgis_sfcgal extension features SFCGAL 1.5+ is needed.
PostgreSQL 12-17 required. GEOS 3.8+ required. Proj 6.1+ required.
Many thanks to our translation teams, in particular:
Dapeng Wang, Zuo Chenwei from HighGo (Chinese Team)
Teramoto Ikuhiro (Japanese Team)
Andreas Schild (German Team)
* Breaking Changes *
- #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
(funding from The National Institute for Agricultural
and Food Research and Technology (INIA-CSIC)),
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.
* Deprecated signatures *
- GH-761, ST_StraightSkeleton => CG_StraightSkeleton (Loïc Bartoletti)
- GT-189, All SFCGAL functions now use the prefix CG_, with the old onesusing
ST_ being deprecated. (Loïc Bartoletti)
* New Features *
- 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)
* Enhancements *
- #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)
PostGIS 3.4.0
2023/08/15
This version requires PostgreSQL 12-16, GEOS 3.6 or higher, and Proj 6.1+.
To take advantage of all features, GEOS 3.12+ is needed.
To take advantage of all SFCGAL features, SFCGAL 1.4.1+ is needed.
Many thanks to our translation teams, in particular:
Teramoto Ikuhiro (Japanese Team)
Vincent Bre (French Team)
There are 2 new ./configure switches:
- --disable-extension-upgrades-install, will skip installing all the extension upgrade scripts except for the ANY--currentversion. If you use this, you can install select upgrades using the postgis commandline tool
- --without-pgconfig, will build just the commandline tools
raster2pgsql and shp2pgsql even if PostgreSQL is not installed
* New Features *
- #5055, complete manual internationalization (Sandro Santilli)
- #5052, target version support in postgis_extensions_upgrade
(Sandro Santilli)
- #5306, expose version of GEOS at compile time (Sandro Santilli)
- New install-extension-upgrades command in postgis script (Sandro Santilli)
- #5257, #5261, #5277, Support changes for PostgreSQL 16 (Regina Obe)
- #5006, GH705, ST_Transform: Support PROJ pipelines (Robert Coup, Koordinates)
- #5283, [postgis_topology] RenameTopology (Sandro Santilli)
- #5286, [postgis_topology] RenameTopoGeometryColumn (Sandro Santilli)
- GH703, [postgis_raster] Add min/max resampling as options (Christian Schroeder)
- #5336, [postgis_topology] topogeometry cast to topoelement support (Regina Obe)
- Allow singleton geometry to be inserted into Geometry(Multi*) columns (Paul Ramsey)
- GH721, New window-based ST_ClusterWithinWin and ST_ClusterIntersectingWin (Paul Ramsey)
- #5397, [address_standardizer] debug_standardize_address function (Regina Obe)
- #5373, ST_LargestEmptyCircle, exposes extra semantics on circle finding
Requires GEOS 3.9+ (Martin Davis)
- #5267, ST_Project signature for geometry, and two-point signature (Paul Ramsey)
- #5267, ST_LineExtend for extending linestrings (Paul Ramsey)
- New coverage functions ST_CoverageInvalidEdges, ST_CoverageSimplify, ST_CoverageUnion (Paul Ramsey)
* Enhancements *
- #5194, do not update system catalogs from postgis_extensions_upgrade (Sandro Santilli)
- #5092, reduce number of upgrade paths installed on system,
by providing an ANY intermediary path that all upgrades will
go thru (Sandro Santilli)
- #635, honour --bindir (and --prefix) configure switch for executables (Sandro Santilli)
- Honour --mandir (and --prefix) configure switch for man pages install path (Sandro Santilli)
- Honour --htmldir (and --docdir and --prefix) configure switch for
html pages install path (Sandro Santilli)
- [postgis_topology] Speed up check of topology faces without edges (Sandro Santilli)
- [postgis_topology] Speed up coincident nodes check in topology validation (Sandro Santilli)
- GH718, ST_QuantizeCoordinates(): speed-up implementation (Even Rouault)
- Repair spatial planner stats to use computed selectivity for contains/within queries (Paul Ramsey)
- GH734, Additional metadata on Proj installation in postgis_proj_version (Paul Ramsey)
- #5177, Allow building tools without PostgreSQL server headers (Sandro Santilli)
- #5447, Manual pages added for postgis and postgis_restore utilities
(Sandro Santilli)
- ST_Project signature for geometry, and two-point signature (Paul Ramsey)
- #4913, ST_AsSVG support for curve types CircularString, CompoundCurve, MultiCurve,
and MultiSurface (Regina Obe)
- #5266, #5460 ST_ClosestPoint, ST_ShortestLine support for geography type
(MobilityDB Esteban Zimanyi, Maxime Schoemans, Paul Ramsey)
* Breaking Changes *
- #5229, Drop support for Proj < 6.1 and PG 11 (Regina Obe)
- #5306, GH734, postgis_full_version() and postgis_proj_version()
now output more information about proj network configuration
and data paths. GEOS compile-time version
also shown if different from run-time
(Paul Ramsey, Sandro Santilli)
- #5447, postgis_restore.pl renamed to postgis_restore
(Sandro Santilli)
- Utilities now installed in OS bin or
user specified --bindir and --prefix
instead of postgresql bin
and extension stripped except on windows
(postgis, postgis_restore, shp2pgsql, raster2pgsql, pgsql2shp,
pgtopo_import, pgtopo_export)
PostGIS 3.3.0
2022/08/26
This version requires PostgreSQL 11 or higher, GEOS 3.6 or higher, and Proj 5.2+.
Additional features are enabled if you are running GEOS 3.9+
ST_MakeValid enhancements with 3.10+, ST_ConcaveHull and several other enhancements with GEOS 3.11+.
Requires SFCGAL 1.4.1+ for ST_AlphaShape and ST_OptimalAlphaShape.
The new --enable-lto flag improves math computations. This new feature is disabled by default
because on some platforms, causes compilation errors (BSD and MingW64 issues have been raised)
Use below to enable it.
./configure --enable-lto flag
* New features *
- #5116, Topology export/import scripts (Sandro Santilli)
- ST_Letters creates geometries that look like letters (Paul Ramsey)
- #5037, postgis_sfcgal: ST_3DConvexHull (Loïc Bartoletti)
- postgis_sfcgal: sfcgal_full_version - reports BOOST and CGAL version
(Loïc Bartoletti)
- GH659, MARC21/XML, ST_GeomFromMARC21, ST_AsMARC21 (Jim Jones)
- #5132, GH683, sfcgal: ST_3DUnion aggregate function (Sergei Shoulbakov)
- #5143, SFCGAL ST_AlphaShape and ST_OptimalAlphaShape
Requires SFCGAL 1.4.1+ (Loïc Bartoletti)
- #5162, ST_TriangulatePolygon with GEOS 3.11+ (Paul Ramsey, Martin Davis)
- #5169, ST_SimplifyPolygonHull with GEOS 3.11+ (Paul Ramsey, Martin Davis)
- #5183, topology.RemoveUnusedPrimitives (Sandro Santilli)
* Breaking changes *
- Drop support for PostgreSQL 9.6 and 10 (Regina Obe)
- Change output for WKT MULTIPOINT. All points now
wrapped in parens. (Even Rouault)
- GH674, geometry validation and fixing is disabled
for ST_DumpAsPolygons and ST_Polygon so it works faster
but might produce invalid polygons. (Aliaksandr Kalenik)
* Enhancements *
- #2861, Add index on topology.node(containing_face) speeding up
splitting and merging of faces (Sandro Santilli)
- #2083, Speed up ST_RemEdge topology functions adding index on
relation(element_id) and edge_data(abs_next*) (Sandro Santilli)
- #5118, Allow dropping topologies with missing topogeometry sequences
(Sandro Santilli)
- #5111, faster topology face MBR computation (Sandro Santilli)
- postgis_extensions_upgrade() support for upgrades from any PostGIS
version, including yet to be released ones (Sandro Santilli)
- #5040, add postgis_sfcgal_full_version (Loïc Bartoletti)
- GH655, GiST: balance the tree splits better in recursive calls (Darafei Praliaskouski)
- GH657, GiST: do not call no-op decompress function (Aliaksandr Kalenik)
- #4939, #5161, ST_LineMerge now has option to keep the directions of input linestrings,
useful when processing road graphs. Requires GEOS 3.11. (Sergei Shoulbakov)
- ST_ConcaveHull GEOS 3.11+ native implementation (Paul Ramsey, Martin Davis)
- ST_ConcaveHull GEOS 3.11+ polygon-respecting native implementation (Paul Ramsey, Martin Davis)
- #4574, GH678, #5121 Enable Link-Time Optimizations using --enable-lto (Sergei Shoulbakov)
- GH676, faster ST_Clip (Aliaksandr Kalenik)
- #5135, Fast GiST index build is enabled by default for PostgreSQL 15+ (Sergei Shoulbakov)
- #4939, #5161, ST_LineMerge now has option to keep the directions of input linestrings,
useful when processing road graphs. Requires GEOS 3.11. (Sergei Shoulbakov)
- #5158, pgtopo_import / pgtopo_export manpages (Sandro Santilli)
- #5170, add a optional max_rows_per_copy to -Y option to raster2pgsql to
control number of rows per copy statement.
Default to 50 when not specified (Regina Obe)
- GH698, support parallel aggregate for ST_Union (Sergei Shoulbakov)
- #5024, Update spatial_ref_sys as part of ALTER EXTENSION update postgis (Paul Ramsey)
- #5039, postgis_tiger_geocoder TIGER 2021 (Regina Obe)
* Bug Fix *
These are fixes not backported to older minors
- #4912, GiST: fix crash on STORAGE EXTERNAL for geography (Aliaksandr Kalenik)
- #5088, Memory corruption in mvt_agg_transfn (Victor Collod)
- #5137, resetting interrupt flags before query execution (Sergei Shoulbakov)
- #5148, ST_Clip is more robust to alignment of raster and clip geometry (Sergei Shoulbakov)
- #4932, Bug with geography ST_Intersects / ST_Distance (Paul Ramsey)
- #5089, ST_Reverse also reverses components of CompoundCurve (Paul Ramsey)
- #5089, ST_Reverse also reverses components of CompoundCurve (Paul Ramsey)
- #5181, Reset proj error state after failed parse (Paul Ramsey)
- #5171, Short circuit geodesic distance when inputs equal (Paul Ramsey)
- #5154, raster ST_Value is undercosted (Regina Obe)
- #5157, Revise minimum_bounding_circle Cunit test
to be tolerant of small 32-bit floating point differences
(Regina Obe)
- #5191, Functions should use integer instead of int4 (Regina Obe)
- #5139, PostGIS causes to_jsonb to no longer be parallel safe,
ST_AsGeoJSON and ST_AsGML are also parallel unsafe
(Regina Obe, Paul Ramsey)
- #5025, Ensure that additional operators are not appended
when the function and opfamily disagree
about dimensionality (Paul Ramsey)
- #5195, #5196 Change address_standardizer
and postgis_tiger_geocoder CREATE EXTENSION to use CREATE
instead of CREATE OR REPLACE. (Regina Obe)
- #5202, Guard against downgrade (Sandro Santilli)
- #5104, postgis_extensions_upgrade() fails with pgextwlist (Regina Obe)
- #5179, pgsql2shp syntax error on big-endian (Bas Couwenberg)
- #5173 st_asflatgeobuf detoast crash (Paul Ramsey)
- #4932, Bug with geography ST_Intersects / ST_Distance (Paul Ramsey)
- #5114, pgsql2shp segfault with long or many truncated columns
PostGIS 3.2.0 (Olivier Courtin Edition)
2021/12/17
This version requires PostgreSQL 9.6 or higher, GEOS 3.6 or higher, and Proj 4.9+.
Additional features are enabled if you are running GEOS 3.9+
(and ST_MakeValid enhancements with 3.10+),
Proj 6.1+, and PostgreSQL 14+.
Due to some query performance degradation
with the new fast index build that requires PG14,
we have decided to disable the feature by default
until we get more user testing
as to the true impact of real-world queries.
If you are running PG14+, you can re-enable it by doing
ALTER OPERATOR FAMILY gist_geometry_ops_2d USING gist
ADD FUNCTION 11 (geometry)
geometry_gist_sortsupport_2d (internal);
and then reindex your gist indexes.
To revert back to the old index behavior:
ALTER OPERATOR FAMILY gist_geometry_ops_2d using gist
DROP FUNCTION 11 (geometry);
and then reindex your gist indexes.
* Breaking changes *
- #5008, Empty geometries are not reported as being within Infinite
distance by ST_DWithin (Sandro Santilli)
- #4824, Removed `--without-wagyu` build option. Using Wagyu is now mandatory to build with MVT support.
- #4933, topology.GetFaceByPoint will not work with topologies having invalid edge linking.
- #4981, ST_StartPoint support any geometry. No longer returns null for non-linestrings.
- #4149, ST_AsMVTGeom now preserves more of original geometry's details at scale close to target extent.
If you need previous simplifying behaviour, you can ST_Simplify the geometry in advance.
(Darafei Praliaskouski)
- Proj 4.9 or higher is required
- #5000, Turn off Window support in ST_AsMVT aggregate
as no real use-case for it and it crashes with random input
(Paul Ramsey)
* Enhancements *
- #4997, FlatGeobuf format input/output (Björn Harrtell)
- #4575, GRANT SELECT on topology metadata tables to PUBLIC (Sandro Santilli)
- #2592, Do not allow CreateTopology to define topologies with SRID < 0
(Sandro Santilli)
- #3232, Prevent moving an isolated node to different face
(Sandro Santilli)
- Consider collection TopoGeometries while editing topology primitives.
(Sandro Santilli)
- #3248, Prevent removing isolated edges if used in a TopoGeometry
(Sandro Santilli)
- #3231, Prevent removing isolated nodes if used in a TopoGeometry
(Sandro Santilli)
- #3239, Prevent headling topology edges if the connecting node is
used in the definition of a TopoGeometry (Sandro Santilli)
- #4950, Speed up checking containing_face for nodes in ValidateTopology
(Sandro Santilli)
- #4945, Multi-shell face check in ValidateTopology (Sandro Santilli)
- #4944, Side-location conflict check in ValidateTopology (Sandro Santilli)
- #3042, ValidateTopology check for edge linking (Sandro Santilli)
- #3276, ValidateTopology check for face's mbr (Sandro Santilli)
- #4936, Bounding box limited ValidateTopology (Sandro Santilli)
- #4933, Speed up topology building in presence of big faces (Sandro Santilli)
- #3233, ValidateTopology check for node's containing_face (Sandro Santilli)
- #4830, ValidateTopology check for edges side face containment
(Sandro Santilli)
- #4827, Allow NaN coordinates in WKT input (Paul Ramsey)
- ST_Value() accepts resample parameter to add bilinear option (Paul Ramsey)
- #3778, #4401, ST_Boundary now works for TIN and does not linearize curves (Aliaksandr Kalenik)
- #4881, #4884, Store sign of edge_id for lineal TopoGeometry in relation table
to retain direction (Sandro Santilli)
- #4628, Add an option to disable ANALYZE when loading shapefiles (Stefan Corneliu Petrea)
- #4924, Faster ST_RemoveRepeatedPoints on large multipoints, O(NlogN) instead of O(N^2)
(Aliaksandr Kalenik, Darafei Praliaskouski)
- #4925, fix ST_DumpPoints to not overlook points (Aliaksandr Kalenik)
- ST_SRID(topogeometry) override, to speedup lookups (Sandro Santilli)
- #2175, Avoid creating additional nodes when adding same closed
line to topology (Sandro Santilli)
- #4974, Upgrade path for address_standardizer_data_us
(Jan Katins of Aiven, Regina Obe)
- #4975, PostGIS upgrade change to not use temp tables (Jan Katins of Aiven)
- #4981, ST_StartPoint support any geometry (Aliaksandr Kalenik)
- #4799, Include srs in GeoJSON where it exists in spatial_ref_sys.
- #4986, GIST indexes on Postgres 14 are now created faster using Hilbert-sorting method.
(Han Wang, Aliaksandr Kalenik, Darafei Praliaskouski, Giuseppe Broccolo)
- #4949, Use proj_normalize_for_visualization to hand "axis swap" decisions (Paul Ramsey)
- GH647, ST_PixelAsCentroids, ST_PixelAsCentroid reimplemented on top of a C function (Sergei Shoulbakov)
- GH648, ST_AsMVTGeom now uses faster clipping (Aliaksandr Kalenik)
- #5018, pgsql2shp basic support for WITH CTE clause (Regina Obe)
- #5019, address_standardizer: Add support for pcre2 (Paul Ramsey)
* New features*
- #4923, topology.ValidateTopologyRelation (Sandro Santilli)
- #4933, topology.GetFaceContainingPoint (Sandro Santilli)
- #2175, ST_Scroll (Sandro Santilli)
- #4841, FindTopology to quickly get a topology record (Sandro Santilli)
- #4869, FindLayer to quickly get a layer record (Sandro Santilli)
- #4851, TopoGeom_addTopoGeom function (Sandro Santilli)
- ST_MakeValid(geometry, options) allows alternative validity building
algorithms with GEOS 3.10 (Paul Ramsey)
- ST_InterpolateRaster() fills in raster cells between sample points
using one of a number of algorithms (inverse weighted distance, average, etc)
using algorithms from GDAL
(Paul Ramsey)
- ST_Contour() generates contour lines from raster values
using algorithms from GDAL (Paul Ramsey)
- ST_SetZ()/ST_SetM() fills in z/m coordinates of a geometry using data read
from a raster (Paul Ramsey)
- New postgis.gdal_vsi_options GUC allows out-db rasters on VSI network
services to be accessed with authentication keys, etc. (Paul Ramsey)
- ST_DumpSegments returns a set of segments of input geometry (Aliaksandr Kalenik)
- #4859, ST_Point, ST_PointZ, ST_PointM, ST_PointZM, constructors
with SRID parameter (Paul Ramsey)
- #4808, ST_ClusterKMeans now supports max_radius argument. Use it when you're not sure what is
the number of clusters but you know what the size of clusters should be. (Darafei Praliaskouski)
PostGIS 3.1.0
2020/12/18
This version requires PostgreSQL 9.6 or higher and GEOS 3.6 or higher
Additional features are enabled if you are running GEOS 3.9.
* Breaking changes *
- #4737, Bump minimum protobuf-c requirement to 1.1.0 (Raúl Marín)
The configure step will now fail if the requirement isn't
met or explicitly disabled (--without-protobuf)
- #4258, Separated postgis_sfcgal from postgis
into its own lib file and extension (Regina Obe)
- #4577, Drop support for PostgreSQL 9.5 (Raúl Marín)
- #4601, ST_TileEnvelope signature changed.
- #3057, ST_Force3D, ST_Force3DZ, ST_Force3DM and ST_Force4D signatures changed.
* Deprecated signatures *
- Function postgis_svn_version() replaced by postgis_lib_revision()
(Sandro Santilli)
- #4214, Deprecated ST_Count(tablename,...), ST_ApproxCount(tablename, ...)
ST_SummaryStats(tablename, ..),
ST_Histogram(tablename, ...), ST_ApproxHistogram(tablename, ...),
ST_Quantile(tablename, ...), ST_ApproxQuantile(tablename, ...) removed.
(Darafei Praliaskouski)
* New features*
- #4687, (GEOS 3.9+) MaximumInscribedCircle (Paul Ramsey)
- (GEOS 3.9+) Optional gridSize parameter to ST_Union, ST_UnaryUnion,
ST_Difference, ST_Intersection, ST_SymDifference, ST_Subdivide
for overlay with exact tolerance (Sandro Santilli)
- #4624, ST_HexagonGrid and ST_SquareGrid, set returning functions to
generate tilings of the plane (Paul Ramsey)
- #4624, ST_Hexagon and ST_Square, shape generators (Paul Ramsey)
- #4804, (GEOS 3.9+) ST_ReducePrecision allows valid precision reduction
(Paul Ramsey)
- #4710, ST_ClusterKMeans now works with 3D geometries (Darafei Praliaskouski)
- #4801, ST_ClusterKMeans supports weights in POINT[Z]M geometries
(Darafei Praliaskouski)
- #4805, _ST_SortableHash exposed to work around parallel sorting performance issue
in Postgres. If your table is huge, use ORDER BY _ST_SortableHash(geom)
instead of ORDER BY geom to make parallel sort faster (Darafei Praliaskouski)
- #4625, Correlation statistics now calculated.
Run ANALYZE for BRIN indexes to start kicking in.
(Darafei Praliaskouski)
- #4698, Add a precision parameter to ST_AsEWKT (Raúl Marín)
* Enhancements *
- #4789, Sped up TopoJSON output for areal TopoGeometry with
many holes (Sandro Santilli)
- #4758, Improved topology noding robustness (Sandro Santilli)
- Make ST_Subdivide interruptible (Sandro Santilli)
- #4660, Changes in double / coordinate printing (Raúl Marín)
- Use the shortest representation (enough to guarantee roundtrip).
- Uses scientific notation for absolute numbers smaller than 1e-8.
The previous behaviour was to output 0 for absolute values smaller than
1e-12 and fixed notation for anything bigger than that.
- Uses scientific notation for absolute numbers greater than 1e+15
(same behaviour).
- The precision parameter now also affects the scientific notation
(before it was fixed [5-8]).
- All output functions now respect the requested precision (without
any limits).
- The default precision is the same (9 for GeoJSON, 15 for everything else).
- #4746, Micro optimizations to the serialization process (Raúl Marín)
- #4623, Optimize varlena returning functions (Raúl Marín)
- #4615, Speed up geojson output (Raúl Marín)
- #4737, Improve performance and reduce memory usage in ST_AsMVT, especially in
queries involving parallelism (Raúl Marín)
- #4719, Fail fast when srids don't match ST_Intersection(geometry,raster)
Also schema qualify calls in function. (Regina Obe)
- #4784, Add ST_CollectionExtract(geometry) with default behaviour of
extracting the components of highest coordinate dimension. (Paul Ramsey)
- #4675, topology.GetRingEdges now implemented in C (Sandro Santilli)
- #4672, Cache getSRSbySRID and getSRIDbySRS for better performance (Raúl Marín)
- #4676, #4657 Avoid decompressing toasted geometries to read only the header
(Raúl Marín)
- #4677, Share gserialized objects between different cache types (Raúl Marín)
- #4601, Add ST_TileEnvelope margin argument (Yuri Astrakhan)
- #2972, Add quiet mode (-q) to pgsql2shp (Kristian Thy)
- #3057, Optional value params for Force3D*, Force4D functions (Kristian Thy)
- #4569, Allow unknown SRID geometry insertion into typmod SRID column (Paul Ramsey)
- #4149, ST_Simplify(geom, 0) is now O(N).
ST_Affine (ST_Translate, ST_TransScale, ST_Rotate) optimized.
ST_SnapToGrid optimized. (Darafei Praliaskouski)
- #4656, Cast a geojson_text::geometry for implicit GeoJSON ingestion (Raúl Marín)
PostGIS 3.0.0
2019/10/20
This version requires PostgreSQL 9.5+-12 and GEOS >= 3.6+
Additional features enabled if you are running Proj6+, PostgreSQL 12
and GEOS 3.8.0
* Breaking Changes *
- #4267, Bump minimum GEOS version to 3.6 (Regina Obe, Darafei Praliaskouski)
- #3888, Raster support now available as a separate extension
(Sandro Santilli)
- #3807, Extension library files no longer include the minor version.
Use New configure switch --with-library-minor-version
if you need the old behavior (Regina Obe)
- #4230, ND box operators (overlaps, contains, within, equals) now
don't look on dimensions that aren't present in both operands.
Please REINDEX your ND indexes after upgrade. (Darafei Praliaskouski)
- #4229, Dropped support for PostgreSQL < 9.5. (Darafei Praliaskouski)
- #4260, liblwgeom headers are not installed anymore.
If your project depends on them available, please use
librttopo instead. (Darafei Praliaskouski)
- #4258, Remove SFCGAL support for ST_Area, ST_Distance, ST_Intersection,
ST_Difference, ST_Union, ST_Intersects, ST_3DIntersects, ST_3DDistance
and postgis.backend switch (Darafei Praliaskouski)
- #4267, Enable Proj 6 deprecated APIs (Darafei Praliaskouski, Raúl Marín)
- #4268, Bump minimum SFCGAL version to 1.3.1 (Darafei Praliaskouski)
- #4331, ST_3DMakeBox now returns error instead of a minuscule box (Regina Obe)
- #4342, Removed "versioned" variants of ST_AsGeoJSON and ST_AsKML (Paul Ramsey)
- #4356, ST_Accum removed. Use array_agg instead. (Darafei Praliaskouski)
- #4414, Include version number in address_standardizer lib (Raúl Marín)
- #4334, Fix upgrade issues related to renamed function parameters (Raúl Marín)
- #4442, raster2pgsql now skips NODATA tiles. Use -k option if you still want
them in database for some reason. (Darafei Praliaskouski)
- #4433, 32-bit hash fix (requires reindexing hash(geometry) indexes) (Raúl Marín)
- #3383, Sorting now uses Hilbert curve and Postgres Abbreviated Compare.
You need to REINDEX your btree indexes if you had them.
(Darafei Praliaskouski)
* New Features *
- #2902, postgis_geos_noop (Sandro Santilli)
- #4128, ST_AsMVT support for Feature ID (Stepan Kuzmin)
- #4230, SP-GiST and GiST support for ND box operators overlaps, contains,
within, equals (Esteban Zimányi and Arthur Lesuisse from Université
Libre de Bruxelles (ULB), Darafei Praliaskouski)
- #4171, ST_3DLineInterpolatePoint (Julien Cabieces, Vincent Mora)
- #4311, Introduce WAGYU to validate MVT polygons. This option requires a C++11
compiler and will use CXXFLAGS (not CFLAGS). Add `--without-wagyu`
to disable this option and keep the behaviour from 2.5 (Raúl Marín)
- #1833, ST_AsGeoJSON(row) generates full GeoJSON Features (Joe Conway)
- #3687, Casts json(geometry) and jsonb(geometry) for implicit GeoJSON
generation (Paul Ramsey)
- #4198, Add ST_ConstrainedDelaunayTriangles SFCGAL function (Darafei
Praliaskouski)
* Enhancements *
- #4341, Using "support function" API in PgSQL 12+ to replace SQL inlining
as the mechanism for providing index support under ST_Intersects, et al
- #4330, postgis_restore OOM when output piped to an intermediate process
(Hugh Ranalli)
- #4322, Support for Proj 6+ API, bringing more accurate datum transforms
and support for WKT projections
- #4153, ST_Segmentize now splits segments proportionally (Darafei
Praliaskouski).
- #4162, ST_DWithin documentation examples for storing geometry and
radius in table (Darafei Praliaskouski, github user Boscop).
- #4161 and #4294, ST_AsMVTGeom: Shortcut geometries smaller than the
resolution (Raúl Marín)
- #4176, ST_Intersects supports GEOMETRYCOLLECTION (Darafei Praliaskouski)
- #4181, ST_AsMVTGeom: Avoid type changes due to validation (Raúl Marín)
- #4183, ST_AsMVTGeom: Drop invalid geometries after simplification (Raúl Marín)
- #4196, Have postgis_extensions_upgrade() package unpackaged extensions
(Sandro Santilli)
- #4215, Use floating point compare in ST_DumpAsPolygons (Darafei Praliaskouski)
- #4155, Support for GEOMETRYCOLLECTION, POLYGON, TIN, TRIANGLE in
ST_LocateBetween and ST_LocateBetweenElevations (Darafei Praliaskouski)
- #2767, Documentation for AddRasterConstraint optional parameters (Sunveer Singh)
- #4244, Avoid unaligned memory access in BOX2D_out (Raúl Marín)
- #4139, Make mixed-dimension ND index build tree correctly (Darafei Praliaskouski,
Arthur Lesuisse, Andrew Gierth, Raúl Marín)
- #4262, Document MULTISURFACE compatibility of ST_LineToCurve (Steven Ottens)
- #4276, ST_AsGeoJSON documentation refresh (Darafei Praliaskouski)
- #4292, ST_AsMVT: parse JSON numeric values with decimals as doubles (Raúl Marín)
- #4300, ST_AsMVTGeom: Always return the simplest geometry (Raúl Marín)
- #4301, ST_Subdivide: fix endless loop on coordinates near coincident to bounds
(Darafei Praliaskouski)
- #4289, ST_AsMVTGeom: Transform coordinates space before clipping (Raúl Marín)
- #4272, Improve notice message when unable to compute stats (Raúl Marín)
- #4313, #4307, PostgreSQL 12 compatibility (Laurenz Albe, Raúl Marín)
- #4299, #4304, ST_GeneratePoints is now VOLATILE. IMMUTABLE version with
seed parameter added. (Mike Taves)
- #4278, ST_3DDistance and ST_3DIntersects now support Solid TIN and Solid
POLYHEDRALSURFACE (Darafei Praliaskouski)
- #4348, ST_AsMVTGeom (GEOS): Enforce validation at all times (Raúl Marín)
- #4295, Allow GEOMETRYCOLLECTION in ST_Overlaps, ST_Contains, ST_ContainsProperly,
ST_Covers, ST_CoveredBy, ST_Crosses, ST_Touches, ST_Disjoint, ST_Relate,
ST_Equals (Esteban Zimányi)
- #4340, ST_Union aggregate now can handle more than 1 GB of geometries
(Darafei Praliaskouski)
- #4378, Allow passing TINs as input to GEOS-backed functions (Darafei
Praliaskouski)
- #4368, Reorder LWGEOM struct members to minimize extra padding (Raúl Marín)
- #4141, Use uint64 to handle row counts in the topology extension (Raúl Marín)
- #4225, Upgrade tiger to use tiger 2018 census files
- #4412, Support ingesting rasters with NODATA=NaN (Darafei Praliaskouski)
- #4413, Raster tile size follows GeoTIFF block size on raster2pgsql -t auto
(Darafei Praliaskouski)
- #4422, Modernize Python 2 code to get ready for Python 3 (Christian Clauss)
- #4352, Use CREATE OR REPLACE AGGREGATE for PG12+ (Raúl Marín)
- #4394, Allow FULL OUTER JOIN on geometry equality operator (Darafei Praliaskouski)
- #4441, Make GiST penalty friendly to multi-column indexes and build single-column
ones faster. (Darafei Praliaskouski)
- #4403, Support for shp2pgsql ability to reproject with copy mode (-D) (Regina Obe)
- #4410, More descriptive error messages about SRID mismatch (Darafei Praliaskouski)
- #4399, TIN and Triangle output support in all output functions (Darafei
Praliaskouski)
- #3719, Impose minimum number of segments per arc during linearization
(Dan Baston / City of Helsinki, Raúl Marín)
- #4277, ST_GeomFromGeoJSON now marks SRID=4326 by default as per RFC7946,
ST_AsGeoJSON sets SRID in JSON output if it differs from 4326.
(Darafei Praliaskouski)
- #3979, postgis_sfcgal_noop() round trip function (Lucas C. Villa Real)
- #4328, ST_3DIntersects for 2D TINs. (Darafei Praliaskouski)
- #4509, Update geocoder for tiger 2019 (Regina Obe)
PostGIS 2.5.0
2018/09/23
WARNING: If compiling with PostgreSQL+JIT, LLVM >= 6 is required
Supported PostgreSQL versions for this release are:
PostgreSQL 9.4 - PostgreSQL 12 (in development)
GEOS >= 3.5
* New Features *
- #1847, SP-GiST 2D and 3D support for PostgreSQL 11+ (Esteban Zimányi and
Arthur Lesuisse from Université Libre de Bruxelles (ULB), Darafei
Praliaskouski)
- #4056, ST_FilterByM (Nicklas Avén)
- #4050, ST_ChaikinSmoothing (Nicklas Avén)
- #3989, ST_Buffer single sided option (Stephen Knox)
- #3876, ST_Angle function (Rémi Cura)
- #3564, ST_LineInterpolatePoints (Dan Baston)
- #3896, PostGIS_Extensions_Upgrade() (Regina Obe)
- #3913, Upgrade when creating extension from unpackaged (Sandro Santilli)
- #2256, _postgis_index_extent() for extent from index (Paul Ramsey)
- #3176, Add ST_OrientedEnvelope (Dan Baston)
- #4029, Add ST_QuantizeCoordinates (Dan Baston)
- #4063, Optional false origin point for ST_Scale (Paul Ramsey)
- #4082, Add ST_BandFileSize and ST_BandFileTimestamp,
extend ST_BandMetadata (Even Rouault)
- #2597, Add ST_Grayscale (Bborie Park)
- #4007, Add ST_SetBandPath (Bborie Park)
- #4008, Add ST_SetBandIndex (Bborie Park)
* Breaking Changes *
- #4054, ST_SimplifyVW changed from > tolerance to >= tolerance
- #3885, version number removed from address_standardize lib file
(Regina Obe)
- #3893, raster support functions can only be loaded in the same schema
with core PostGIS functions. (Sandro Santilli)
- #4035, remove dummy pgis_abs type from aggregate/collect routines.
(Paul Ramsey)
- #4069, drop support for GEOS < 3.5 and PostgreSQL < 9.4 (Regina Obe)
- #4082, ST_BandMetaData extended to include filesize, timestamp (Even Rouault)
* Enhancements and Fixes*
- Upgrade scripts from multiple old versions are now all symlinks
to a single upgrade script (Sandro Santilli)
- #3944, Update to EPSG register v9.2 (Even Rouault)
- #3927, Parallel implementation of ST_AsMVT
- #3925, Simplify geometry using map grid cell size before generating MVT
- #3899, BTree sort order is now defined on collections of EMPTY and
same-prefix geometries (Darafei Praliaskouski)
- #3864, Performance improvement for sorting POINT geometries
(Darafei Praliaskouski)
- #3900, GCC warnings fixed, make -j is now working (Darafei Praliaskouski)
- TopoGeo_addLinestring robustness improvements (Sandro Santilli)
#1855, #1946, #3718, #3838
- #3234, Do not accept EMPTY points as topology nodes (Sandro Santilli)
- #1014, Hashable geometry, allowing direct use in CTE signatures (Paul Ramsey)
- #3097, Really allow MULTILINESTRING blades in ST_Split() (Paul Ramsey)
- #3942, geojson: Do not include private header for json-c >= 0.13 (Björn Esser)
- #3954, ST_GeometricMedian now supports point weights (Darafei Praliaskouski)
- #3965, #3971, #3977, #4071 ST_ClusterKMeans rewritten: better initialization,
faster convergence, K=2 even faster (Darafei Praliaskouski)
- #3982, ST_AsEncodedPolyline supports LINESTRING EMPTY and MULTIPOINT EMPTY
(Darafei Praliaskouski)
- #3986, ST_AsText now has second argument to limit decimal digits
(Marc Ducobu, Darafei Praliaskouski)
- #4020, Casting from box3d to geometry now returns correctly connected
PolyhedralSurface (Matthias Bay)
- #2508, ST_OffsetCurve now works with collections (Darafei Praliaskouski)
- #4006, ST_GeomFromGeoJSON support for json and jsonb as input
(Paul Ramsey, Regina Obe)
- #4038, ST_Subdivide now selects pivot for geometry split that reuses input
vertices. (Darafei Praliaskouski)
- #4025, #4032 Fixed precision issue in ST_ClosestPointOfApproach,
ST_DistanceCPA, and ST_CPAWithin (Paul Ramsey, Darafei Praliaskouski)
- #4076, Reduce use of GEOS in topology implementation (Björn Harrtell)
- #4080, Add external raster band index to ST_BandMetaData
- Add Raster Tips section to Documentation for information about
Raster behavior (e.g. Out-DB performance, maximum open files)
- #4084: Fixed wrong code-comment regarding front/back of BOX3D (Matthias Bay)
- #4060, #4094, PostgreSQL JIT support (Raúl Marín, Laurenz Albe)
- #3960, ST_Centroid now uses lwgeom_centroid (Darafei Praliaskouski)
- #4027, Remove duplicated code in lwgeom_geos (Darafei Praliaskouski,
Daniel Baston)
- #4115, Fix a bug that created MVTs with incorrect property values under
parallel plans (Raúl Marín).
- #4120, ST_AsMVTGeom: Clip using tile coordinates (Raúl Marín).
- #4132, ST_Intersection on Raster now works without throwing TopologyException
(Vinícius A.B. Schmidt, Darafei Praliaskouski)
- #4177, #4180 Support for PostgreSQL 12 dev branch (Laurenz Albe, Raúl Marín)
- #4156, ST_ChaikinSmoothing: also smooth start/end point of
polygon by default (Darafei Praliaskouski)
PostGIS 2.4.5
2018/09/12
* Bug Fixes and Enhancements
- #4031, Survive to big MaxError tolerances passed to ST_CurveToLine
(Sandro Santilli)
- #4058, Fix infinite loop in linearization of a big radius small arc
(Sandro Santilli)
- #4071, ST_ClusterKMeans crash on NULL/EMPTY fixed (Darafei Praliaskouski)
- #4079, ensure St_AsMVTGeom outputs CW oriented polygons (Paul Ramsey)
- #4070, use standard interruption error code on GEOS interruptions
(Paul Ramsey)
- #3980, delay freeing input until processing complete (lucasvr)
- #4090, PG 11 support (Paul Ramsey, Raúl Marín)
- #4077, Serialization failure for particular empty geometry cases (Paul Ramsey)
- #3997, fix bug in lwgeom_median and avoid division by zero (Raúl Marín)
- #4093, Inconsistent results from qsort callback (yugr)
- #4081, Geography DWithin() issues for certain cases (Paul Ramsey)
- #4105, Parallel build of tarball (Bas Couwenberg)
- #4163, MVT: Fix resource leak when the first geometry is NULL (Raúl Marín)
PostGIS 2.4.4
2018/04/08
* Bug fixes *
- #3055, [raster] ST_Clip() on a raster without band crashes the server
(Regina Obe)
- #3942, geojson: Do not include private header for json-c >= 0.13
(Björn Esser)
- #3952, ST_Transform fails in parallel mode (Paul Ramsey)
- #3978, Fix KNN when upgrading from 2.1 or older (Sandro Santilli)
- #4003, lwpoly_construct_circle: Avoid division by zero (Raúl Marín Rodríguez)
- #4004, Avoid memory exhaustion when building a btree index (Edmund Horner)
- #4016, proj 5.0.0 support (Raúl Marín Rodríguez)
- #4017, lwgeom lexer memory corruption (Peter E)
- #4020, Casting from box3d to geometry now returns correctly connected
PolyhedralSurface (Matthias Bay)
- #4025, #4032 Incorrect answers for temporally "almost overlapping" ranges
(Paul Ramsey, Darafei Praliaskouski)
- #4052, schema qualify several functions in geography (Regina Obe)
- #4055, ST_ClusterIntersecting drops SRID (Daniel Baston)
- #4067, Guard lookup of namespace in internal call case
* Enhancements *
- #3946, Compile support for PgSQL 11 (Paul Ramsey)
- #3992, Use PKG_PROG_PKG_CONFIG macro from pkg.m4 to detect pkg-config
(Bas Couwenberg)
- #4044, Upgrade support for PgSQL 11 (Regina Obe)
PostGIS 2.4.3
2018/01/17
* Bug fixes *
- #3713, Support encodings that happen to output a '\' character
- #3827, Set configure default to not do interrupt testing,
was causing false negatives for many people (Regina Obe)
revised to be standards compliant in #3988 (Greg Troxel)
- #3930, Minimum bounding circle issues on 32-bit platforms
- #3965, ST_ClusterKMeans used to lose some clusters on initialization
(Darafei Praliaskouski)
- #3956, Brin opclass object does not upgrade properly (Sandro Santilli)
- #3982, ST_AsEncodedPolyline supports LINESTRING EMPTY and MULTIPOINT EMPTY
(Darafei Praliaskouski)
- #3975, ST_Transform runs query on spatial_ref_sys without schema
qualification. Was causing restore issues. (Paul Ramsey)
* Enhancements *
- #3944, Update to EPSG register v9.2 (Even Rouault)
PostGIS 2.4.2
2017/11/15
* Bug fixes *
- #3917, Fix zcta5 load
- #3667, Fix for bug in geography ST_Segmentize
- #3926, Add missing 2.2.6 and 2.3.4 upgrade paths (Muhammad Usama)
PostGIS 2.4.1
2017/10/18
* Bug fixes *
- #3864, Fix memory leaks in BTREE operators
- #3869, Fix build with "gold" linker
- #3845, Gracefully handle short-measure issue
- #3871, Performance tweak for geometry cmp function
- #3879, Division by zero in some arc cases
- #3878, Single defn of signum in header
- #3880, Undefined behaviour in TYPMOD_GET_SRID
- #3875, Fix undefined behaviour in shift operation
- #3864, Performance improvements for b-tree geometry sorts
- #3874, lw_dist2d_pt_arc division by zero
- #3882, undefined behaviour in zigzag with negative inputs
- #3891, undefined behaviour in pointarray_to_encoded_polyline
- #3895, throw error on malformed WKB input
- #3886, fix rare missing boxes in geometry subdivision
- #3907, Allocate enough space for all possible GBOX string outputs (Raúl Marín Rodríguez)
* Enhancements *
- #3815, Tiger 2017 data support and option to load zcta5
PostGIS 2.4.0
2017/09/30
* New Features *
- #3822, Have postgis_full_version() also show and check version of
PostgreSQL the scripts were built against (Sandro Santilli)
- #2411, curves support in ST_Reverse (Sandro Santilli)
- #2951, ST_Centroid for geography (Danny Götte)
- #3788, Allow postgis_restore.pl to work on directory-style (-Fd) dumps
(Roger Crew)
- #3772, Direction agnostic ST_CurveToLine output (Sandro Santilli / KKGeo)
- #2464, ST_CurveToLine with MaxError tolerance (Sandro Santilli / KKGeo)
- #3599, Geobuf output support via ST_AsGeobuf (Björn Harrtell)
- #3661, Mapbox vector tile output support via ST_AsMVT (Björn Harrtell / CartoDB)
- #3689, Add orientation checking and forcing functions:
ST_IsPolygonCW, ST_IsPolygonCCW,
ST_ForcePolygonCW, ST_ForcePolygonCCW
(Dan Baston)
- #3753, Gist penalty speed improvements for 2D and ND points
(Darafei Praliaskouski, Andrey Borodin)
- #3677, ST_FrechetDistance (Shinichi Sugiyama)
- Most aggregates (raster and geometry),
and all stable / immutable (raster and geometry) marked as parallel safe
- #2249, ST_MakeEmptyCoverage for raster (David Zwarg, ainomieli)
- #3709, Allow signed distance for ST_Project (Darafei Praliaskouski)
- #524, Covers support for polygon on polygon, line on line,
point on line for geography (Danny Götte)
* Enhancements and Fixes*
- Many corrections to docs and several translations almost complete.
Andreas Schild who provided many corrections to core docs.
PostGIS Japanese translation team first to reach completion of translation.
- Support for PostgreSQL 10
- Preliminary support for PostgreSQL 11
- #3645, Avoid loading logically deleted records from shapefiles
- #3747, Add zip4 and address_alphanumeric as attributes
to norm_addy tiger_geocoder type.
- #3748, address_standardizer lookup tables update
so pagc_normalize_address better standardizes abbreviations
- #3647, better handling of noding in ST_Node using GEOSNode
(Wouter Geraedts)
- #3684, Update to EPSG register v9
(Even Rouault)
- #3830, Fix initialization of incompatible type (>=9.6) address_standardizer
- #3662, Make shp2pgsql work in debug mode by sending debug to stderr
- #3405, Fixed memory leak in lwgeom_to_points
- #3832, Support wide integer fields as int8 in shp2pgsql
- #3841, Deterministic sorting support for empty geometries in btree geography
- #3844, Make = operator a strict equality test, and < > to rough "spatial sorting"
- #3855, ST_AsTWKB memory and speed improvements
PostGIS 2.3.3
2017/07/01
* Bug Fixes
- #3777, GROUP BY anomaly with empty geometries
- #3711, Azimuth error upon adding 2.5D edges to topology
- #3726, PDF manual from dblatex renders fancy quotes for programlisting
(Mike Toews)
- #3738, raster: Using -s without -Y in raster2pgsql transforms
raster data instead of setting srid
- #3744, ST_Subdivide loses subparts of inverted geometries
(Darafei Praliaskouski)
- #3750, @ and ~ operator not always schema qualified in geometry
and raster functions. Causes restore issues.
(Shane StClair of Axiom Data Science)
- #3682, Strange fieldlength for boolean in result of pgsql2shp
- #3701, Escape double quotes issue in pgsql2shp
- #3704, ST_AsX3D crashes on empty geometry
- #3730, Change ST_Clip from Error to Notice when ST_Clip can't compute a band
PostGIS 2.3.2
2017/01/31
* Bug Fixes
- #3418, KNN recheck in 9.5+ fails with index returned tuples in wrong order
- #3675, Relationship functions not using an index in some cases
- #3680, PostGIS upgrade scripts missing GRANT for views
- #3683, Unable to update postgis after postgres pg_upgrade going from < 9.5 to pg > 9.4
- #3688, ST_AsLatLonText: round minutes
PostGIS 2.3.1
2016/11/28
* Bug Fixes
- #1973, st_concavehull() returns sometimes empty geometry collection
(gde)