PostGIS 2.3.0 2015/XX/XX * Important / Breaking Changes * * Deprecated signatures * * New Features * - #3391, Add table inheritance support in ST_EstimatedExtent (Alessandro Pasotti) - TopoGeom_addElement, TopoGeom_remElement (Sandro Santilli) - populate_topology_layer (Sandro Santilli) - #2259 ST_Voronoi (Dan Baston) - #3339 ST_GeneratePoints (Paul Ramsey) - #3428 ST_Points (Dan Baston) PostGIS 2.2.1 2016/01/06 * Bug Fixes * - #2232, avoid accumulated error in SVG rounding - #3321, Fix performance regression in topology loading - #3329, Fix robustness regression in TopoGeo_addPoint - #3349, Fix installation path of postgis_topology scripts - #3351, set endnodes isolation on ST_RemoveIsoEdge (and lwt_RemIsoEdge) - #3355, geography ST_Segmentize has geometry bbox - #3359, Fix toTopoGeom loss of low-id primitives from TopoGeometry definition - #3360, _raster_constraint_info_scale invalid input syntax - #3375, crash in repeated point removal for collection(point) - #3378, Fix handling of hierarchical TopoGeometries in presence of multiple topologies - #3380, #3402, Decimate lines on topology load - #3388, #3410, Fix missing end-points in ST_RemoveRepeatedPoints - #3389, Buffer overflow in lwgeom_to_geojson - #3390, Compilation under Alpine Linux 3.2 gives an error when compiling the postgis and postgis_topology extensions - #3393, ST_Area NaN for some polygons - #3401, Improve ST_Split robustness on 32bit systems - #3404, ST_ClusterWithin crashes backend - #3407, Fix crash on splitting a face or an edge defining multiple TopoGeometry objects - #3411, Clustering functions not using spatial index - #3412, Improve robustness of snapping step in TopoGeo_addLinestring - #3415, Fix OSX 10.9 build under pkgsrc - Fix memory leak in lwt_ChangeEdgeGeom [liblwgeom] PostGIS 2.2.0 2015/10/07 * Important / Breaking Changes * - PROJ4 4.6 and higher only - #2703, KNN <-> operator now returns the correct distance ordering for all geometry types, not just for points. Code that expects the looser "centroid distance" ordering should be updated. - #3022, ValidateTopology swapped meaning of id1 and id2 for the 'edge crosses node' error (now edge_id,node_id) - #2565, ST_SummaryStats(tablename, rastercolumn, ...) uses ST_SummaryStatsAgg() - #2567, ST_Count(tablename, rastercolumn, ...) uses ST_CountAgg() - #2842, raster - Hide unselectable tables from raster_overview and raster_columns - By default, PostGIS raster disables all GDAL drivers affecting out-db rasters, ST_FromGDALRaster() and ST_AsGDALRaster() variants - #3181, POINT EMPTY is now stored as POINT(NaN NaN) in WKB, instead of as MULTIPOINT EMPTY - Java binding moved to separate repository: https://github.com/postgis/postgis-java * Deprecated signatures * - #2748, ST_Shift_Longitude renamed to ST_ShiftLongitude, ST_Find_Extent renamed to ST_FindExtent, ST_Combine_BBox renamed to ST_CombineBbox, ST_Length_Spheroid renamed to ST_LengthSpheroid, ST_Distance_Spheroid renamed to ST_DistanceSpheroid, ST_Distance_Sphere renamed to ST_DistanceSphere, ST_3DLength_Spheroid deprecated (use ST_LengthSpheroid) - #2769, ST_Mem_Size renamed to ST_MemSize - #2565, ST_SummaryStats(tablename, rastercolumn, ...) - #2567, ST_Count(tablename, rastercolumn, ...) * New Features * - Topology API in liblwgeom (Sandro Santilli / Regione Toscana - SITA) - New lwgeom_version method in liblwgeom - New lwgeom_unaryunion method in liblwgeom - New lwgeom_linemerge method in liblwgeom - New lwgeom_is_simple method in liblwgeom - #3117, Add SFCGAL 1.1 support: add ST_3DDifference, ST_3DUnion, ST_Volume, ST_MakeSolid, ST_IsSolid (Vincent Mora / Oslandia) - #3169, ST_ApproximateMedialAxis (Sandro Santilli) - ST_CPAWithin (Sandro Santilli / Boundless) - Add |=| operator with CPA semantic and KNN support with PgSQL 9.5+ (Sandro Santilli / Boundless) - #3131, KNN support for the geography type (Paul Ramsey / CartoDB) - #3023, ST_ClusterIntersecting / ST_ClusterWithin (Dan Baston) - #2703, Exact KNN results for all geometry types, aka "KNN re-check" (Paul Ramsey / CartoDB) - #1137, Allow a tolerance value in ST_RemoveRepeatedPoints (Paul Ramsey / CartoDB) - #3062, Allow passing M factor to ST_Scale (Sandro Santilli / Boundless) - #3139, ST_BoundingDiagonal (Sandro Santilli / Boundless) - #3129, ST_IsValidTrajectory (Sandro Santilli / Boundless) - #3128, ST_ClosestPointOfApproach (Sandro Santilli / Boundless) - #3152, ST_DistanceCPA (Sandro Santilli / Boundless) - Canonical output for index key types - ST_SwapOrdinates (Sandro Santilli / Boundless) - #2918, Use GeographicLib functions for geodetics (Mike Toews) - #3074, ST_Subdivide to break up large geometry (Paul Ramsey / CartoDB) - #3040, KNN GiST index based centroid (<<->>) n-D distance operators (Sandro Santilli / Boundless) - Interruptibility API for liblwgeom (Sandro Santilli / CartoDB) - #2939, ST_ClipByBox2D (Sandro Santilli / CartoDB) - #2247, ST_Retile and ST_CreateOverview: in-db raster overviews creation (Sandro Santilli / Vizzuality) - #899, -m shp2pgsql attribute names mapping -m switch (Regina Obe / Sandro Santilli) - #1678, Added GUC postgis.gdal_datapath to specify GDAL config variable GDAL_DATA - #2843, Support reprojection on raster import (Sandro Santilli / Vizzuality) - #2349, Support for encoded_polyline input/output (Kashif Rasul) - #2159, report libjson version from postgis_full_version() - #2770, ST_MemSize(raster) - Add postgis_noop(raster) - Added missing variants of ST_TPI(), ST_TRI() and ST_Roughness() - Added GUC postgis.gdal_enabled_drivers to specify GDAL config variable GDAL_SKIP - Added GUC postgis.enable_outdb_rasters to enable access to rasters with out-db bands - #2387, address_standardizer extension as part of PostGIS Stephen Woodbridge (imaptools.com), Walter Sinclair, Regina Obe - #2816, address_standardizer_data_us extension provides reference lex,gaz,rules for address_standardizer Stephen Woodbridge (imaptools.com), Walter Sinclair, Regina Obe - #2341, New mask parameter for ST_MapAlgebra - #2397, read encoding info automatically in shapefile loader - #2430, ST_ForceCurve - #2565, ST_SummaryStatsAgg() - #2567, ST_CountAgg() - #2632, ST_AsGML() support for curved features - #2652, Add --upgrade-path switch to run_test.pl - #2754, sfcgal wrapped as an extension - #2227, Simplification with Visvalingam-Whyatt algorithm ST_SimplifyVW, ST_SetEffectiveArea (Nicklas Avén) - Functions to encode and decode TWKB ST_AsTWKB, ST_GeomFromTWKB (Paul Ramsey / Nicklas Avén / CartoDB) * Enhancements * - #3223, Add memcmp short-circuit to ST_Equals (Daniel Baston) - #3227, Tiger geocoder upgraded to support Tiger 2015 census - #2278, Make liblwgeom potentially ABI-compatible between micro releases - #897, ST_AsX3D support for GeoCoordinates and systems "GD" "WE" ability to flip x/y axis (use option = 2, 3) - ST_Split: allow splitting lines by multilines, multipoints and (multi)polygon boundaries - #3070, Simplify geometry type constraint - #2839, Implement selectivity estimator for functional indexes, speeding up spatial queries on raster tables. (Sandro Santilli / Vizzuality) - #2361, Added spatial_index column to raster_columns view - #2390, Testsuite for pgsql2shp - #2527, Added -k flag to raster2pgsql to skip checking that band is NODATA - #2616, Reduce text casts during topology building and export - #2717, support startpoint, endpoint, pointn, numpoints for compoundcurve - #2747, Add support for GDAL 2.0 - #2754, SFCGAL can now be installed with CREATE EXTENSION Vincent Mora (Oslandia) - #2828, Convert ST_Envelope(raster) from SQL to C - #2829, Shortcut ST_Clip(raster) if geometry fully contains the raster and no NODATA specified - #2906, Update tiger geocoder to handle tiger 2014 data - #3048, Speed up geometry simplification (J.Santana @ CartoDB) - #3092, Slow performance of geometry_columns with many tables * Bug Fixes * - #2893, Allow interruptibility of ST_Segmentize(geometry) (Sandro Santilli / CartoDB) - #2540, Change GUC name for GDAL_DATA to postgis.gdal_datapath - #2777, Raster max extent constraint based upon envelope to behave like geometry extent - #2822, Use @ operator instead of ST_CoveredBy() for raster max extent constraint - #3018, GROUP BY geography sometimes returns duplicate rows - #3020, ST_AddBand out-db bug where height using width value - #3048, shp2pgsql - illegal number format when specific system locale set - #3061, Allow duplicate points in JSON, GML, GML ST_GeomFrom* functions - #3086, ST_DumpValues() crashes backend on cleanup with invalid band indexes * Code refactoring * - Split raster/rt_core/rt_api.c and raster/rt_pg/rt_pg.c files into smaller files for ease of long-term maintenance and development - #1220, lwerror and lwnotice function became internal to liblwgeom PostGIS 2.1.8 2015/07/07 * Bug Fixes * - #3159, do not force a bbox cache on ST_Affine - #3018, GROUP BY geography sometimes returns duplicate rows - #3048, shp2pgsql - illegal number format when specific system locale set - #3094, Malformed GeoJSON inputs crash backend - #3104, st_asgml introduces random characters in ID field - #3155, Remove liblwgeom.h on make uninstall - #3177, gserialized_is_empty cannot handle nested empty cases - Fix crash in ST_LineLocatePoint PostGIS 2.1.7 2015/03/30 * Bug Fixes * - #3086, ST_DumpValues() crashes backend on cleanup with invalid band indexes - #3088, Do not (re)define strcasestr in a liblwgeom.h - #3094, Malformed GeoJSON inputs crash backend PostGIS 2.1.6 2015/03/20 * Enhancements * - #3000, Ensure edge splitting and healing algorithms use indexes - #3048, Speed up geometry simplification (J.Santana @ CartoDB) - #3050, Speep up geometry type reading (J.Santana @ CartoDB) * Bug Fixes * - #2941, allow geography columns with SRID other than 4326 - #3069, small objects getting inappropriately fluffed up w/ boxes - #3068, Have postgis_typmod_dims return NULL for unconstrained dims - #3061, Allow duplicate points in JSON, GML, GML ST_GeomFrom* functions - #3058, Fix ND-GiST picksplit method to split on the best plane - #3052, Make operators <-> and <#> available for PostgreSQL < 9.1 - #3045, Fix dimensionality confusion in &&& operator - #3016, Allow unregistering layers of corrupted topologies - #3015, Avoid exceptions from TopologySummary - #3020, ST_AddBand out-db bug where height using width value - #3031, Allow restore of Geometry(Point) tables dumped with empties in them PostGIS 2.1.5 2014/12/18 * Enhancements * - #2933, Speedup construction of large multi-geometry objects * Bug Fixes * - #2947, Fix memory leak in lwgeom_make_valid for single-component collection input - #2949, Fix memory leak in lwgeom_mindistance2d for curve input - #2931, BOX representation is case sensitive - #2942, PostgreSQL 9.5 support - #2953, 2D stats not generated when Z/M values are extreme - #3009, Geography cast may effect underlying tuple PostGIS 2.1.4 2014/09/10 * Enhancements * - #2745, Speedup ST_Simplify calls against points - #2747, Support for GDAL 2.0 - #2749, Make rtpostgis_upgrade_20_21.sql ACID - #2811, Do not specify index names when loading shapefiles/rasters - #2829, Shortcut ST_Clip(raster) if geometry fully contains the raster and no NODATA specified - #2895, Raise cost of ST_ConvexHull(raster) to 300 for better query plans * Bug Fixes * - #2605, armel: _ST_Covers() returns true for point in hole - #2911, Fix output scale on ST_Rescale/ST_Resample/ST_Resize of rasters with scale 1/-1 and offset 0/0. - Fix crash in ST_Union(raster) - #2704, ST_GeomFromGML() does not work properly with array of gml:pos (Even Roualt) - #2708, updategeometrysrid doesn't update srid check when schema not specified. Patch from Marc Jansen - #2720, lwpoly_add_ring should update maxrings after realloc - #2759, Fix postgis_restore.pl handling of multiline object comments embedding sql comments - #2774, fix undefined behavior in ptarray_calculate_gbox_geodetic - Fix potential memory fault in ST_MakeValid - #2784, Fix handling of bogus argument to --with-sfcgal - #2772, Premature memory free in RASTER_getBandPath (ST_BandPath) - #2755, Fix regressions tests against all versions of SFCGAL - #2775, lwline_from_lwmpoint leaks memory - #2802, ST_MapAlgebra checks for valid callback function return value - #2803, ST_MapAlgebra handles no userarg and STRICT callback function - #2834, ST_Estimated_Extent and mixedCase table names (regression bug) - #2845, Bad geometry created from ST_AddPoint - #2870, Binary insert into geography column results geometry being inserted - #2872, make install builds documentation (Greg Troxell) - #2819, find isfinite or replacement on Centos5 / Solaris - #2899, geocode limit 1 not returning best answer (tiger geocoder) - #2903, Unable to compile on FreeBSD - #2927 reverse_geocode not filling in direction prefix (tiger geocoder) get rid of deprecated ST_Line_Locate_Point called PostGIS 2.1.3 2014/05/13 * Important / Breaking Changes * - Add control of GDAL drivers with the environment variable POSTGIS_GDAL_ENABLED_DRIVERS. By default, all GDAL drivers are disabled - Add ability to disable out-db raster bands with the environment variable POSTGIS_ENABLE_OUTDB_RASTERS. By default, out-db raster bands are disabled * Bug Fixes * - #2697, invalid GeoJSON Polygon input crashes server process - #2700, Fix dumping of higher-dimension datasets with null rows - #2706, ST_DumpPoints of EMPTY geometries crashes server PostGIS 2.1.2 2014/03/31 * Important Changes * * Bug Fixes * - #2666, Error out at configure time if no SQL preprocessor can be found - #2534, st_distance returning incorrect results for large geographies - #2539, Check for json-c/json.h presence/usability before json/json.h - #2543, invalid join selectivity error from simple query - #2546, GeoJSON with string coordinates parses incorrectly - #2547, Fix ST_Simplify(TopoGeometry) for hierarchical topogeoms - #2552, Fix NULL raster handling in ST_AsPNG, ST_AsTIFF and ST_AsJPEG - #2555, Fix parsing issue of range arguments of ST_Reclass - #2556, geography ST_Intersects results depending on insert order - #2580, Do not allow installing postgis twice in the same database - #2589, Remove use of unnecessary void pointers - #2607, Cannot open more than 1024 out-db files in one process - #2610, Ensure face splitting algorithm uses the edge index - #2615, EstimatedExtent (and hence, underlying stats) gathering wrong bbox - #2619, Empty rings array in GeoJSON polygon causes crash - #2634, regression in sphere distance code - #2638, Geography distance on M geometries sometimes wrong - #2648, #2653, Fix topology functions when "topology" is not in search_path - #2654, Drop deprecated calls from topology - #2655, Let users without topology privileges call postgis_full_version() - #2674, Fix missing operator = and hash_raster_ops opclass on raster - #2675, #2534, #2636, #2634, #2638, Geography distance issues with tree optimization * Enhancements * - #2494, avoid memcopy in GiST index (hayamiz) - #2560, soft upgrade: avoid drop/recreate of aggregates that hadn't changed PostGIS 2.1.1 2013/11/08 * Important Changes * - #2514, Change raster license from GPL v3+ to v2+, allowing distribution of PostGIS Extension as GPLv2. * Bug Fixes * - #2396, Make regression tests more endian-agnostic - #2434, Fix ST_Intersection(geog,geog) regression in rare cases - #2454, Fix behavior of ST_PixelAsXXX functions regarding exclude_nodata_value parameter - #2449, Fix potential infinite loop in index building - #2489, Fix upgrades from 2.0 leaving stale function signatures - #2493, Fix behavior of ST_DumpValues when passed an empty raster - #2502, Fix postgis_topology_scripts_installed() install schema - #2504, Fix segfault on bogus pgsql2shp call - #2512, Support for foreign tables and materialized views in raster_columns and raster_overviews - #2525, Fix handling of SRID in nested collections - #2528, Fix memory leak in ST_Split / lwline_split_by_line - #2532, Add missing raster/geometry commutator operators - #2533, Remove duplicated signatures * Enhancements * - #2463, support for exact length calculations on arc geometries - #2478, support for tiger 2013 - #2527, Added -k flag to raster2pgsql to skip checking that band is NODATA PostGIS 2.1.0 2013/08/17 * Important / Breaking Changes * - #1653, Removed srid parameter from ST_Resample(raster) and variants with reference raster no longer apply reference raster's SRID. - #1962 ST_Segmentize - As a result of the introduction of geography support, The construct: SELECT ST_Segmentize('LINESTRING(1 2, 3 4)',0.5); will result in ambiguous function error - #2026, ST_Union(raster) now unions all bands of all rasters - #2089, liblwgeom: lwgeom_set_handlers replaces lwgeom_init_allocators. - #2150, regular_blocking is no longer a constraint. column of same name in raster_columns now checks for existance of spatially_unique and coverage_tile constraints - ST_Intersects(raster, geometry) behaves in the same manner as ST_Intersects(geometry, raster). - point variant of ST_SetValue(raster) previously did not check SRID of input geometry and raster. - ST_Hillshade parameters azimuth and altitude are now in degrees instead of radians. - ST_Slope and ST_Aspect return pixel values in degrees instead of radians. * Deprecated signatures * - #2104, ST_World2RasterCoord, ST_World2RasterCoordX and ST_World2RasterCoordY renamed to ST_WorldToRasterCoord, ST_WorldToRasterCoordX and ST_WorldToRasterCoordY. ST_Raster2WorldCoord, ST_Raster2WorldCoordX and ST_Raster2WorldCoordY renamed to ST_RasterToWorldCoord, ST_RasterToWorldCoordX and ST_RasterToWorldCoordY - ST_Estimated_Extent renamed to ST_EstimatedExtent - ST_Line_Interpolate_Point renamed to ST_LineInterpolatePoint - ST_Line_Substring renamed to ST_LineSubstring - ST_Line_Locate_Point renamed to ST_LineLocatePoint - ST_Force_XXX renamed to ST_ForceXXX - ST_MapAlgebraFctNgb and 1 and 2 raster variants of ST_MapAlgebraFct. Use ST_MapAlgebra instead - 1 and 2 raster variants of ST_MapAlgebraExpr. Use expression variants of ST_MapAlgebra instead * New Features * Refer to http://postgis.net/docs/manual-2.1/PostGIS_Special_Functions_Index.html#NewFunctions_2_1 for complete list of new functions - #310, ST_DumpPoints converted to a C function (Nathan Wagner) - #739, UpdateRasterSRID() - #945, improved join selectivity, N-D selectivity calculations, user accessible selectivity and stats reader functions for testing (Paul Ramsey / OpenGeo) - toTopoGeom with TopoGeometry sink (Sandro Santilli / Vizzuality) - clearTopoGeom (Sandro Santilli / Vizzuality) - ST_Segmentize(geography) (Paul Ramsey / OpenGeo) - ST_DelaunayTriangles (Sandro Santilli / Vizzuality) - ST_NearestValue, ST_Neighborhood (Bborie Park / UC Davis) - ST_PixelAsPoint, ST_PixelAsPoints (Bborie Park / UC Davis) - ST_PixelAsCentroid, ST_PixelAsCentroids (Bborie Park / UC Davis) - ST_Raster2WorldCoord, ST_World2RasterCoord (Bborie Park / UC Davis) - Additional raster/raster spatial relationship functions (ST_Contains, ST_ContainsProperly, ST_Covers, ST_CoveredBy, ST_Disjoint, ST_Overlaps, ST_Touches, ST_Within, ST_DWithin, ST_DFullyWithin) (Bborie Park / UC Davis) - Added array variants of ST_SetValues() to set many pixel values of a band in one call (Bborie Park / UC Davis) - #1293, ST_Resize(raster) to resize rasters based upon width/height - #1627, package tiger_geocoder as a PostgreSQL extension - #1643, #2076, Upgrade tiger geocoder to support loading tiger 2011 and 2012 (Regina Obe / Paragon Corporation) Funded by Hunter Systems Group - GEOMETRYCOLLECTION support for ST_MakeValid (Sandro Santilli / Vizzuality) - #1709, ST_NotSameAlignmentReason(raster, raster) - #1818, ST_GeomFromGeoHash and friends (Jason Smith (darkpanda)) - #1856, reverse geocoder rating setting for prefer numbered highway name - ST_PixelOfValue (Bborie Park / UC Davis) - Casts to/from PostgreSQL geotypes (point/path/polygon). - Added geomval array variant of ST_SetValues() to set many pixel values of a band using a set of geometries and corresponding values in one call (Bborie Park / UC Davis) - ST_Tile(raster) to break up a raster into tiles (Bborie Park / UC Davis) - #1895, new r-tree node splitting algorithm (Alex Korotkov) - #2011, ST_DumpValues to output raster as array (Bborie Park / UC Davis) - #2018, ST_Distance support for CircularString, CurvePolygon, MultiCurve, MultiSurface, CompoundCurve - #2030, n-raster (and n-band) ST_MapAlgebra (Bborie Park / UC Davis) - #2193, Utilize PAGC parser as drop in replacement for tiger normalizer (Steve Woodbridge, Regina Obe) - #2210, ST_MinConvexHull(raster) - lwgeom_from_geojson in liblwgeom (Sandro Santilli / Vizzuality) - #1687, ST_Simplify for TopoGeometry (Sandro Santilli / Vizzuality) - #2228, TopoJSON output for TopoGeometry (Sandro Santilli / Vizzuality) - #2123, ST_FromGDALRaster - #613, ST_SetGeoReference with numerical parameters instead of text - #2276, ST_AddBand(raster) variant for out-db bands - #2280, ST_Summary(raster) - #2163, ST_TPI for raster (Nathaniel Clay) - #2164, ST_TRI for raster (Nathaniel Clay) - #2302, ST_Roughness for raster (Nathaniel Clay) - #2290, ST_ColorMap(raster) to generate RGBA bands - #2254, Add SFCGAL backend support. (Backend selection throught postgis.backend var) Functions available both throught GEOS or SFCGAL: ST_Intersects, ST_3DIntersects, ST_Intersection, ST_Area, ST_Distance, ST_3DDistance New functions available only with SFCGAL backend: ST_3DIntersection, ST_Tesselate, ST_3DArea, ST_Extrude, ST_ForceLHR ST_Orientation, ST_Minkowski, ST_StraightSkeleton postgis_sfcgal_version New function available in PostGIS: ST_ForceSFS (Olivier Courtin and Hugo Mercier / Oslandia) * Enhancements * - #823, tiger geocoder: Make loader_generate_script download portion less greedy - #826, raster2pgsql no longer defaults to padding tiles. Flag -P can be used to pad tiles - #1363, ST_AddBand(raster, ...) array version rewritten in C - #1364, ST_Union(raster, ...) aggregate function rewritten in C - #1655, Additional default values for parameters of ST_Slope - #1661, Add aggregate variant of ST_SameAlignment - #1719, Add support for Point and GeometryCollection ST_MakeValid inputs - #1780, support ST_GeoHash for geography - #1796, Big performance boost for distance calculations in geography - #1802, improved function interruptibility. - #1823, add parameter in ST_AsGML to use id column for GML 3 output (become mandatory since GML 3.2.1) - #1856, tiger geocoder: reverse geocoder rating setting for prefer numbered highway name - #1938, Refactor basic ST_AddBand to add multiple new bands in one call - #1978, wrong answer when calculating length of a closed circular arc (circle) - #1989, Preprocess input geometry to just intersection with raster to be clipped - #2021, Added multi-band support to ST_Union(raster, ...) aggregate function - #2006, better support of ST_Area(geography) over poles and dateline - #2065, ST_Clip(raster, ...) now a C function - #2069, Added parameters to ST_Tile(raster) to control padding of tiles - #2078, New variants of ST_Slope, ST_Aspect and ST_HillShade to provide solution to handling tiles in a coverage - #2097, Added RANGE uniontype option for ST_Union(raster) - #2105, Added ST_Transform(raster) variant for aligning output to reference raster - #2119, Rasters passed to ST_Resample(), ST_Rescale(), ST_Reskew(), and ST_SnapToGrid() no longer require an SRID - #2141, More verbose output when constraints fail to be added to a raster column - #2143, Changed blocksize constraint of raster to allow multiple values - #2148, Addition of coverage_tile constraint for raster - #2149, Addition of spatially_unique constraint for raster - TopologySummary output now includes unregistered layers and a count of missing TopoGeometry objects from their natural layer. - ST_HillShade(), ST_Aspect() and ST_Slope() have one new optional parameter to interpolate NODATA pixels before running the operation. - Point variant of ST_SetValue(raster) is now a wrapper around geomval variant of ST_SetValues(rast). - Proper support for raster band's isnodata flag in core API and loader. - Additional default values for parameters of ST_Aspect and ST_HillShade - #2178, ST_Summary now advertises presence of known srid with an [S] flag - #2202, Make libjson-c optional (--without-json configure switch) - #2213, Add support libjson-c 0.10+ - #2231, raster2pgsql supports user naming of filename column with -n - #2200, ST_Union(raster, uniontype) unions all bands of all rasters - #2264, postgis_restore.pl support for restoring into databases with postgis in a custom schema - #2244, emit warning when changing raster's georeference if raster has out-db bands - #2222, add parameter OutAsIn to flag whether ST_AsBinary should return out-db bands as in-db bands * Fixes * - #1839, handling of subdatasets in GeoTIFF in raster2pgsql. - #1840, fix logic of when to compute # of tiles in raster2pgsql. - #1870, align the docs and actual behavior of raster's ST_Intersects - #1872, fix ST_ApproxSummarystats to prevent division by zero - #1875, ST_SummaryStats returns NULL for all parameters except count when count is zero - #1932, fix raster2pgsql of syntax for index tablespaces - #1936, ST_GeomFromGML on CurvePolygon causes server crash - #1939, remove custom data types: summarystats, histogram, quantile, valuecount - #1951, remove crash on zero-length linestrings - #1957, ST_Distance to a one-point LineString returns NULL - #1976, Geography point-in-ring code overhauled for more reliability - #1981, cleanup of unused variables causing warnings with gcc 4.6+ - #1996, support POINT EMPTY in GeoJSON output - #2062, improve performance of distance calculations - #2057, Fixed linking issue for raster2psql to libpq - #2077, Fixed incorrect values returning from ST_Hillshade() - #2019, ST_FlipCoordinates does not update bbox - #2100, ST_AsRaster may not return raster with specified pixel type - #2126, Better handling of empty rasters from ST_ConvexHull() - #2165, ST_NumPoints regression failure with CircularString - #2168, ST_Distance is not always commutative - #2182, Fix issue with outdb rasters with no SRID and ST_Resize - #2188, Fix function parameter value overflow that caused problems when copying data from a GDAL dataset - #2198, Fix incorrect dimensions used when generating bands of out-db rasters in ST_Tile() - #2201, ST_GeoHash wrong on boundaries - #2203, Changed how rasters with unknown SRID and default geotransform are handled when passing to GDAL Warp API - #2215, Fixed raster exclusion constraint for conflicting name of implicit index - #2251, Fix bad dimensions when rescaling rasters with default geotransform matrix - #2133, Fix performance regression in expression variant of ST_MapAlgebra - #2257, GBOX variables not initialized when testing with empty geometries - #2271, Prevent parallel make of raster - #2282, Fix call to undefined function nd_stats_to_grid() in debug mode - #2307, ST_MakeValid outputs invalid geometries - #2309, Remove confusing INFO message when trying to get SRS info - #2336, FIPS 20 (KS) causes wildcard expansion to wget all files - #2348, Provide raster upgrade path for 2.0 to 2.1 - #2351, st_distance between geographies wrong - #2359, Fix handling of schema name when adding overview constraints - #2371, Support GEOS versions with more than 1 digit in micro - #2383, Remove unsafe use of \' from raster warning message - #2384, Incorrect variable datatypes for ST_Neighborhood * Known Issues * - #2111, Raster bands can only reference the first 256 bands of out-db rasters PostGIS 2.0.6 2014/05/14 * Important Changes * - Add control of GDAL drivers with the environment variable POSTGIS_GDAL_ENABLED_DRIVERS. By default, all GDAL drivers are disabled - Add ability to disable out-db raster bands with the environment variable POSTGIS_ENABLE_OUTDB_RASTERS. By default, out-db raster bands are disabled * Bug Fixes * - #2772, fix premature memory free in RASTER_getBandPath (ST_BandPath) PostGIS 2.0.5 2014/03/31 * Important Changes * - #2514, Change raster license from GPL v3+ to v2+, allowing distribution of PostGIS Extension as GPLv2. * Bug Fixes * - #2494, avoid memcpy in GIST index - #2502, Fix postgis_topology_scripts_installed() install schema - #2504, Fix segfault on bogus pgsql2shp call - #2528, Fix memory leak in ST_Split / lwline_split_by_line - #2532, Add missing raster/geometry commutator operators - #2533, Remove duplicated signatures - #2552, Fix NULL raster handling in ST_AsPNG, ST_AsTIFF and ST_AsJPEG - #2555, Fix parsing issue of range arguments of ST_Reclass - #2589, Remove use of unnecessary void pointers - #2607, Cannot open more than 1024 out-db files in process - #2610, Ensure face splitting algorithm uses the edge index - #2619, Empty ring array in GeoJSON polygon causes crash - #2638, Geography distance on M geometries sometimes wrong PostGIS 2.0.4 2013/09/06 * Bug Fixes * - #2110, Equality operator between EMPTY and point on origin - Allow adding points at precision distance with TopoGeo_addPoint - #1968, Fix missing edge from toTopoGeom return - #2165, ST_NumPoints regression failure with CircularString - #2168, ST_Distance is not always commutative - #2186, gui progress bar updates too frequent - #2201, ST_GeoHash wrong on boundaries - #2257, GBOX variables not initialized when testing with empty geometries - #2271, Prevent parallel make of raster - #2267, Server crash from analyze table - #2277, potential segfault removed - #2307, ST_MakeValid outputs invalid geometries - #2351, st_distance between geographies wrong - #2359, Incorrect handling of schema for overview constraints - #2371, Support GEOS versions with more than 1 digit in micro - #2372, Cannot parse space-padded KML coordinates - Fix build with systemwide liblwgeom installed - #2383, Fix unsafe use of \' in warning message - #2410, Fix segmentize of collinear curve - #2415, ST_Multi support for COMPOUNDCURVE and CURVEPOLYGON - #2412, ST_LineToCurve support for lines with less than 4 vertices - #2420, ST_LineToCurve: require at least 8 edges to define a full circle - #2423, ST_LineToCurve: require all arc edges to form the same angle - #2424, ST_CurveToLine: add support for COMPOUNDCURVE in MULTICURVE - #2427, Make sure to retain first point of curves on ST_CurveToLine * Enhancements * - #2269, Avoid uselessly de-toasting full geometries on ANALYZE * Known Issues * - #2111, Raster bands can only reference the first 256 bands of out-db rasters PostGIS 2.0.3 2013/03/01 * Bug Fixes * - #2134, Fixed handling of SRS strings as they are passed to GDAL functions PostGIS 2.0.2 2012/12/03 * Bug Fixes * - #1287, Drop of "gist_geometry_ops" broke a few clients package of legacy_gist.sql for these cases - #1391, Errors during upgrade from 1.5 - #1828, Poor selectivity estimate on ST_DWithin - #1838, error importing tiger/line data - #1869, ST_AsBinary is not unique - added to legacy_minor/legacy.sql scripts - #1885, Missing field from tabblock table in tiger2010 census_loader.sql - #1891, Use LDFLAGS environment when building liblwgeom - #1899, Enhance toTopoGeom error on unsupported input - #1900, Fix pgsql2shp for big-endian systems - #1932, Fix raster2pgsql for invalid syntax for setting index tablespace - #1936, ST_GeomFromGML on CurvePolygon causes server crash - #1955, ST_ModEdgeHeal and ST_NewEdgeHeal for doubly connected edges - #1957, ST_Distance to a one-point LineString returns NULL - #1976, Geography point-in-ring code overhauled for more reliability - #1978, wrong answer calculating length of closed circular arc (circle) - #1981, Remove unused but set variables as found with gcc 4.6+ - #1987, Restore 1.5.x behaviour of ST_Simplify - #1989, Preprocess input geometry to just intersection with raster to be clipped - #1991, geocode really slow on PostgreSQL 9.2 - #1996, support POINT EMPTY in GeoJSON output - #1998, Fix ST_{Mod,New}EdgeHeal joining edges sharing both endpoints - #2001, ST_CurveToLine has no effect if the geometry doesn't actually contain an arc - #2015, ST_IsEmpty('POLYGON(EMPTY)') returns False - #2019, ST_FlipCoordinates does not update bbox - #2025, Fix side location conflict at TopoGeo_AddLineString - #2062, improve performance of distance calculations - #2033, Fix adding a splitting point into a 2.5d topology - #2051, Fix excess of precision in ST_AsGeoJSON output - #2052, Fix buffer overflow in lwgeom_to_geojson - #2056, Fixed lack of SRID check of raster and geometry in ST_SetValue() - #2057, Fixed linking issue for raster2psql to libpq - #2060, Fix "dimension" check violation by GetTopoGeomElementArray - #2072, Removed outdated checks preventing ST_Intersects(raster) from working on out-db bands - #2077, Fixed incorrect answers from ST_Hillshade(raster) - #2092, Namespace issue with ST_GeomFromKML,ST_GeomFromGML for libxml 2.8+ - #2099, Fix double free on exception in ST_OffsetCurve - #2100, ST_AsRaster() may not return raster with specified pixel type - #2108, Ensure ST_Line_Interpolate_Point always returns POINT - #2109, Ensure ST_Centroid always returns POINT - #2117, Ensure ST_PointOnSurface always returns POINT - #2129, Fix SRID in ST_Homogenize output with collection input - #2130, Fix memory error in MultiPolygon GeoJson parsing - Update URL of Maven jar * Enhancements * - #1581, ST_Clip(raster, ...) no longer imposes NODATA on a band if the corresponding band from the source raster did not have NODATA - #1928, Accept array properties in GML input multi-geom input (Kashif Rasul and Shoaib Burq / SpacialDB) - #2082, Add indices on start_node and end_node of topology edge tables - #2087, Speedup topology.GetRingEdges using a recursive CTE PostGIS 2.0.1 2012/06/22 * Bug Fixes * - #1264, fix st_dwithin(geog, geog, 0). - #1468 shp2pgsql-gui table column schema get shifted - #1694, fix building with clang. (vince) - #1708, improve restore of pre-PostGIS 2.0 backups. - #1714, more robust handling of high topology tolerance. - #1755, ST_GeographyFromText support for higher dimensions. - #1759, loading transformed shapefiles in raster enabled db. - #1761, handling of subdatasets in NetCDF, HDF4 and HDF5 in raster2pgsql. - #1763, topology.toTopoGeom use with custom search_path. - #1766, don't let ST_RemEdge* destroy peripheral TopoGeometry objects. - #1774, Clearer error on setting an edge geometry to an invalid one. - #1775, ST_ChangeEdgeGeom collision detection with 2-vertex target. - #1776, fix ST_SymDifference(empty, geom) to return geom. - #1779, install SQL comment files. - #1782, fix spatial reference string handling in raster. - #1789, fix false edge-node crossing report in ValidateTopology. - #1790, fix toTopoGeom handling of duplicated primitives. - #1791, fix ST_Azimuth with very close but distinct points. - #1797, fix (ValidateTopology(xxx)).* syntax calls. - #1805, put back the 900913 SRID entry. - #1813, Only show readable relations in metadata tables. - #1819, fix floating point issues with ST_World2RasterCoord and ST_Raster2WorldCoord variants. - #1820 compilation on 9.2beta1. - #1822, topology load on PostgreSQL 9.2beta1. - #1825, fix prepared geometry cache lookup - #1829, fix uninitialized read in GeoJSON parser - #1834, revise postgis extension to only backup user specified spatial_ref_sys - #1839, handling of subdatasets in GeoTIFF in raster2pgsql. - #1840, fix logic of when to compute # of tiles in raster2pgsql. - #1851, fix spatial_ref_system parameters for EPSG:3844 - #1857, fix failure to detect endpoint mismatch in ST_AddEdge*Face* - #1865, data loss in postgis_restore.pl when data rows have leading dashes. - #1867, catch invalid topology name passed to topogeo_add* - #1870, align the docs and actual behavior of raster's ST_Intersects - #1872, fix ST_ApproxSummarystats to prevent division by zero - #1873, fix ptarray_locate_point to return interpolated Z/M values for on-the-line case - #1875, ST_SummaryStats returns NULL for all parameters except count when count is zero - #1881, shp2pgsql-gui -- editing a field sometimes triggers removing row - #1883, Geocoder install fails trying to run create_census_base_tables() (Brian Panulla) * Enhancements * - More detailed exception message from topology editing functions. - #1786, improved build dependencies - #1806, speedup of ST_BuildArea, ST_MakeValid and ST_GetFaceGeometry. - #1812, Add lwgeom_normalize in LIBLWGEOM for more stable testing. PostGIS 2.0.0 2012/04/03 * Important / Breaking Changes * - Upgrading to PostGIS 2.0 REQUIRES a dump and restore. See the "Hard Upgrade" section of the documentation. - Functions deprecated during the 1.X series (mostly non-ST variants) have been removed. Update your application to the new signatures. If you cannot update your application, see the legacy.sql file to enable the old signatures. - GEOMETRY_COLUMNS is now a view, not a table. Code that manually updates the table must be changed to either use the management functions (eg AddGeometryColumn) or the new geometry typmod options (eg CREATE TABLE t (g GEOMETRY(Polgyon, 4326))) - ST_AsBinary and ST_AsText now return 3D/4D results in ISO SQL/MM format when called on 3D/4D features. - The "unknonwn SRID" is now 0, not -1. (eg ST_SRID(ST_GeomFromText('POINT(0 0)')) returns 0) - ST_NumGeometries returns 1 for singletons. ST_GeometryN returns the the geometry for singletons. - probe_geometry_columns(), rename_geometry_table_constraints(), fix_geometry_columns(), have been removed since GEOMETRY_COLUMNS is now a view. - 3D analysis functions are now named with "3D" as a prefix instead of a suffix (eg ST_Length3D has become ST_3DLength) - Operator && does not check for SRID mismatch anymore * New Features * - KNN Gist index based centroid (<->) and box (<#>) distance operators (Paul Ramsey / funded by Vizzuality) - PostgreSQL 9.1+ "extension" support (Regina Obe) - Typmod support for geometry (Paul Ramsey) - Support for TIN and PolyHedralSurface (Olivier Courtin / Oslandia) - Raster support integrated and documented (Pierre Racine, Jorge Arévalo, Mateusz Loskot, Sandro Santilli, Regina Obe, David Zwarg) (Company developer and funding: University Laval, Deimos Space, CadCorp, Michigan Tech Research Institute, Paragon Corporation, Azavea) - N-Dimensional spatial indexes (Paul Ramsey / OpenGeo) - Topology support improved, documented, testing, bug fixes (Sandro Santilli / Faunalia for RT-SIGTA, Regina Obe, Andrea Peri, Jose Carlos Martinez Llari) - 3D relationship support functions (Nicklas Avén) ST_3DDistance, ST_3DClosestPoint, ST_3DIntersects, ST_3DShortestLine - ST_Split (Sandro Santilli / Faunalia for RT-SIGTA) - ST_Node (Sandro Santilli) - ST_isValidDetail (Sandro Santilli / Faunalia for RT-SIGTA) - ST_MakeValid (Sandro Santilli / Faunalia for RT-SIGTA) - ST_RemoveRepeatedPoints (Sandro Santilli / Faunalia for RT-SIGTA) - ST_GeometryN and ST_NumGeometries support for non-collections (Sandro Santilli) - ST_IsCollection (Sandro Santilli, Maxime van Noppen) - ST_SharedPaths (Sandro Santilli / Faunalia for RT-SIGTA) - ST_Snap (Sandro Santilli) - ST_RelateMatch (Sandro Santilli / Faunalia for RT-SIGTA) - ST_ConcaveHull (Regina Obe and Leo Hsu / Paragon Corporation) - ST_UnaryUnion (Sandro Santilli) - ST_Relate with boundary node rule (Sandro Santilli / Faunalia for RT-SIGTA) - ST_AsX3D (Regina Obe / Arrival 3D) - ST_OffsetCurve (Sandro Santilli, Rafal Magda) - ST_GeomFromGeoJSON (Kashif Rasul, Paul Ramsey / Vizzuality) - ST_AsBinary byte endian support for geography * Enhancements * - Made loader tolerant of truncated multibyte values found in some free worldwide shapefiles (Sandro Santilli) - Lots of bug fixes and enhancements to shp2pgsql Beefing up regression tests for loaders Reproject support for both geometry and geography during import (Jeff Adams / Azavea, Mark Cave-Ayland) - pgsql2shp conversion from predefined list (Loic Dachary / Mark Cave-Ayland) - Shp-pgsql GUI - support loading multiple files. (Mark Leslie) - Shp-pgsql GUI - support exporting multiple tablee. (Mark Cave-Ayland) - Extras - upgraded tiger_geocoder from using old TIGER format to use new TIGER shp and file structure format (Stephen Frost) - Enhancements and documentation of TIGER geocoder (Regina Obe, Leo Hsu / Paragon Corporation / funding provided by Hunter Systems Group) - Documentation proofreading and corrections. (Kasif Rasul) * All Fixes and Enhancements * - http://trac.osgeo.org/postgis/query?status=closed&milestone=PostGIS+2.0.0 * Acknowledgements * We are most indebted to the numerous members in the PostGIS community who were brave enough to TEST out the new features in this release. No major release can be successful without lots of testing. Below is an incomplete list of some of the many folks who helped us get to this release. - Andrea Peri - Lots of testing on topology, checking for correctness - Andreas Forø Tollefsen - raster testing - Chris English - topology stress testing loader functions - Salvatore Larosa - Lots of topology testing - Brian Hamlin - Benchmarking, general testing all components - Mike Pease - Tiger geocoder testing, very detailed reports of issues - Tom van Tilburg - raster testing PostGIS 1.5.3 2011/06/25 - This is a bug fix release, addressing issues that have been filed since the 1.5.2 release. - Bug Fixes - #1056, produce correct bboxes for arc geometries, fixes index errors (Paul Ramsey) - #1007, ST_IsValid crash - fix requires GEOS 3.3.0+ or 3.2.3+ (Sandro Santilli, reported by Birgit Laggner) - #940, support for PostgreSQL 9.1 beta 1 (Regina Obe, Paul Ramsey, patch submitted by stl) - #845, ST_Intersects precision error (Sandro Santilli, Nicklas Avén) Reported by cdestigter - #884, Unstable results with ST_Within, ST_Intersects (Chris Hodgson) - #779, shp2pgsql -S option seems to fail on points (Jeff Adams) - #666, ST_DumpPoints is not null safe (Regina Obe) - #631, Update NZ projections for grid transformation support (jpalmer) - #630, Peculiar Null treatment in arrays in ST_Collect (Chris Hodgson) Reported by David Bitner - #624, Memory leak in ST_GeogFromText (ryang, Paul Ramsey) - #609, Bad source code in manual section 5.2 Java Clients (simoc, Regina Obe) - #604, shp2pgsql usage touchups (Mike Toews, Paul Ramsey) - #573 ST_Union fails on a group of linestrings Not a PostGIS bug, fixed in GEOS 3.3.0 - #457 ST_CollectionExtract returns non-requested type (Nicklas Avén, Paul Ramsey) - #441 ST_AsGeoJson Bbox on GeometryCollection error (Olivier Courtin) - #411 Ability to backup invalid geometries (Sandro Santilli) Reported by Regione Toscana - #409 ST_AsSVG - degraded (Olivier Courtin) Reported by Sdikiy - #373 Documentation syntax error in hard upgrade (Paul Ramsey) Reported by psvensso PostGIS 1.5.2 2010/09/27 - This is a bug fix release, addressing issues that have been filed since the 1.5.1 release. - Bug Fixes - Loader: fix handling of empty (0-verticed) geometries in shapefiles. (Sandro Santilli) - #536, Geography ST_Intersects, ST_Covers, ST_CoveredBy and Geometry ST_Equals not using spatial index (Regina Obe, Nicklas Avén) - #573, Improvement to ST_Contains geography - Loader: Add support for command-q shutdown in Mac GTK build (Paul Ramsey) - #393, Loader: Add temporary patch for large DBF files (Maxime Guillaud, Paul Ramsey) - #507, Fix wrong OGC URN in GeoJSON and GML output (Olivier Courtin) - spatial_ref_sys.sql Add datum conversion for projection SRID 3021 (Paul Ramsey) - Geography - remove crash for case when all geographies are out of the estimate (Paul Ramsey) - #469, Fix for array_aggregation error (Greg Stark, Paul Ramsey) - #532, Temporary geography tables showing up in other user sessions (Paul Ramsey) - #562, ST_Dwithin errors for large geographies (Paul Ramsey) - #513, shape loading GUI tries to make spatial index when loading DBF only mode (Paul Ramsey) - #527, shape loading GUI should always append log messages (Mark Cave-Ayland) - #504 shp2pgsql should rename xmin/xmax fields (Sandro Santilli) - #458 postgis_comments being installed in contrib instead of version folder (Mark Cave-Ayland) - #474 Analyzing a table with geography column crashes server (Paul Ramsey) - #581 LWGEOM-expand produces inconsistent results (Mark Cave-Ayland) - #471 DocBook dtd errors (Olivier Courtin) - Fix further build issues against PostgreSQL 9.0 (Mark Cave-Ayland) - #572 Password whitespace for Shape File to PostGIS Import not supported (Mark Cave-Ayland) - #603: shp2pgsql: "-w" produces invalid WKT for MULTI* objects. (Mark Cave-Ayland) - Enhancement - #513 Add dbf filter to shp2pgsql-gui and allow uploading dbf only (Paul Ramsey) PostGIS 1.5.1 2010/03/11 - This is a bug fix release, addressing issues that have been filed since the 1.5.0 release. - Bug Fixes - #410, update embedded bbox when applying ST_SetPoint, ST_AddPoint ST_RemovePoint to a linestring (Paul Ramsey) - #411, allow dumping tables with invalid geometries (Sandro Santilli, for Regione Toscana-SIGTA) - #414, include geography_columns view when running upgrade scripts (Paul Ramsey) - #419, allow support for multilinestring in ST_Line_Substring (Paul Ramsey, for Lidwala Consulting Engineers) - #421, fix computed string length in ST_AsGML() (Olivier Courtin) - #441, fix GML generation with heterogeneous collections (Olivier Courtin) - #443, incorrect coordinate reversal in GML 3 generation (Olivier Courtin) - #450, #451, wrong area calculation for geography features that cross the date line (Paul Ramsey) - Ensure support for upcoming 9.0 PgSQL release (Paul Ramsey) PostGIS 1.5.0 2010/02/04 * Important Changes * - =~ operator now indicates bounding box equality, not feature equality - GEOS 3.1 is now the minimum accepted version of GEOS - GEOS 3.2 is needed if you want to use enhanced buffering features and ST_HausdorffDistance - GEOS, LibXML2, and Proj4 are now mandatory dependencies * New Features * - Added Hausdorff distance calculations (#209) (Vincent Picavet) - Added parameters argument to ST_Buffer operation to support one-sided buffering and other buffering styles (Sandro Santilli) - Performance improvements to ST_Distance (Nicklas Avén) - Addition of other Distance related visualization and analysis functions (Nicklas Avén) - ST_ClosestPoint - ST_DFullyWithin - ST_LongestLine - ST_MaxDistance - ST_ShortestLine - KML, GML input via ST_GeomFromGML and ST_GeomFromKML (Olivier Courtin) - Extract homogeneous collection with ST_CollectionExtract (Paul Ramsey) - Add measure values to existing linestring with ST_AddMeasure (Paul Ramsey) - History table implementation in utils (George Silva) - Win32 support and improvement of core shp2pgsql-gui (Mark Cave-Ayland) - In place 'make check' support (Paul Ramsey) - Geography type and supporting functions - Spherical algorithms from Dave Skea - Object/index implementation from Paul Ramsey - Selectivitiy implementation from Mark Cave-Ayland - Serializations (KML, GML, JSON) from Olivier Courtin - ST_Area, ST_Distance, ST_DWithin, ST_GeogFromText, ST_GeogFromWKB, ST_Intersects, ST_Covers, ST_Buffer - Documentation updates and improvements (Regina Obe, Kevin Neufeld) - Testing and quality control (Regina Obe) - PostGIS 1.5 support PostgreSQL 8.5 trunk (Guillaume Lelarge) - Many many other changes: http://trac.osgeo.org/postgis/query?status=closed&milestone=PostGIS+1.5.0 PostGIS 1.4.1 2009/11/28 - This is a bug fix release, addressing issues that have been filed since the 1.4.0 release. - Bug Fixes - #241, crash in ST_LineCrossingDirection - #210, segmentation faults in ST_Union with NULLs - #277, crash on very large numeric inputs - #179, ST_MakeLine crash server with NULLs - #253, inconsistent results when using the ~= operator - #276, ST_AsGML producing non-compliant GML - #239, memory issues with ST_As* functions - #272, ST_LineCrossingDirection should be negatively symmetric - #316, parsing problem for invalid higher dimensional geometries PostGIS 1.4.0 2009/06/XX - API Stability - As of the 1.4 release series, the public API of PostGIS will not change during minor releases. - Compatibility - The versions below are the *minimum* requirements for PostGIS 1.4 - PostgreSQL 8.2 and higher on all platforms - GEOS 3.0 and higher only - PROJ4 4.5 and higher only - New Features - ST_Union() uses high-speed cascaded union when compiled against GEOS 3.1+ (Paul Ramsey) - ST_ContainsProperly() requires GEOS 3.1+ - ST_Intersects(), ST_Contains(), ST_Within() use high-speed cached prepared geometry against GEOS 3.1+ (Paul Ramsey / funded by Zonar Systems) - Vastly improved documentation and reference manual (Regina Obe & Kevin Neufeld) - Figures and diagram examples in the reference manual (Kevin Neufeld) - ST_IsValidReason() returns readable explanations for validity failures (Paul Ramsey) - ST_GeoHash() returns a geohash.org signature for geometries (Paul Ramsey) - GTK+ multi-platform GUI for shape file loading (Paul Ramsey) - ST_LineCrossingDirection() returns crossing directions (Paul Ramsey) - ST_LocateBetweenElevations() returns sub-string based on Z-ordinate. (Paul Ramsey) - Geometry parser returns explicit error message about location of syntax errors (Mark Cave-Ayland) - ST_AsGeoJSON() return JSON formatted geometry (Olivier Courtin) - Populate_Geometry_Columns() -- automatically add records to geometry_columns for TABLES and VIEWS (Kevin Neufeld) -- ST_MinimumBoundingCircle() -- returns the smallest circle polygon that can encompass a geometry (Bruce Rindahl) - Enhancements - Core geometry system moved into independent library, liblwgeom. (Mark Cave-Ayland) - New build system uses PostgreSQL "pgxs" build bootstrapper. (Mark Cave-Ayland) - Debugging framework formalized and simplified. (Mark Cave-Ayland) - All build-time #defines generated at configure time and placed in headers for easier cross-platform support (Mark Cave-Ayland) - Logging framework formalized and simplified (Mark Cave-Ayland) - Expanded and more stable support for CIRCULARSTRING, COMPOUNDCURVE and CURVEPOLYGON, better parsing, wider support in functions (Mark Leslie & Mark Cave-Ayland) - Improved support for OpenSolaris builds (Paul Ramsey) - Improved support for MSVC builds (Mateusz Loskot) - Updated KML support (Olivier Courtin) - Unit testing framework for liblwgeom (Paul Ramsey) - New testing framework to comprehensively exercise every PostGIS function (Regine Obe) - Performance improvements to all geometry aggregate functions (Paul Ramsey) - Support for the upcoming PostgreSQL 8.4 (Mark Cave-Ayland, Talha Bin Rizwan) - Shp2pgsql and pgsql2shp re-worked to depend on the common parsing/unparsing code in liblwgeom (Mark Cave-Ayland) - Use of PDF DbLatex to build PDF docs and preliminary instructions for build (Jean David Techer) - Automated User documentation build (PDF and HTML) and Developer Doxygen Documentation (Kevin Neufeld) - Automated build of document images using ImageMagick from WKT geometry text files (Kevin Neufeld) - More attractive CSS for HTML documentation (Dane Springmeyer) - Bug fixes - http://trac.osgeo.org/postgis/query?status=closed&milestone=postgis+1.4.0&order=priority PostGIS 1.3.6 2009/05/04 - Enhancement - PostgreSQL 8.4 compile support (Talha Rizwan, Mark Cave-Ayland) - Fix Big fixes for CURVE handling in many functions (Mark Cave-Ayland, Mark Leslie) - Enhancement Trac#34 - pgsql2shp now creates .prj files where applicable (Regina Obe) - Fix Trac#88 - Windows Vista pgsql2shp memory bug (Regina Obe) - Fix Trac#146 - for distance calculation on collections (Nicklas Avén, Paul Ramsey) - Fix Trac#116 - crashers for rare EWKB cases (Paul Ramsey) - Fix to address an SRID of -1 in probe_geometry_columns (Kevin Neufeld) - Fix Trac#99 shp2pgsql logical error when importing DBF-only (Regina Obe) - Fix Trac#105 pgsql2shp dbase file creation (EOF marker issue) (Paul Ramsey) - Fix updated AddGeometryColumn to throw an error if then specified schema does not exist, rather than throwing a notice and then an error. (Kevin Neufeld) - Fix - Documentation corrections for better handling with PDF DbLatex (Kevin Neufeld) PostGIS 1.3.5 2008/12/15 - A quick bug fix release, to remove crashes in cases of collecting LINESTRING (ST_Force_Collection(), ST_Multi()) that had a large affect on Mapserver with LINE layers. - Enhancements and Bug Fixes - GBT#21: improve LRS fix to apply to more platforms - GBT#72: fix st_estimated_extent for better schema sensitivity - GBT#80: segfault on st_multi in MULTILINESTRING repaired - GBT#83: segfault on collecting LINESTRING repaired PostGIS 1.3.4 2008/11/24 - New Features - Add new ST_AsGeoJSON() function to allow conversion of geometries to GeoJSON format within the database. (Olivier Courtin) - Add forthcoming PostgreSQL 8.4 support (Paul Ramsey, Mark Cave-Ayland) - Improved CSS for PostGIS documentation (Dane Springmeyer) - Inclusion of new "postgis_comments.sql" file to enable detailed function comments to be installed for PostGIS functions. This attaches a description and associated parameter information to each function so that this information is available directly within psql/pgAdmin (Regina Obe) - Enhancements and Bug Fixes - General documentation improvements (Regina Obe, Kevin Neufield) - Improve PiP code by removing substantial memory leaks and adding multi-polygon support (Paul Ramsey) - Improve GiST consistent performance (Paul Ramsey) - GBT#20: Improved algorithm for ST_DWithin (Paul Ramsey) - GBT#21: locate_along_measure: wrong values, invalid data (Mark Cave-Ayland) - GBT#23: wrong proj4text in spatial_ref_sys for SRID 31300 and 31370 (Paul Ramsey) - GBT#43: Heap over-read in compute_geometry_stats() (Landon Fuller) - GBT#44: ST_Relate(geom,geom,pattern) is case sensitive (Paul Ramsey) - GBT#45: bug in postgis_restore.pl - not passing options to createdb (Paul Ramsey) - GBT#58: bounding box of circular string is incorrect (Mark Leslie) - GBT#65: ST_AsGML kills the backend when fed a CIRCULAR STRING (Mark Cave-Ayland) - GBT#66: ST_Dump kills backend when fed CIRCULAR STRING (Mark Cave-Ayland) - GBT#68: ST_Shift_Longitude doesn't work with MULTIPOINT (Mark Cave-Ayland) - GBT#69: ST_Translate crashes when fed circular string (Mark Cave-Ayland) - GBT#70: ST_NPoints Crashes with Curves (Mark Cave-Ayland) PostGIS 1.3.3 2008/04/12 - shp2pgsql, pgsql2shp improvements - regression tests on Windows - OS/X 10.5 compatibility - DBF-only loading flag (-n) - fix to Date DBF output - ST_SimplifyPreserveTopology(geometry, float8) Allows simplification of polygons without creating invalid geometries. - Fix to |>> and <<| operators - Build system more sensitive to GEOS version number - KML support updates (from Eduin Carrillo) - SVG support updates (from Marco Hugentobler) PostGIS 1.3.2 2007/12/01 - Improvements in the TIGER geocoder - Fix to ST_EndPoint() crasher bug - Modified ST_AsGML() improving v2 and adding v3 support - Fix to ensure ST_Envelope() returns valid geometries - Change JDBC build to use Ant - Fix for better OS/X support - Fix to WKB parser to do simple validity checks PostGIS 1.3.1 2007/08/13 - Fixed documentation bugs and release number errors in previous cut PostGIS 1.3.0 2007/08/09 - Began migration of functions to the SQL-MM-centric naming convension using the spatial type (SP) prefix - Performance enhancements: - Created cached and indexed point-in-polygon short-circuits for the functions ST_Contains, ST_Intersects, ST_Within ST_Disjoint. - Added inline index support for relational functions (except disjoint) - Added ST_Covers, ST_CoveredBy and ST_DWithin relational functions - Extended curved geometry support to geometry accessor functions and some geometry processing functions - JDBC: Added Hibernate Dialect from Norman Barker - Enhanced regression tests for curved geometries and kml functions PostGIS 1.2.1 2007/01/11 - Fix point-in-polygon shortcut bug in Within() - Fix PgSQL 8.2 null handling for indexes - Update RPM spec files - Add AsKML() function - Add short-circuit for transform() in no-op case - JDBC: - Fixed JTS handling for multi-dimensional geometries (thanks to Thomas Marti for hint and partial patch) - Additionally, now JavaDoc is compiled and packaged - Fixed classpath problems with GCJ - Fixed pgjdbc 8.2 compatibility, losing support for jdk 1.3 and older. PostGIS 1.2.0 2006/12/08 - Added curved geometry type support for serialization/deserialization. - Added point-in-polygon shortcircuit to Contains and Within functions. - JDBC: Added awt.shape implementation for JTS geometries - EJB3: Fixed NullPointer bug, thanks to Norman Barker PostGIS 1.1.6 2006/11/02 - fixed CAPI change that broke 64-bit platforms - use Z ordinate in reprojections - spatial_ref_sys.sql updated to EPSG 6.11.1 - Simplified Version.config infrastructure to use a single pack of version variables for everything. - Include the Version.config in loader/dumper USAGE messages - Replace hand-made, fragile JDBC version parser with Properties - Fixed setSRID() bug in JDBC, thanks to Thomas Marti - loader/dumper: fixed regression tests and usage output PostGIS 1.1.5 2006/10/13 - Java: - Removed obsolete synchronization from Jts code. - fixed nullpointer Exception in Geometry.equals() method - Added EJB3Spatial.odt to fulfill the GPL requirement of distributing the "preferred form of modification" - Added -S option for non-multi geometries to shp2pgsql - Updated heavily outdated README files for shp2pgsql/pgsql2shp by merging them with the manpages. - Fixed MingW link error that was causing pgsql2shp to segfault on Win32 when compiled for PostgreSQL 8.2 PostGIS 1.1.4 2006/09/27 - Fixed support for PostgreSQL 8.2 - Fixed bug in collect() function discarding SRID of input - Added SRID match check in MakeBox2d and MakeBox3d - Fixed regress tests to pass with GEOS-3.0.0 - Improved pgsql2shp run concurrency. - Java: - reworked JTS support to reflect new upstream JTS developers' attitude to SRID handling. Simplifies code and drops build depend on GNU trove. - Added EJB2 support generously donated by the "Geodetix s.r.l. Company" http://www.geodetix.it/ - Added EJB3 tutorial / examples donated by Norman Barker - Reorganized java directory layout a little. PostGIS 1.1.3 2006/06/30 - NEW Long Transactions support. - Can run the regress tests with 'make check' now. - New regress test support for loader/dumper. - BUGFIX in pgsql2shp successful return code. - BUGFIX in shp2pgsql handling of MultiLine WKT. - BUGFIX in affine() failing to update bounding box. - WKT parser: forbidden construction of multigeometries with EMPTY elements (still supported for GEOMETRYCOLLECTION). - Added --with-proj-libdir and --with-geos-libdir configure switches. - JDBC: - Improved regression tests: MultiPoint and scientific ordinates - Fixed some minor bugs in jdbc code - Added proper accessor functions for all fields in preparation of making those fields private later - Support for build Tru64 build. - Use Jade for generating documentation. - NEW DumpRings() function. - BUGFIX in distance(poly,poly) giving wrong results. - NEW AsHEXEWKB(geom, XDR|NDR) function. - Don't link pgsql2shp to more libs then required. - Initial support for PostgreSQL 8.2. PostGIS 1.1.2 2006/03/30 - Regress tests can now be run *before* postgis intallation - BUGFIX in SnapToGrid() computation of output bounding box - More portable ./configure script - Changed ./run_test script to have more sane default behaviour - Fixed support for 64bit archs - jdbc2 SRID handling fixes in JTS code - New affine() matrix transformation functions - New rotate{,X,Y,Z}() function - Old translating and scaling functions now use affine() internally - BUGFIX in EnforceRHR() - Embedded access control in estimated_extent() for builds against pgsql >= 8.0.0 PostGIS 1.1.1 2006/01/23 - Source code cleanups - Solaris 2.7 and MingW support improvements - added NumInteriorRing() alias due to OpenGIS ambiguity - BUGFIX in geometrycollection handling of GEOS-CAPI connector - BUGFIX in line_locate_point() - Fixed handling of postgresql paths - Fixed a premature exit in postgis_restore.pl - BUGFIX in line_substring() - New Z and M interpolation in line_substring() - New Z and M interpolation in line_interpolate_point() - Added support for localized cluster in regress tester PostGIS 1.1.0 2005/12/21 - New functions: - scale() and transscale() companion methods to translate() - line_substring() - line_locate_point() - M(point) - LineMerge(geometry) - shift_longitude(geometry) - azimuth(geometry) - locate_along_measure(geometry, float8) - locate_between_measures(geometry, float8, float8) - SnapToGrid by point offset (up to 4d support) - BuildArea(any_geometry) - OGC BdPolyFromText(linestring_wkt, srid) - OGC BdMPolyFromText(linestring_wkt, srid) - RemovePoint(linestring, offset) - ReplacePoint(linestring, offset, point) - Bug fixes: - Fixed memory leak in polygonize() - Fixed bug in lwgeom_as_anytype cast funcions - Fixed USE_GEOS, USE_PROJ and USE_STATS elements of postgis_version() output to always reflect library state. - Function semantic changes: - SnapToGrid doesn't discard higher dimensions - Changed Z() function to return NULL if requested dimension is not available - Peformance improvements: - Much faster transform() function, caching proj4 objects - Removed automatic call to fix_geometry_columns() in AddGeometryColumns() and update_geometry_stats() - jdbc2 works: - Makefile improvements - JTS support improvements - Improved regression test system - Basic consistency check method for geometry collections - Support for (Hex)(E)wkb - Autoprobing DriverWrapper for HexWKB / EWKT switching - fix compile problems in ValueSetter for ancient jdk releases. - fix EWKT constructors to accept SRID=4711; representation - added preliminary read-only support for java2d geometries - Other new things: - Full autoconf-based configuration, with PostgreSQL source dependency relief - GEOS C-API support (2.2.0 and higher) - Initial support for topology modelling - Debian and RPM specfiles - New lwpostgis_upgrade.sql script - Other changes: - JTS support improvements - Stricter mapping between DBF and SQL integer and string attributes - Wider and cleaner regression test suite - old jdbc code removed from release - obsoleted direct use of postgis_proc_upgrade.pl - scripts version unified with release version PostGIS 1.0.6 2005/12/06 - Fixed palloc(0) call in collection deserializer (only gives problem with --enable-cassert) - Fixed bbox cache handling bugs - Fixed geom_accum(NULL, NULL) segfault - Initial support for postgresql 8.2 - Fixed segfault in addPoint() - Fixed short-allocation in lwcollection_clone() - Fixed bug in segmentize() - Added missing SRID mismatch checks in GEOS ops - Fixed bbox computation of SnapToGrid output PostGIS 1.0.5 2005/11/25 - New "Reporting Bugs" chapter in manual - Segfault fix in shp2pgsql (utf8 encoding) - Fixed computation of null values fraction in analyzer - Fixed return code of shp2pgsql - Fixed handling of trailing dots in dbf numerical attributes - Schema aware postgis_proc_upgrade.pl, support for pgsql 7.2+ - Fixed a small bug in the getPoint4d_p() low-level function - Fixed memory alignment problems - Speedup of serializer functions - Bug fix in force_4d, force_3dm and force_3dz functions PostGIS 1.0.4 2005/09/09 - Memory leak plugged in GiST indexing - Segfault fix in transform() handling of proj4 errors - Fixed some proj4 texts in spatial_ref_sys (missing +proj) - GiST indexing cleanup - Loader: fixed string functions usage, reworked NULL objects check, fixed segfault on MULTILINESTRING input. - Fixed bug in MakeLine dimension handling - Looser syntax acceptance in box3d parser - Documentation improvements - More robust selectivity estimator - Minor speedup in distance() - Minor cleanups - Fixed bug in translate() corrupting output bounding box - Initial implementation of postgis_proc_upgrade script PostGIS 1.0.3 2005/08/08 - Severe bugfix in lwgeom's 2d bounding box computation - Bugfix in WKT (-w) POINT handling in loader - Bugfix in dumper on 64bit machines - Bugfix in dumper handling of user-defined queries - Bugfix in create_undef.pl script - Small performance improvement in canonical input function - Minor cleanups in loader - Support for multibyte field names in loader - Improvement in the postgis_restore.pl script - New rebuild_bbox_caches.pl util script PostGIS 1.0.2 2005/07/04 - Fault tolerant btree ops - Memory Leak fix in pg_error - Rtree index fix. See: http://archives.postgresql.org/pgsql-hackers/2005-06/msg01108.php - Initial support for postgresql 8.1dev - Cleaner build scripts: avoided mix of CFLAGS and CXXFLAGS - NEW -I switch for pgsql2shp (GiST index) PostGIS 1.0.1 2005/05/24 - BUGFIX in shp2pgql escape functions - BUGFIX in 3d computation of lenght_spheroid - better support for concurrent postgis in multiple schemas - documentation fixes - BUGFIX in join selectivity estimator returning invalid estimates (>1) - jdbc2: compile with "-target 1.2 -source 1.2" by default - NEW support for custom createdb options in postgis_restore.pl - NEW -k switch for pgsql2shp - BUGFIX in pgsql2shp attribute names unicity enforcement - BUGFIX in Paris projections definitions - postgis_restore.pl cleanups PostGIS 1.0.0 2005/04/19 - NEW manual pages for loader/dumper - NEW shp2pgsql support for old (HWGEOM) postgis versions - NEW -p flag for shp2pgsql - BUGFIX in transform() releasing random memory address - BUGFIX in force_3dm() allocating less memory then required - NEW chapter about OGC compliancy enforcement - BUGFIX in shp2pgsql escape of values starting with "'" or "\t" - NEW autoconf support for JTS lib - BUGFIX in estimator testers (support for LWGEOM and schema parsing) - BUGFIX in join selectivity estimator (defaults, leaks, tuplecount, sd) PostGIS 1.0.0RC6 2005/03/30 - BUGFIX dumper 64bit - BUGFIX in multi() - BUGFIX in postgis_restore.pl script - early return [when noop] from multi() - dropped {x,y}{min,max}(box2d) functions PostGIS 1.0.0RC5 2005/03/25 - small build scripts refinements - BUGFIX in box3d computation (yes, another!) - BUGFIX in estimated_extent() - additional performance tips documented PostGIS 1.0.0RC4 2005/03/18 - early return from force_collection - segfault fix in geom_accum() - consistency check fix in SnapToGrid() - jdbc2: code cleanups, Makefile improvements - FLEX & YACC variables set *after* pgsql Makefile.global is included and only if the pgsql *stripped* version evaulates to the empty string - added already generated parser in release - build scripts refinements - MultiLine handling BUG fix in loader and dumper - improved version handling, central Version.config - added distance_sphere function - subselects support in selectivity estimator - bug fixes for 64bit architectures - bugfix in loaded, skipping all but first hole of polygons. - changed get_proj4_from_srid implementation to use plpgsql instead of sql to workaround a pgsql80x bug. - box2d output changed back to 15 significant digits - BUGFIX in box3d computation function with collections - improvements in postgis_restore.pl PostGIS 1.0.0RC3 2005/02/24 - transform(): missing SRID bugfix, better error handling - jdbc2: small patches, box2d/3d tests, revised docs and license. - jdbc2: bug fix and testcase in for pgjdbc 8.0 type autoregistration - few changes in autoconf - reduced precision of box2d output. - some functions made IMMUTABLE from STABLE, for performance improvement - new performance tips chapter in manual - BUILDDATE extraction made more portable - fixed bogus 72 index bindings - prefixed DEBUG macros with PGIS_ to avoid clash with pgsql one - fixes in probe_geometry_columns() to work with PG72 and support multiple geometry columns in a single table - fixed spatial_ref_sys.sql to avoid vacuuming the whole database. - jdbc2: Removed use of jdk1.4 only features to enable build with older jdk releases. - jdbc2: Added support for building against pg72jdbc2.jar - documentation updates: pgsql72 requirement, lwpostgis.sql - memory alignment handling - fixed bug in force_collection causing mapserver connector failures on simple (single) geometry types. - jdbc2: updated and cleaned makefile - plugged a leak in GEOS2POSTGIS converter - jdbc2: added BETA support for jts geometry classes - jdbc2: Skip known-to-fail tests against older PostGIS servers. - jdbc2: Fixed handling of measured geometries in EWKT. - Reduced memory usage by early releasing query-context palloced one. - Added bool::text cast in lwpostgis.sql - bug fix in GeometryFromText() missing to add a bbox cache. - spatial_ref_sys: changed Paris entries to match the ones distributed with 0.x. PostGIS 1.0.0RC2 2005/01/26 - More correct STABLE, IMMUTABLE, STRICT uses in lwpostgis.sql - GEOMETRYCOLLECTION(EMPTY) syntax support for backward compatibility - faster and more robust loader (both i18n and not) - faster binary outputs - bug fix in pointarray box3d computation - initial autoconf script - bug fix in distance_spheroid definition - stricter OGC WKB constructors - stricter OGC WKT constructors - bug fix in transform() missing to update bbox cache - LWGEOM aware JDBC driver (jdbc2) PostGIS 1.0.0RC1 2005/01/13 - New Things - Objects are all now "lightweight" with a smaller disk and index representation. Large databases should see a moderate to large performance increase. - Objects now have a hexidecimal canonical representation. To see a "user friendly" version of the objects use the AsText() function. - The loader and dumper use the hexidecimal canonical representation, so coordinate drift due to floating point string parsing is now eliminated. - New functions: UpdateGeometrySRID(), AsGML(), SnapToGrid(), ForceRHR(), estimated_extent(), Accum(). - Vertical positioning operators. - Geometry constructors/editors. - Coordinate dimensions handling (up to 4d). - API. - Join selectivity. - Bug Fixes - Numerous small fixes. PostGIS 0.9.0 2004/09/10 - New Things - GEOMETRY_COLUMNS management functions - fix_geometry_columns(), probe_geometry_columns() - Support for PgSQL 8.0 / Support for Win32 - Support for GEOS 2.0 - Bug Fixes - Schema support in shp2pgsql/pgsql2shp improved - Spatial index estimator improved - Build system streamlined PostGIS 0.8.2 2004/05/27 - New Things - PgSQL 7.5 Support - Integrated PgSQL 7.5 statistics rathering - Improved schema support - Optional experimental lightweight geometries (LWGEOM) - Faster performance - Lower disk usage - Multi() function to create MULTI* geometries - line_interpolate_point() function for linear referencing - Bug Fixes - Minor memory leaks gone - Solaris support cleaner - shp2pgsql/pgsql2shp more corner cases fixed PostGIS 0.8.1 2004/01/12 - New Things - Schema support in AddGeometryColumn and loader/dumper - Bug Fixes - Memory fixes - GEOS translation fixes PostGIS 0.8.0 2003/11/24 - New Things - Support for PostgreSQL 7.4 - Support for all OpenGIS SFSQL functions (requires GEOS) - Contains() - Within() - GeomUnion() - Intersection() - Buffer() - and many more...! - Includes OpenGIS conformance tests - Passes all OpenGIS conformance tests - Spatial aggregate functions - GeomUnion() - Collect() - Bug Fixes - shp2pgsql/pgsql2shp - Numerous special cases in rings and attributes repaired - Some OpenGIS conformance changes PostGIS 0.7.5 2003/04/08 - Bug Fixes - shp2pgsql - Z coordinate handling - M coordinate handling - Ring handling fixed in some cases - Support for large numbers in attribute tables - Some obscure operators fixed - Some cygwin build improvements PostGIS 0.7.4 2003/02/12 - Bug Fixes - Several shp2pgsql enhancements and bugs. - Cleaner compile, fewer warnings. - Better undef support. - Fixed stateplane/feet proj definitions. - New Things - Support for PostgreSQL 7.3 - Optional spatial index selectivity system PostGIS 0.7.3 2002/09/05 - Bug Fixes - Stupid bug in .sql install script breaks install for many. Squashed. New release needed. - Automatic version detection for appropriate GiST bindings - postgis_transform now supports box3d types as well as geometry PostGIS 0.7.2 2002/09/01 - Bug Fixes - Numerous subtle bugs fixed in pgsql2shp and shp2pgsql DBF and SHP file handling - Some pgsql 7.3 preparations - Patch to truly_inside() corner case - Updates to the ~ and @ operators - Update to translate() function to also translate bbox PostGIS 0.7.1 2002/05/14 - Bug Fixes - PgSQL 7.2 RTree-over-GIST bug fix. Rare data cases caused index building to fail. - Carriage returns removed from source code. Were causing compilation failures. - collect() now returns simplest homogeneous type being aggregated (e.g.M ULTIPOLYGON for collect(*POLYGON)) PostGIS 0.7.0 2002/05/04 - New Things - transform() function provides coordinate reprojection using proj4 library - spatial_ref_sys.sql has a complete set of proj4 definitions for each EPSG coordinate system - support for PostgreSQL 7.2 GiST index API - refactoring of source code to separate index support functions from other functions - max_distance() function - distance_spheroid() function - collect() aggregate function - xmin(),ymin(),zmin(),xmax(),ymax(),zmax() functions - Bug Fixes - transform() more graceful when grid shifts are missing - setsrid() made cachable - patches to loader/dumper PostGIS 0.6.2 2001/11/07 - New Things - spatial_ref_sys.sql complete set of SRID and WKT - generate postgis_undef.sql automatically at build - Bug fixes - Memory problem in shp2pgsql - Compilation problems with shp2pgsql PostGIS 0.6.1 2001/10/15 - Bug fixes - Cygwin compilation fix - Improved getopts handling in utility programs - Text casting fixes PostGIS 0.6 2001/09/19 - New functions - postgis_version() Return the PostGIS version number. - find_srid(::varchar, ::varchar, ::varchar) Return the SRID number for a particular column of a database. - AddGeometryColumn(::varchar,
::varchar, ::varchar, ::integer, ::varchar, ::integer) Appends a geometry column to an existing table and updates the metadata tables appropriately. - DropGeometryColumn(::varchar,
::varchar, ::varchar) Removes a geometry column from an existing spatial table. - Distance(::geometry, ::geometry) Returns the cartesian distance between two geometries. - AsText(::geometry) Returns the OGC well-known text version of the geometry. - SRID(::geometry) Returns the integer SRID of the geometry. - GeometryFromText(::varchar, ::integer) Creates a geometry object given the OGC well-known text and a valid SRID. - SetSRID(::geometry) Sets the SRID of a geometry to a particular value. - IsClosed(::geometry) Returns true of first and last points of geometry are coincident. - StartPoint(::geometry) Returns the first point of a geometry. - EndPoint(::geometry) Returns the last point of a geometry. - Centroid(::geometry) Returns the centroid of a geometry. - More OpenGIS SFSQL compatibility - SPATIAL_REF_SYS table - GEOMETRY_COLUMNS table - SRID integrity checking - Better Mapserver compatibility - Minor fixes/changes - Support for WKB in the tables - Miscellaneous bug fixes - Placeholders for precision grid PostGIS 0.5 2001/07/20 - New functions - Dimension() - GeometryType() - Envelope() - X(), Y(), Z() - NumPoints() - PointN() - ExteriorRing() - NumInteriorRings() - InteriorRingN() - NumGeometries() - GeometryN() - Length_Spheroid() - Length3D_Spheroid() - AsBinary() + XDR and NDR variants - force_collection() - Removed functions - wkb_ndr() - wkb_xdr() - New Objects - SPHEROID(,,) To be used with the length_spheroid functions for accurate length calculations on lat/lon data. - Minor bug fixes - Internal Functions - Extra constructors to make geometry manipulation easier - Structural Reorganization - Broke postgis.c up into four new files postgis_debug.c -- debugging functions postgis_fn.c -- generic functions (like length()) postgis_ops.c -- operators and indexing functions postgis_inout.c -- type support functions and data conversion functions PostGIS 0.2 2001/06/19 - New functions - extent() - force_2d() - force_3d() - wkb_xdr() - wkb_ndr() - translate() - Fixes - Cygwin compilation (Norman Vine) - i386 byte alignment fixed - 'VACUUM ANALYZE' fixed - Other - documentation in docbook xml - example program for WKB access - removed 'make test' until we can get regression working more cleanly PostGIS 0.1 2001/05/25 - Initial release! - 'geometry' and 'box3d' types. - Parsing routines for all possible geometries in OGIS text format (POINT, LINESTRING, POLYGON, MULTIPOINT, MULTILINESTRING, MULTIPOLYGON, GEOMETRYCOLLECTION). - Output routines for all possible geometries in OGIS text format. - area2d(), area3d() - length3d(), length3d() - perimeter2d(), perimeter3d() - truely_inside() - rtree index support functions - gist index support functions