forked from postgis/postgis
-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
3291 lines (2890 loc) · 144 KB
/
NEWS
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.5.0dev
xxxx/xx/xx
To take advantage of all SFCGAL featurs, SFCGAL 1.5.0+ is needed.
* 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 (Regina Obe)
- #5659, ST_DFullyWithin behaviour has changed to
be ST_Contains(ST_Buffer(A, R), B) (Paul Ramsey)
* Deprecated signatures *
- GH-761, ST_StraightSkeleton => CG_StraightSkeleton (Loïc Bartoletti)
* New Features *
- #5667, 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, 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)
* Enhancements *
- #3587, faster load of big lines in topologies (Sandro Santilli)
- #5670, 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 featurs, 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)
- #5162, 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)
* 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)
PostGIS 3.3.0rc2
2022/08/21
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+, numerouse additional enhancements with GEOS 3.11+.
Requires SFCGAL 1.4.1+ for ST_AlphaShape and ST_OptimalAlphaShape.
- #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)
PostGIS 3.3.0rc1
2022/08/08
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+, numerouse additional enhancements with GEOS 3.11+.
Requires SFCGAL 1.4.1+ for ST_AlphaShape and ST_OptimalAlphaShape.
Changes since PostGIS 3.3.0beta2:
* Bug fixes *
- #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)
PostGIS 3.3.0beta2
2022/07/13
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+, numerouse additional enhancements with GEOS 3.11+.
Requires SFCGAL 1.4.1+ for ST_AlphaShape and ST_OptimalAlphaShape.
Changes since PostGIS 3.3.0beta1
* New features *
- #5183, topology.RemoveUnusedPrimitives (Sandro Santilli)
* Enhancements *
- GH698, support parallel aggregate for ST_Union (Sergei Shoulbakov)
* Bug fixes *
- #5179, pgsql2shp syntax error on big-endian (Bas Couwenberg)
PostGIS 3.3.0beta1
2022/07/03
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+, numerouse additional enhancements with GEOS 3.11+.
NOTE: GEOS 3.11.0 was recently released,
details at https://libgeos.org/posts/2022-07-01-geos-3-11-0-released/.
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
Changes since PostGIS 3.3.0alpha1
* Enhancements *
- #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)
- #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+ polygon-respecting native implementation (Paul Ramsey, Martin Davis)
- #5039, postgis_tiger_geocoder TIGER 2021 (Regina Obe)
* New features *
- #5169, ST_SimplifyPolygonHull (requires GEOS 3.11)
(Paul Ramsey, Martin Davis)
- #5162, ST_TriangulatePolygon with GEOS 3.11+
(Paul Ramsey, Martin Davis)
* Bug fixes *
- #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.3.0alpha1
2022/05/21
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 enhancements with GEOS 3.11+.
NOTE: GEOS 3.11+ is not yet released, you can download from https://github.com/libgeos/geos.
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
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 reenable 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.2.0beta3
2021/12/04
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 reenable it by doing
ALTER OPERATOR FAMILY gist_geometry_ops_2d USING gist
ADD FUNCTION 11 (geometry)
geometry_gist_sortsupport_2d (internal);
To revert the change:
ALTER OPERATOR FAMILY gist_geometry_ops_2d using gist
DROP FUNCTION 11 (geometry);
and then reindex your gist indexes.
Changes since PostGIS 3.2.0beta2 release:
* Breaking changes / fixes *
- #5028, ST_AsFlatGeobuf crashes on mixed geometry input
(Björn Harrtell)
- #5029, ST_AsFlatGeobuf indexed output corruption
(Björn Harrtell)
- #5014, Crash on ST_TableFromFlatGeobuf (Björn Harrtell)
- Rename ST_TableFromFlatGeobuf to ST_FromFlatGeobufToTable
(Björn Harrtell)
- PG14 fast index building disabled by default. (Paul Ramsey)
PostGIS 3.2.0beta2
2021/11/26
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+.
Changes since PostGIS 3.2.0beta1 release:
* Breaking changes / fixes *
- #5016, loader (shp2pgsql): Respect LDFLAGS (Greg Troxel)
- #5005, ST_AsFlatGeoBuf crashes on tables when geometry
column is not the first column (Björn Harrtell)
- #5017, topology.ValidateTopology error relation "shell_check"
already exists (Sandro Santilli)
* Enhancements *
- #5018, pgsql2shp basic support for WITH CTE clause (Regina Obe)
- #5019, address_standardizer: Add support for pcre2 (Paul Ramsey)
- GH647, ST_AsMVTGeom now uses faster clipping (Aliaksandr Kalenik)
- GH648, ST_PixelAsCentroids, ST_PixelAsCentroid
reimplemented in C (Sergei Shoulbakov)
PostGIS 3.2.0beta1
2021/10/23
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+.
Changes since PostGIS 3.2.0alpa1 release:
* Bug Fixes and Breaking Changes *
- #5012, Clean regress against released GEOS 3.10.0
(Regina Obe, Paul Ramsey)
- #5000, Turn off Window support in ST_AsMVT aggregate
as no real use-case for it and it crashes with random input
(Paul Ramsey)
- #4994, shp2pgsql is sometimes missing the INSERT statements
(Sandro Santilli)
- #4990, getfacecontainingpoint fails on i386 (Sandro Santilli)
- #5008, Have ST_DWithin with EMPTY operand always return false
(Sandro Santilli)
- #5002, liblwgeom should build with warning flags by default
(Sandro Santilli)
* Enhancements *
- #4997, FlatGeobuf format input/output (Björn Harrtell)
PostGIS 3.2.0alpha1
2021/09/10
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+, Proj 6.1+, and PostgreSQL 14+.
* Breaking changes *
- #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
* Enhancements *
- #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)
* 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 soring 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 interruptable (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 miniscule 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.3
2019/08/11
* Bug fixes *
- #4348, ST_AsMVTGeom (GEOS): Enforce validation at all times (Raúl Marín)
- #4361, Fix postgis_type_name with (GEOMETRYM,3) (Matt Bretl)
- #4326, Fix circular arc distance calculation (Paul Ramsey)
- #4380, Simple TIN support to allow viz in QGIS (Paul Ramsey)
- #4388, AddRasterConstraints: Ignore NULLs when generating constraints (Raúl Marín)
- #4327, Avoid pfree'ing the result of getenv (Raúl Marín)
- #4406, Throw on invalid characters when decoding geohash (Raúl Marín)
- #4440, Internal type lookups fail over FDW (Paul Ramsey)
- #4445, Fix bug in lwgeom_le (Raúl Marín)
- #4466, Fix undefined behaviour in _postgis_gserialized_stats (Raúl Marín)
- #4209, Handle NULL geometry values in pgsql2shp (Paul Ramsey)
- #4419, Use protobuf version to enable/disable mvt/geobuf (Paul Ramsey)
- #4437, Handle POINT EMPTY in shape loader/dumper (Paul Ramsey)
- #4461, ST_AsTWKB doesn't always remove duplicate points (Nicklas Avén)
- #4459, Fix ST_Subdivide crash on intermediate EMPTY (Darafei Praliaskouski)
- #4470, ST_GeomFromGeoJSON crash on empty rings (Darafei Praliaskouski)
- #4420, update path does not exists for address_standardizer extension (Regina Obe)
PostGIS 2.5.2
2019/03/11
* Bug fixes *
- #4231, Support for PostgreSQL 12dev (remove use of pg_constraint.consrc)
(Regina Obe, Laurenz Albe)
- #4247, Avoid undefined behaviour in next_float functions (Raúl Marín)
- #4249, Fix undefined behaviour in raster intersection (Raúl Marín)
- #4246, Fix undefined behaviour in ST_3DDistance (Raúl Marín)
- #4244, Avoid unaligned memory access in BOX2D_out (Raúl Marín)
- #4139, Make mixed-dimension ND index build tree correctly.
WARNING: REINDEX your ND index on tables that have records with different M/Z
dimensions for &&& operator to work predictably.
(Darafei Praliaskouski, Arthur Lesuisse, Andrew Gierth, Raúl Marín)
- #4262, Document MULTISURFACE compatibility of ST_LineToCurve (Steven Ottens)
- #4267, Enable Proj 6 deprecated APIs (Darafei Praliaskouski, Raúl Marín)
- #4276, ST_AsGeoJSON documentation refresh (Darafei Praliaskouski)
- #4273, Tighter parsing of WKT (Paul Ramsey)
- #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)
- #4261, Use AccessShareLock in spatial_index_read_extent (Paul Ramsey)
- #4289, ST_AsMVTGeom: Transform coordinates space before clipping (Raúl Marín)
- #4275, Avoid passing a NULL pointer to GEOSisEmpty (Raúl Marín)
- #4296, Use `server_version_num` instead of parsing `version()` (Raúl Marín)
- #4290, More robust geography distance (Paul Ramsey)
- #4283, Avoid final point duplicates for circle stroking (Paul Ramsey)
- #4314, ST_ClipByBox2D: Do not throw when the geometry is invalid (Raúl Marín)
- #4313, #4307, PostgreSQL 12 compatibility (Laurenz Albe, Raúl Marín)
- #4290, Schema qualify geometry casts in raster functions (Regina Obe)
- #4086, Constraint violation loading tiger_data (zcta5 geometry type) (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)