| 1 | = GDAL/OGR 3.0.0 Release Notes = |
| 2 | |
| 3 | == In a nutshell... == |
| 4 | |
| 5 | * Implement RFC 73: Integration of PROJ6 for WKT2, late binding capabilities, time-support and unified CRS database. PROJ >= 6 is now a build requirement |
| 6 | https://trac.osgeo.org/gdal/wiki/rfc73_proj6_wkt2_srsbarn |
| 7 | * New GDAL drivers: |
| 8 | - DAAS: read driver for Airbus DS Intelligence Data As A Service |
| 9 | - TileDB: read/write driver for https://www.tiledb.io (#1402) |
| 10 | * New OGR drivers: |
| 11 | - MongoDBv3: read/write driver using libmongocxx v3.4.0 client (for MongoDB >= 4.0) |
| 12 | * Improved drivers: |
| 13 | - FITS: read/write support for scale, offset and CRS |
| 14 | - netCDF: read support for groups |
| 15 | - PDF: add a COMPOSITION_FILE creation option to generate a complex document |
| 16 | - PDS4: subdataset creation support, read/write table/vector support |
| 17 | * Support for minimal builds on Unix (#1250) |
| 18 | * Add a docker/ directory with Dockerfile for different configurations |
| 19 | * Continued code linting |
| 20 | |
| 21 | == New installed files == |
| 22 | |
| 23 | * Resource file: pdfcomposition.xsd |
| 24 | |
| 25 | == Removed installed files == |
| 26 | |
| 27 | * Removal of resource files related to EPSG and ESRI CRS databases: compdcs.csv, coordinate_axis.csv, datum_shift.csv, ellipsoid.csv, esri_epsg.wkt, esri_extra.wkt, esri_Wisconsin_extra.wkt, gcs.csv, gcs.override.csv, gdal_datum.csv, geoccs.csv, pcs.csv, pcs.override.csv, prime_meridian.csv, projop_wparm.csv, unit_of_measure.csv, vertcs.csv, vertcs.override.csv |
| 28 | |
| 29 | == Backward compatibility issues == |
| 30 | |
| 31 | See MIGRATION_GUIDE.txt |
| 32 | |
| 33 | == GDAL/OGR 3.0.0 - General Changes == |
| 34 | |
| 35 | Build(Unix): |
| 36 | * Allow internal drivers to be disabled (#1250) |
| 37 | * Fix build with OpenBSD which doesn't support RLIMIT_AS (#1163) |
| 38 | * Fix MacOS build failures due to json-c |
| 39 | * Poppler: require pkg-config |
| 40 | * PostgreSQL: Switch from pg_config to pkg-config (#1418) |
| 41 | * fix build --without-lerc (#1224) |
| 42 | * fix netcdf_mem.h detection in netcdf 4.6.2 (#1328) |
| 43 | * Fix build --with-curl --without-threads (#1386) |
| 44 | |
| 45 | Build(Windows): |
| 46 | * nmake.opt: remove unicode character at line starting with '# 4275' that apparently cause build issues with some MSVC versions (#1169) |
| 47 | |
| 48 | All: |
| 49 | * PROJ >= 6.0 is a required external dependency |
| 50 | * libgeotiff >= 1.5 should be used for builds with external libgeotiff |
| 51 | * Poppler: drop support for Poppler older than 0.23.0 |
| 52 | * Poppler: add support for 0.72.0, 0.73.0, 0.75.0, 0.76.0 |
| 53 | |
| 54 | == GDAL 3.0.0 - Overview of Changes == |
| 55 | |
| 56 | Port: |
| 57 | * Add capability to define external VSI virtual file systems from C API (#1289) |
| 58 | * MiniXML: Fix wrong node order when calling CPLAddXMLAttributeAndValue() after CPLCreateXMLElementAndValue() |
| 59 | * /vsicurl/: ReadMultiRange(): use default implementation if there is a single range (#1206) |
| 60 | * /vsicurl/: ignore proxy CONNECT response headers (#1211) |
| 61 | * /vsicurl/: automatically detect signed URLs where host ends with a port number; also detect signed URLs as created with the AWS4-HMAC-SHA256 method (#1456) |
| 62 | * /vsizip/: Add config option to create zip64 extra fields by default (#1267) |
| 63 | * /vsis3/, /vsigs/, /vsiaz/: add HTTP retry logic in writing code paths |
| 64 | * Fix data race in VSIFileManager::Get |
| 65 | * cpl_zipOpenNewFileInZip3: fix memory leak in error code path. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13103. |
| 66 | * VSIGZipWriteHandleMT: avoid potential deadlock in case of error |
| 67 | * Fix assertion in CPLGetValueType when testing non-ASCII chars |
| 68 | * /vsihdfs/: fix Read() when more than one hdfsRead call is needed (#1349) |
| 69 | * Fix potential buffer overflow in CPLODBCSession::Failed (#1390) |
| 70 | * /vsitar/: handle .tar file header with space padding instead of 0 for file size (#1396) |
| 71 | |
| 72 | Core: |
| 73 | * Support blocks larger than 2 billion pixels/bytes |
| 74 | * Make CPLHaveRuntimeSSSE3() and CPLHaveRuntimeAVX() use GCC constructor functions |
| 75 | * Move RawDataset base class to gcore/ (#1268) |
| 76 | * RasterBand/Dataset::RasterIO(): enforce access mode on write |
| 77 | * PAM: preserve existing metadata when setting new one (#1430) |
| 78 | * RawDataset: use generic RasterIO() implementation when non-nearest resampling is asked (#1301) |
| 79 | * DumpJPK2CodeStream(): dump PLT and POC markers |
| 80 | |
| 81 | Algorithms: |
| 82 | * RPC transformer: test success code of GDALRPCTransform() in GDALCreateRPCTransformer() |
| 83 | * RPC transformer: add a RPC_FOOTPRINT transformer option to provide a polygon in long/lat space where the RPC is valid, and also make gdalwarp use GDALSuggestedWarpOutput2() to restrict the bounding box of the output dataset |
| 84 | * GDALFillNodata(): fix wrong comparison in QUAD_CHECK() macro: nNoDataVal is only assigned to target_y values (#1228) |
| 85 | * GDALFillNodata(): reinitialize panLastY array to nNoDataVal before bottom to top pass (#1228) |
| 86 | * GDALFillNodata(): do an extra iteration to reach the maximum search distance in all quadrants (#1228) |
| 87 | * GDALRasterizeLayersBuf():support any GDAL data type for buffer,and pixel and line spaceing arguments |
| 88 | * GDALResampleChunk32R_Mode: performance improvement |
| 89 | * Rasterize with MERGE_ALG=ADD: avoid burning several times intermediate points of linestrings (#1307) |
| 90 | * rasterize: fix crash when working buffer is larger than 2GB (#1338) |
| 91 | |
| 92 | Utilities: |
| 93 | * gdal_translate: add "-nogcp" option (#1469) |
| 94 | * gdal_contour: remove explicit width/precision=12/3 of the elev field (#1487) |
| 95 | * gdaldem hillshade: add -igor option (#1330) |
| 96 | * gdalwarp -crop_to_cutline: do not round computed target extent to be aligned on the grid of the source raster if -tr is set (restore partially pre 2.4 behaviour) (#1173) |
| 97 | * gdalwarp: assume -tap when using -crop_to_cutline, -tr and -wo CUTLINE_ALL_TOUCHED=TRUE, so as to avoid issues with polygons smaller than 1x1 pixels (#1360) |
| 98 | * gdal2tiles: give local tile layer and basemap layers same min/max zoom levels as generated tile cache |
| 99 | * gdal2tiles: fix breakage of openlayers.html getURL() javascript function, introduced in GDAL 2.3.3 / 2.4.0 (#1127) |
| 100 | * gdal2tiles: prevent accidental copy of full GeoTIFF into temporary .vrt file |
| 101 | gdal2tiles: Refactor and fix multiprocessing completion handling |
| 102 | * gdal_fillnodata.py: preserve color interpretation and table |
| 103 | * gdal_fillnodata.py: do not set geotransform if source doesn't have one |
| 104 | * gdalsrsinfo: do not silence errors when calling SetFromUserInput() |
| 105 | * gdal_retile: Use nodata value from origin dataset |
| 106 | * gdal_edit.py: allow setting band-specific scale and offset values (#1444) |
| 107 | * validate_cloud_optimized_geotiff.py: check if file is only greater than 512px (#1403) |
| 108 | * validate_cloud_optimized_geotiff.py: report headers size |
| 109 | |
| 110 | Multidriver fixes: |
| 111 | * GTiff, GPKG, MBTiles, PostgisRaster drivers: ensure that main dataset and overviews share the same lock, so as to avoid crashing concurrent access (#1488) |
| 112 | |
| 113 | ADRG driver: |
| 114 | * modified to ensure that there is no confliction between ADRG and SRP when opening a .gen file (#953) |
| 115 | |
| 116 | AIGRID / AVCBin: |
| 117 | * fix filename case adjustment that failed on /vsi filesystems (#1385) |
| 118 | |
| 119 | BAG driver: |
| 120 | * fix potential nullptr deref on corrupted file |
| 121 | |
| 122 | COSAR driver: |
| 123 | * avoid out-of-bound write on corrupted dataset. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12360. |
| 124 | |
| 125 | EEDA driver: |
| 126 | * report 'path' metdata in 'path' field |
| 127 | |
| 128 | GPKG driver: |
| 129 | * allow negative srs_id values in gpkg_spatial_ref_sys |
| 130 | * reduce memory requirements for cached tiles |
| 131 | |
| 132 | GTiff diver: |
| 133 | * supports tiles/strips larger than 2GB |
| 134 | * add APPEND_SUBDATASET=YES capability to create subdataset / new TIFF page to an existing file |
| 135 | * only report scale/offset deduced from ModelTiepointTag and ModelPixelScaleTag if the SRS has a vertical component (and thus currently if GTIFF_REPORT_COMPD_CS is set) (https://issues.qgis.org/issues/20493) |
| 136 | * TIFF Lerc: properly initialize state after Create() so that BuildOverviews() succeed (#1257) |
| 137 | * emit merged consecutive multi-range reads (#1297) |
| 138 | * add warnings when using unsupported combination of internal mask+external overview, and fix COPY_SRC_OVERVIEWS=YES so that it does not copy ALL_VALID masks (#1455) |
| 139 | * do not generate a TIFFTAG_GDAL_METADATA with color interpretation information for JPEG YCbCr compression |
| 140 | * Internal libtiff and libgeotiff: resync with upstream |
| 141 | |
| 142 | FITS driver: |
| 143 | * new functions for Scale Offset and FITS World Coordinate System read and write (#1298) |
| 144 | |
| 145 | GeoRaster driver: |
| 146 | * Fix memory leaks |
| 147 | |
| 148 | HDF5 driver: |
| 149 | * support reading blocks larger than 2GB |
| 150 | * fix handling of attributes of type SCHAR, UCHAR, USHORT and UINT (https://github.com/mapbox/rasterio/issues/1663) |
| 151 | * detect nodata from netCDF _FillValue (#1451) |
| 152 | * add more strict checks for accepting datasets for GCP, and handle nodata in GCP too (#1451) |
| 153 | |
| 154 | IGNFHeightAsciiGrid driver: |
| 155 | * add support for RAF18.mnt |
| 156 | |
| 157 | JPEG driver: |
| 158 | * fix GDAL 2.3.0 performance regression when decoding JPEG (or GPKG using JPEG) images (#1324) |
| 159 | |
| 160 | KEA driver: |
| 161 | * add support for /vsi file systems |
| 162 | |
| 163 | KMLSuperOverlay driver: |
| 164 | * report color table of single overlay datasets, and also handle some variation in the KML structure (https://issues.qgis.org/issues/20173) |
| 165 | |
| 166 | MRF driver: |
| 167 | * sparse index and internal resampling fixes |
| 168 | * fix integer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13974 |
| 169 | |
| 170 | MrSID driver: |
| 171 | * fix potential crash when a zoom level cannot be opened |
| 172 | |
| 173 | netCDF driver: |
| 174 | * implement support for NetCDF-4 groups on reading (#1180) |
| 175 | * support complex data types (#1218) |
| 176 | * fix crash when opening a dataset with an attribute of length 0 (#1303) |
| 177 | * fix IWriteBlock() to support non-scanline blocks, and use the chunk size |
| 178 | * better deal with datasets indexed with unusual order for x/y dimensions |
| 179 | * avoid inappropriate shift by -360 when attribute axis=X is set (#1440) |
| 180 | |
| 181 | NGW driver: |
| 182 | * Add CreateCopy function |
| 183 | |
| 184 | NITF driver: |
| 185 | * avoid harmless floating point division by zero. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12844. |
| 186 | |
| 187 | PCIDSK driver: |
| 188 | * avoid uint overflow and too big memory allocation attempt. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12893 |
| 189 | |
| 190 | PDF driver: |
| 191 | * Add a COMPOSITION_FILE creation option to generate a complex document |
| 192 | * And a gdal_create_pdf.py sample script |
| 193 | * Fix selection of Poppler PDF layers with duplicate names (#1477) |
| 194 | * avoid division by zero when generating from vector content whose bounding box is almost a horizontal or vertical line. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13408 |
| 195 | |
| 196 | PDS3: |
| 197 | * fix decoding of band interleaved images (such as for CRISM HSP) (#1239) |
| 198 | * add support for ENCODING_TYPE=DCT_DECOMPRESSED (#1457) |
| 199 | |
| 200 | PDS4 driver: |
| 201 | * add subdataset creation support, and getting/setting the band unit |
| 202 | * update template and code to PDS v1B00 schema versions |
| 203 | |
| 204 | VRT driver: |
| 205 | * Python pixel functions: add shared object name for python 3.7 |
| 206 | * VRT: in case of no SourceProperties, do not use global shared datasets, but only shared to the owning VRTDataset, to avoid potential reference cycles and annoying related issues. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13476. |
| 207 | |
| 208 | WCS driver: |
| 209 | * avoid potential out-of-bound access |
| 210 | |
| 211 | WMS driver: |
| 212 | * use proper JSon parsing for ESRI MapServer document (#1416) |
| 213 | * Add url parameters escaping to ArcGIS Server minidriver |
| 214 | * avoid warning when a wms cache doesn't exist |
| 215 | |
| 216 | XPM driver: |
| 217 | * fix read heap buffer overflow on corrupted image. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13455. |
| 218 | |
| 219 | XYZ driver: |
| 220 | * add creation options DECIMAL_PRECISION and SIGNIFICANT_DIGITS like with AAIGrid |
| 221 | * fix regression regarding header lines that are not X,Y,Z (#1472) |
| 222 | |
| 223 | == OGR 3.0.0 - Overview of Changes == |
| 224 | |
| 225 | Core: |
| 226 | * Add OGR_G_MakeValid() (requires GEOS 3.8) |
| 227 | * change prototye of OGRFeature::SetField( int iField, int nBytes, GByte *pabyData ) to ( ... , const void* pabyData), and same for OGR_F_SetFieldBinary(). |
| 228 | * Polyhedral surface: fix importFromWKT to properly fix Z/M flag |
| 229 | * OGRBuildPolygonFromLines: avoid generating effectively duplicate points |
| 230 | * OGRBuildPolygonFromEdges(): improve performance. https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13798 |
| 231 | * OGRGeometryFactory::transformWithOptions(): if WRAPDATELINE=YES, test that the geometry SRS is geographic |
| 232 | * OGRGeometryFactory::GetCurveParmeters(): fix assertion when coordinates are very near 0 |
| 233 | * Expat XML parsing: add OGR_EXPAT_UNLIMITED_MEM_ALLOC=YES config option to workaround failure for very specific cases |
| 234 | * OGRLineString::segmentize(): fix issues when segment length is divisible by maxlength (#1341) |
| 235 | * OGR SQL: limit recursion in swq_expr_node::Check(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13540 |
| 236 | * OGRGeometry / SFCGAL: fix dead code, memory leaks and potential nullptr deref. |
| 237 | |
| 238 | OGRSpatialReference: |
| 239 | * Deep rework due to RFC 73 integration |
| 240 | * SRS_WKT_WGS84 macro replaced by SRS_WKT_WGS84_LAT_LONG |
| 241 | * Add OSRSetPROJSearchPaths(), OSRExportToWktEx(), OSRGetName(), OSRIsSameEx(), OSRGetCRSInfoListFromDatabase(), OSRGetAreaOfUse(),OSRGetAxisMappingStrategy(), OSRSetAxisMappingStrategy(), OSRGetDataAxisToSRSAxisMapping() |
| 242 | * Add OCTNewCoordinateTransformationOptions(), OCTCoordinateTransformationOptionsSetOperation(), OCTCoordinateTransformationOptionsSetAreaOfInterest(), OCTDestroyCoordinateTransformationOptions(), OCTNewCoordinateTransformationEx(), OCTTransform4D() |
| 243 | * Remove OSRFixupOrdering(), OSRFixup(), OSRStripCTParms(), OCTProj4Normalize(), OCTCleanupProjMutex(), OPTGetProjectionMethods(), OPTGetParameterList(), OPTGetParameterInfo() |
| 244 | |
| 245 | Utilities: |
| 246 | * ogrinfo: report TITLE metadata in summary layer listing |
| 247 | * ogr2ogr: for drivers supporting ODsCCreateGeomFieldAfterCreateLayer, do not create geometry column if -nlt none |
| 248 | * ogrmerge.py: add shared='1' to speed-up -single mode with many layers |
| 249 | |
| 250 | CARTO driver: |
| 251 | * Overwrite tables in single transactions |
| 252 | * Improve documentation and warnings around CARTODBFY (#1445) |
| 253 | |
| 254 | CSW driver: |
| 255 | * fix crash when geometry parsing fails (#1248) |
| 256 | |
| 257 | DODS driver: |
| 258 | * fixes related to memory leaks and null pointer dereferences |
| 259 | |
| 260 | DXF driver: |
| 261 | * support RGB true color values |
| 262 | * fix the coloring of ByBlock entities inserted via a ByLayer INSERT |
| 263 | * fix double-free issue in case of writing error. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13516. |
| 264 | |
| 265 | FileGDB/OpenFileGDB drivers: |
| 266 | * be robust when winding order of outer ring is incorrect (#1369) |
| 267 | |
| 268 | Elasticsearch driver: |
| 269 | * Fixed index comparison bug when a index have at least one mapping |
| 270 | * Fix _mapping url for Elasticsearch 7 compatibility |
| 271 | |
| 272 | GeoJSON driver: |
| 273 | * speed-up random reading with GetFeature() by storing a map FID->(start,size) to retrieve performance similar to GDAL 2.2 or before (https://issues.qgis.org/issues/21085) |
| 274 | * report 3D layer geometry types (#1495) |
| 275 | |
| 276 | GeoJSONSeq driver: |
| 277 | * be more robust to invalid objects, and fixes performance issue on corrupted files. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13770. |
| 278 | |
| 279 | GML driver: |
| 280 | * write SRSName element in .gfs when parsing a GML file with srsName only on top-level boundedBy element (#1210) |
| 281 | * Add "FeatureType" to list of suffixes recognized by XSD parser (#1313) |
| 282 | * GML/WFS: add minimum support for 'hexBinary' type (as string) (#1375) |
| 283 | |
| 284 | GMLAS driver: |
| 285 | * avoid null pointer dereference on some schemas |
| 286 | * do not use space as separator for schema filename in XSD open option (#1452) |
| 287 | |
| 288 | GMT driver: |
| 289 | * use file extension based detection to accept files without header (#1461) |
| 290 | |
| 291 | MongoDB driver: |
| 292 | * fix releated to filters in GetFeature() |
| 293 | |
| 294 | MITAB driver: |
| 295 | * Add encode/decode feature labels to/from UTF-8 encoding while MIF file read/write (#1151) |
| 296 | * .tab: fix deleting a feature without geometry (#1232) |
| 297 | * adapt dynamically default projection bounds to false_easting/false_northing values (#1316) |
| 298 | * avoid potential assertion or stack buffer overflow on corrupted .ind files. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11999 |
| 299 | * prevent potential infinite recursion on broken indexes. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12739. |
| 300 | * TAB_CSLLoad(): fix performance issue. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13588 |
| 301 | * avoid long processing on corrupted .mif files. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13152 |
| 302 | |
| 303 | MSSQLSpatial driver: |
| 304 | * Add support for curve geometries (#1299) |
| 305 | * Add option to expose the FID column as a feature attribute (#1227) |
| 306 | * Adding improved extent queries |
| 307 | * Fix extent calculation for geography type, take care of invalid geometries |
| 308 | |
| 309 | NGW driver: |
| 310 | * Fix get children API. Add authorization support to create dataset options |
| 311 | * Add support for feature extensions in OGRFeature native data |
| 312 | * Add feature query via chunks, attribute and spatial filter support |
| 313 | * Add resource type and parent identifier to metadata |
| 314 | * Fix batch update features |
| 315 | * Add JSON_DEPTH open option |
| 316 | * Add check forbidden field names, check duplicate field names. |
| 317 | |
| 318 | OCI driver: |
| 319 | * Add MULTI_LOAD to open options (#1233) |
| 320 | * Fix memory leaks |
| 321 | |
| 322 | ODS driver: |
| 323 | * allow opening tables with empty cells with huge values of columns-repeated attribute at end of line (#1243) |
| 324 | * avoid potential null pointer dereference when writing to corrupted filename. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12976. |
| 325 | |
| 326 | OGDI driver: |
| 327 | * switch incorrect order for east/west bounds of spatial filter |
| 328 | |
| 329 | PDS4 driver: |
| 330 | * add read/write support for tables (vector support) |
| 331 | |
| 332 | PGDump driver: |
| 333 | * in WRITE_EWKT_GEOM=YES non-default mode, export geometries to ISO WKT so as to be able to export XYZM (#1327) |
| 334 | * Fix emitted SQL when UNLOGGED=ON |
| 335 | |
| 336 | PLScenes driver: |
| 337 | * update plscenesconf.json with SkySatCollect and add missing fields for PSOrthoTile |
| 338 | |
| 339 | SDTS driver: |
| 340 | * error out if too many errors are raised to avoid timeout in oss-fuzz. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13819. |
| 341 | |
| 342 | Selafin driver: |
| 343 | * avoid null pointer dereference on corrupted files. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12356. |
| 344 | |
| 345 | Shapefile driver: |
| 346 | * DeleteLayer(): make it delete .cpg, .sbn, .sbx, .qpj and other sidecar files (#1405) |
| 347 | * speed-up creation of lots of fields with name collisions. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13065 |
| 348 | |
| 349 | SQLite driver: |
| 350 | * set sqlite3_busy_timeout, handle SQLITE_BUSY during tile read (#1370) |
| 351 | * close database before freeing the spatialite context. Fix crashes on dataset closing, with VirtualShape and recent spatialite versions |
| 352 | * Spatialite: fix update of geometry_columns_statistics when extent goes to infinity (#1438) |
| 353 | |
| 354 | S57 driver: |
| 355 | * avoid long procession on corrupted datasets. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13238 |
| 356 | |
| 357 | SXF driver: |
| 358 | * Fix wrong EPSG codes range (#1278) |
| 359 | * Fix memory leaks in SetVertCS() |
| 360 | |
| 361 | VFK driver: |
| 362 | * fix curved geometries being ignored (#1351) |
| 363 | |
| 364 | WFS3 driver: |
| 365 | * handle paging wth missing type for rel:next, and better deal with user:pwd in URL |
| 366 | * use 'id' attribute of collection items, if 'name' not available |
| 367 | |
| 368 | == SWIG Language Bindings == |
| 369 | |
| 370 | All bindings: |
| 371 | * add Geometry::MakeValid() |
| 372 | |
| 373 | Python bindings: |
| 374 | * fix Dataset.ReadAsRaster() on CInt16 data type (#82) |
| 375 | * adding overviewLevel option to WarpOptions |
| 376 | * add noGCP options to gdal.Translate() |