| 1 | = GDAL/OGR 1.11.0 Release Notes = |
| 2 | |
| 3 | == In a nutshell... == |
| 4 | |
| 5 | * New GDAL drivers: |
| 6 | - [http://gdal.org/frmt_various.html#KRO KRO]: read/write support for KRO KOKOR Raw format |
| 7 | * New OGR drivers: |
| 8 | - [http://gdal.org/ogr/drv_cartodb.html CartoDB] : read/write support |
| 9 | - [http://trac.osgeo.org/gdal/wiki/GMEDriver GME (Google Map Engine)] : read/write support |
| 10 | - [http://gdal.org/ogr/drv_geopackage.html GPKG (GeoPackage)]: read-write support (vector part of the spec.) |
| 11 | - [http://gdal.org/ogr/drv_openfilegdb.html OpenFileGDB]: read-only support (no external dependency) |
| 12 | - [http://gdal.org/ogr/drv_sxf.html SXF]: read-only support |
| 13 | - [http://gdal.org/ogr/drv_walk.html WALK] : read-only support |
| 14 | - [http://gdal.org/ogr/drv_wasp.html WasP .map] : read-write support |
| 15 | * Significantly improved drivers: GML, LIBKML |
| 16 | * [http://trac.osgeo.org/gdal/wiki/rfc40_enhanced_rat_support RFC 40]: enhanced RAT support (#5129) |
| 17 | * [http://trac.osgeo.org/gdal/wiki/rfc41_multiple_geometry_fields RFC 41]: multiple geometry fields support |
| 18 | * [http://trac.osgeo.org/gdal/wiki/rfc42_find_laundered_fields RFC 42]: OGR Layer laundered field lookup |
| 19 | * [http://trac.osgeo.org/gdal/wiki/rfc43_getmetadatadomainlist RFC 43]: add GDALMajorObject::GetMetadataDomainList() (#5275) |
| 20 | * [http://trac.osgeo.org/gdal/wiki/rfc45_virtualmem RFC 45]: GDAL datasets and raster bands as virtual memory mapping |
| 21 | * Upgrade to EPSG 8.2 database |
| 22 | |
| 23 | == New installed files == |
| 24 | * bin/ogrlineref |
| 25 | * lib/pkgconfig/gdal.pc |
| 26 | * gdalcompare.py |
| 27 | * data/gml_registry.xml |
| 28 | * data/inspire_cp_CadastralParcel.gfs |
| 29 | * data/inspire_cp_BasicPropertyUnit.gfs |
| 30 | * data/inspire_cp_CadastralBoundary.gfs |
| 31 | * data/inspire_cp_CadastralZoning.gfs |
| 32 | * data/ruian_vf_ob_v1.gfs |
| 33 | * data/ruian_vf_st_v1.gfs |
| 34 | * data/ogrvrt.xsd |
| 35 | |
| 36 | == Backward compatibility issues == |
| 37 | |
| 38 | == GDAL/OGR 1.11.0 - General Changes == |
| 39 | |
| 40 | Build(Unix): |
| 41 | * add Unix configure support for SOSI |
| 42 | * remove pointers to old ver of ingres library files |
| 43 | * add --with-libjson-c configure option to build against external libjson-c (>= 0.11) (#4676) |
| 44 | * compilation fixes for iOS (#5197, #5198) |
| 45 | * update to autoconf 2.69 |
| 46 | * add pkg-config gdal.pc (#3470) |
| 47 | * configure for FileGDB: add explicit linking to libfgdbunixrtl (requires FileGDB SDK >= 1.2) (#5215); also try .dylib extension (#5221) |
| 48 | * fix so that Java installs are found on the MAC to enable the MDB driver (#5267) |
| 49 | * fix compilation with recent MySQL versions (5.6 for example) (#5284) |
| 50 | * support --with-jp2mrsid with standalone Kakadu with MRSID v8 or later |
| 51 | * Fix parallel build in Python bindings (#5346) |
| 52 | * PCIDSK: don't link against libjpeg if configured --without-jpeg |
| 53 | * Update configure script to pick up ECW JP2 SDK 5.1 (#5390) |
| 54 | * add a 'make install' target for the Java bindings (#5424) |
| 55 | * add Vagrant configuration |
| 56 | |
| 57 | Build(Windows): |
| 58 | * add option to generate VC project for x64 on makegdal_gen.bat |
| 59 | * nmake.opt: add WITH_PDB=1 option to optionaly generate .pdb file on Release builds (#5420) |
| 60 | * add support for building the OGR SOSI driver as a plugin (#3638) |
| 61 | * add support for building the HDF4 driver as plugin (#5294) |
| 62 | * add support for MrSID v9 |
| 63 | * Remove makegdalXX.bat generated files |
| 64 | |
| 65 | == GDAL 1.11.0 - Overview of Changes == |
| 66 | |
| 67 | Port: |
| 68 | * vsisubfile: fix Eof() behaviour to be POSIX compliant, so that the shapefile reader can read the last feature when using /vsitar (#5093) |
| 69 | * vsicache: fix for 32bit binaries when file size is over 2GB (#5170) |
| 70 | * vsicache: add optional nChunkSize and nCacheSize parameters to VSICreateCachedFile() |
| 71 | * vsicurl: add CPL_VSIL_CURL_USE_HEAD config option to disable use of CURL HEAD for other services like mapbox (likely lame python http implementations) |
| 72 | * vsitar: avoid infinite loop in case of invalid .tar structure |
| 73 | * vsizip: fix path separator in CPLFormFilename |
| 74 | * vsizip: allow additional extensions listed in CPL_VSIL_ZIP_ALLOWED_EXTENSIONS config option. |
| 75 | * vsizip: improve UTF-8 support of filenames inside ZIP file (#5361) |
| 76 | * vsizip: fix ZIP64 support |
| 77 | * vsigzip: reset EOF flag when doing a Seek() to be POSIX compliant |
| 78 | * curl: add .netrc support |
| 79 | * Windows CPLGetSymbol(): avoid dialog boxes to pop up when a DLL or one of its dependencies does not exist (#5211) |
| 80 | * Add CPLOPrintf() and CPLOvPrintf() functions for easy CPLString formatting |
| 81 | * CPLBase64DecodeInPlace() : fix to be robust to malformed base64 strings |
| 82 | * CPLQuadTree: add CPLQuadTreeInsertWithBounds() where the pfnGetBounds is not needed. |
| 83 | * CPLQuadTree: fix potential infinite recursion when inserting several points with identical coordinates in the mode with limited bucket size |
| 84 | * Protect concurrent calls to setlocale() by a mutex (#5366) |
| 85 | |
| 86 | Core: |
| 87 | * RFC 45: GDAL datasets and raster bands as virtual memory mapping |
| 88 | * GDALRasterBand::GetHistogram(): ignore nodata values (#4750, #5289) |
| 89 | * allow auto loading of drivers to be disabled via config option |
| 90 | * PAM .aux.xml and VRT: serialize Z component of a GCP as 'Z' attribute, |
| 91 | for consistency, instead of GCPZ that could not be read back previously. |
| 92 | In reading code, try reading 'Z' and if not found try 'GCPZ' (#5326) |
| 93 | * JPEG2000: Add GDALGeorefPamDataset and GDALJP2AbstractDataset classes and use them in JP2KAK, JP2ECW, JP2OpenJPEG, JPEG2000 and MrSID drivers so that PAM georeferencing consistently overrides internal georeferencing |
| 94 | * GDALDataset::IRasterIO(): don't use BlockBasedRasterIO() when INTERLEAVE=PIXEL if the request band count is just 1 |
| 95 | * CopyWholeRaster(): make default GDAL_SWATH_SIZE to 1/4 of GDAL_CACHEMAX instead of hard-coded value of 10 MB |
| 96 | * don't report empty RAT on GDALGetDefaultRAT() (#5232) |
| 97 | * modify GDALGCPsToGeotransform() to do the regression in normalized coordinates to make the math more stable. |
| 98 | * expose new GDALComposeGeoTransforms() function. |
| 99 | * GDALDefaultOverviews::HaveMaskFile(): avoid fetching .ovr file |
| 100 | * JPEG2000: Fix reading georeferencing from some JPEG2000 files with duplicated GeoTIFF JP2Box (#5249) |
| 101 | * Cleanup raster block mutex (#5296) |
| 102 | * Driver registration: move JPEG2000 (Jasper based) after MrSID JPEG2000 support |
| 103 | |
| 104 | Algorithms: |
| 105 | * warper: fix regression with lanczos resampling when yradius > xradius (#5058) |
| 106 | * warper: Make GDALCreateGenImgProjTransformer2() and GDALCreateGenImgProjTransformer3() fail when the creation of the reprojection transformer fails |
| 107 | * warper: Fix warping when input pixel size is too close to 0 (#5190) |
| 108 | * warper: revise formula of cubic resampling kernel, and a few optimizations (#5209) |
| 109 | * warper: added DST_METHOD and support for GCP and TPS dest |
| 110 | * warper: add support for DST_METHOD=RPC |
| 111 | * warper: fix mode and near resampling corner computation (#5311) |
| 112 | * warper: GDALGenImgProjTransform(): don't set panSuccess[i] to 1 in the middle of the function, if an intermediate transform before has set the flag to 0 |
| 113 | * warper: fix cutline blending (#5343) |
| 114 | * warper: Average/mode kernels: make them less sensitive to numerical precision issues (#5350) |
| 115 | * warper: Average/mode kernels: avoid 'holes' when the source coordinates are in a reversed order from the target coordinates (#5433) |
| 116 | * warper: provide prototypes and work around strict compiler requirements on some opencl platforms (#5400) |
| 117 | * RPC: fix for computation of adfGTFromLL (#5395) |
| 118 | * TPS: optimization for GCC x86_64 that make computation about twice faster with huge number of GCPs |
| 119 | * TPS: when using Armadillo to solve the coefficients, use solve(A,B) instead of inv(A)xB to faster resolution |
| 120 | * TPS: compute direct and inverse transformations in parallel when warping option NUM_THREADS or GDAL_NUM_THREADS config. options are set to > 1 |
| 121 | * Geoloc: fix wrong bilinear interpolation in GDALGeoLocTransform() (#5305) |
| 122 | * Geoloc: fail transformation of coordinates that is located on a nodata place of the geoloc array |
| 123 | * rasterize: preliminary support for MERGE_ALG=ADD for heatmaps |
| 124 | * gdal_grid: Add AVX optimized version of GDALGridInverseDistanceToAPower2NoSmoothingNoSearch |
| 125 | * fill_nodata: GDALFillNodata(): Fix use of uninitialized memory and integer overflows (#4010, #5203) |
| 126 | * rpc: Fix out-of-bounds read in RPC dem cubic interpolation |
| 127 | |
| 128 | Utilities: |
| 129 | * gdalinfo: add -listmdd and -mdd all options (#5275) |
| 130 | * gdal_translate: add a -exponent option to be used with -scale |
| 131 | * gdal_translate: fix output file naming scheme in gdal_translate -sds (#5119) |
| 132 | * gdal_translate: fix logic in detection non-gray color table level (#5245) |
| 133 | * gdal_translate: add a -norat option |
| 134 | * gdal_translate: don't add 0.1 when -scale is used with a dstmin equal to dstmax (usefull to generate a raster with uniform color, i.e. scaleRatio = 0) |
| 135 | * gdal_translate: use floor() to compute image coordinates from world coordinates when specifying -projwin (usefull when extracting from left or top of upper-left corner, which generate negative image coordinates) (#5367) |
| 136 | * gdaltindex: remove annoying warning 'Warning 1: Field location of width 255 truncated to 254' (#5121) |
| 137 | * gdaltindex: add -src_srs_name and -src_srs_format to go with MapServer RFC100; add also a -f and -lyr_name options to be able to create a non-shapefile tileindex |
| 138 | * gdalwarp: Fix segfault where metadata values weren't being nullchecked properly during conflict resolution (#5069) |
| 139 | * gdalwarp: honor -s_srs when using cutline (#5081) |
| 140 | * gdalwarp: copy nodata values from source to dest if -dstnodata is not given ; add option to not set dest nodata with -dstnodata None (#5087) |
| 141 | * gdalwarp: do not return a non-zero exit status for warnings |
| 142 | * gdalwarp: prevent from copying statistics metadata (#5319) |
| 143 | * gdal_rasterize: set the progress bar to 100% even when there's nothing to do |
| 144 | * gdal_grid: add support for diffferent types of geometries (#5341) |
| 145 | * gdal_grid: add -z_increase and -z_multiply options |
| 146 | * gdaldem: check that value of -z, -s, -az and -alt is numeric |
| 147 | * gdalbuildvrt: validate values of -srcnodata and -vrtnodata arguments |
| 148 | * gdal2tiles.py: Corrected OpenLayers code to reflect fix to geodetic resolution factor |
| 149 | * gdal2tiles.py: add --tmscompatible flag so as to produce 2 tiles at zoom level 0 in geodetic profile |
| 150 | * rgb2pct.py: Use python tempfile logic to avoid permissions issues with cwd (#5079) |
| 151 | * gdal_edit.py: add a -ro option for drivers refusing to use the dataset in update-mode. |
| 152 | * gdal_calc.py: add --allBands options (#5388) |
| 153 | * Add vsipreload.cpp that can be compiled as a shared library that can be LD_PRELOAD'ed as an overload of libc to enable VSI Virtual FILE API to be used with binaries using regular libc for I/O |
| 154 | * Add the wcs_virtds_params.py sample utility to be able to set the MapServer WCS virtual dataset parameters from a tileindex with rasters of mixed SRS (linked to MapServer RFC100) |
| 155 | * gdalcompare.py: move to scripts |
| 156 | * gdalcompare.py: ensure image dimensions match |
| 157 | * gdal_ls.py: Fix issue with UTF-8 characters |
| 158 | |
| 159 | Multi driver changes: |
| 160 | * JPEG2000 drivers: take into account PixelIsPoint in GeoJP2 boxes, and expose AREA_OR_POINT=Point (#5437) |
| 161 | * JP2KAK, JP2ECW, JP2OpenJPEG, JPEG2000 CreateCopy(): take into account AREA_OR_POINT=Point if present to write GeoJP2 box (#5437) |
| 162 | |
| 163 | AAIGRID: |
| 164 | * revert DECIMAL_PRECISION and add SIGNIFICANT_DIGITS to CreateCopy() (#3732) |
| 165 | |
| 166 | AIGRID: |
| 167 | * Turn off errors that can be triggered if the info has no VAT table related with this coverage (#3031) |
| 168 | |
| 169 | BAG driver: |
| 170 | * Recognise falseNorthing=10000000 as UTM South (#5152) |
| 171 | |
| 172 | DIMAP driver: |
| 173 | * fix memleak in error-code path |
| 174 | |
| 175 | DTED driver: |
| 176 | * Speed optimization to be more friendly with CPU cache in GDAL_DTED_SINGLE_BLOCK=YES mode |
| 177 | |
| 178 | ECW driver: |
| 179 | * fix crash in GDALDeregister_ECW() with ECW SDK 5 called from GDALDestroy() (#5214) |
| 180 | * fix issue with ECW_CLEVER optimization when nPixelSpace != sizeof eBufDataType (#5262) |
| 181 | |
| 182 | Envisat driver: |
| 183 | * implement more reliable way of extracting GCPs from Meris tie-points (#5423) |
| 184 | * add DEM corrections of TP-ADS products when present (#5423) |
| 185 | * workaround dateline discontinuity in GCPs so they can be used with GDAL warping transformers (#5423) |
| 186 | |
| 187 | ERS driver: |
| 188 | * fix wrong interpretation of RegistrationCellX/RegistrationCellY (#2612, #3056, #5075) |
| 189 | |
| 190 | GeoRaster driver: |
| 191 | * fix RPC support (#4038) |
| 192 | * fix read error when reading from pyramids (#5076) |
| 193 | * make regular table and secure file a default for RDT (#5127) |
| 194 | * fix error when reading NBIT pyramid levels (#5199) |
| 195 | * show the VAT as RAT (#5200) |
| 196 | * fix reading and writing of statistics metadata (#5237) |
| 197 | * add generate pyramid create options (#5288) |
| 198 | * fix incorrect geotransform interpretation when there is no SRS (#5323) |
| 199 | |
| 200 | GRASS driver: |
| 201 | * fix compilation issues for GRASS 7 |
| 202 | |
| 203 | GRIB driver: |
| 204 | * display temperature unit as deg Celcius in metadata (#3606) |
| 205 | |
| 206 | GTiff driver: |
| 207 | * when compiling against internal libtiff, in read-only mode, optimization to |
| 208 | avoid fetching the whole Strip/TileCounts and Strip/TileOffsets arrays |
| 209 | * add validation of source overview characteristics with COPY_SRC_OVERVIEWS (#5059) |
| 210 | * convert invalid TIFFTAG_RESOLUTIONUNIT=0 to 1(Unknown) (#5069) |
| 211 | * fix potential issues in gt_citation.cpp / CheckUTM() |
| 212 | * upgrade internal libtiff to latest CVS |
| 213 | * implement reading and writing of ICC profiles (#5246) |
| 214 | * make SetColorInterpretation() round-trip with GetColorInterpreation(); |
| 215 | read color interpretation from PAM if it exists (overrides internal tiff color interpretation); |
| 216 | set TIFFTAG_PHOTOMETRIC=PHOTOMETRIC_RGB if calling SetColorInterpretation() with R,G,B and no explicit PHOTOMETRIC creation option defined |
| 217 | * gt_wkt_srs.cpp: fix compilation with external libgeotiff. The file is dependant of quite a few CPL stuff, don't try to pretend otherwise |
| 218 | * implement GetVirtualMemAuto() for some formulations of TIFF files (RFC 45) |
| 219 | * fix reading a single-strip TIFF file where the single strip is bigger than 2GB (32bit builds only) (#5403) |
| 220 | * look for .tab file before .wld/.tfw |
| 221 | |
| 222 | GTX driver: |
| 223 | * Add nodata support (#4660) |
| 224 | |
| 225 | HDF4 driver: |
| 226 | * Skip "SceneLineNumber" table if present in the list of geolocation fields of |
| 227 | ASTER L1A dataset. |
| 228 | |
| 229 | HDF5 driver: |
| 230 | * add support for ODIM H5 georeferencing method (#5032) |
| 231 | * set SRS GEOGCS in all cases (reverts r25801 and closes #4160) |
| 232 | * support HDF5 NATIVE_SCHAR type, subdatsets without PAM (#5088) |
| 233 | * release all opened handles so the file is closed at dataset closing (#5103) |
| 234 | * better deal with dimensions of CSK-L1A HDF5 subdatasets (#4227) |
| 235 | * avoid segmentation fault when H5Sget_simple_extent_ndims() returns negative value (#5291) |
| 236 | |
| 237 | HFA driver: |
| 238 | * add minimally tested support for u2 and u4 data in basedata |
| 239 | * use direct binning for thematic layers and real instead of integer for values (#5066) |
| 240 | * add a HFA_COMPRESS_OVR config option to select whether to create compressed overviews (#4866) |
| 241 | * fix rewriting of statics in existing HFA file where base data value is 8-bit (#5175) |
| 242 | * implement re-writing existing histogram in HFA file, after raster editing (#5176) |
| 243 | * avoid segfaults when creating a Imagine dataset with an invalid WKT (#5258) |
| 244 | * expose color columns in RAT as Integer with values in range [0-255] instead of Real with values [0-1] (#5362) |
| 245 | * report histogram column as GFU_PixelCount instead of GFU_Generic (#5359) |
| 246 | * ensure histogram column written as float for HFA when using RAT API (#5382) |
| 247 | |
| 248 | Idrisi driver: |
| 249 | * Improve coordinate system handling and min/max statistics (#4980) |
| 250 | |
| 251 | IRIS driver: |
| 252 | * add height information on bands; rename dataset metadata item CAPPI_HEIGHT --> CAPPI_BOTTOM_HEIGHT (#5104) |
| 253 | * IRIS: add support for two bytes data (#5431) |
| 254 | |
| 255 | JP2ECW driver: |
| 256 | * fix problem with JP2 write with SDK v5 |
| 257 | * fix issue with ECW_CLEVER optimization when nPixelSpace != sizeof eBufDataType (#5262) |
| 258 | * avoid writing dummy GeoJP2 box when source dataset has no georeferencing (#5306) |
| 259 | |
| 260 | JP2KAK driver: |
| 261 | * preliminary support for Kakadu V7.x |
| 262 | * fix creation of unsigned int16 with reversible compression (#4050) |
| 263 | * on Windows, use VSI cache for I/O by default, instead Kakadu own I/O layer |
| 264 | * remove extension from 12bit to 16bit (#5328) |
| 265 | |
| 266 | JP2OpenJPEG driver: |
| 267 | * avoid 'Empty SOT marker detected: Psot=12.' warning to be repeated several times |
| 268 | * add support for encoding GCPs in a GeoJP2 box (#5279) |
| 269 | * avoid writing dummy GeoJP2 box when source dataset has no georeferencing (#5306) |
| 270 | |
| 271 | JPEG driver: |
| 272 | * add autodetection of bitmasks that are msb ordered (#5102) |
| 273 | * avoid memory leak when GDALOpen'ing() a JPEG through a http:// URL, and make it possible to access its overviews |
| 274 | * return YCbCrK raw data for YCbCrK JPEG in GDAL_JPEG_TO_RGB = NO mode (instead of CMYK as before) (#5097) |
| 275 | * implement reading and writing of ICC profiles (#5246) |
| 276 | * internal libjpeg: apply patch for CVE-2013-6629 |
| 277 | * allow fallback to PAM to read GCPs |
| 278 | * give priority to PAM GeoTransform if it exists and other source of geotransform (.wld, .tab) also exists (#5352) |
| 279 | |
| 280 | KMLSuperOverlay driver: |
| 281 | * recognize an alternate structure for raster KMZ file made of a single doc.kml |
| 282 | and tiles whose name pattern is kml_image_L{level}_{j}_{i}.{png|jpg} |
| 283 | * fix horrible speed performance in Open() (#5094) |
| 284 | * fix crash at dataset closing and inability to read some big PNG tiles (#5154) |
| 285 | * fix to generate files validating against OGC KML 2.2 schema |
| 286 | * put Style into conformity with ATC 7 |
| 287 | * remove Region in root KML (ATC 41) |
| 288 | * add NAME and DESCRIPTION creation options; read them back as metadata |
| 289 | * add ALTITUDE and ALTITUDEMODE creation options |
| 290 | * directly write into .kmz file (instead of in temporary location) |
| 291 | * correctly write directories entry in .kmz file |
| 292 | * add progress callback |
| 293 | |
| 294 | L1B driver: |
| 295 | * report correct values for GCP (#2403) |
| 296 | * report more GCPS than before |
| 297 | * implement geolocation array |
| 298 | * add fetching of record metadata in .csv file |
| 299 | * add subdatasets with solar zenith angles, cloud coverage |
| 300 | * recognize NOAA-9/14 datasets whose dataset name in TBM header is encoded in EBCDIC and not in ASCII (#2848) |
| 301 | * support opening a few NOAA <= 9 datasets that have no dataset name in the TBM header |
| 302 | |
| 303 | LCP driver: |
| 304 | * better handling of projections (#3255) |
| 305 | * add CreateCopy() (#5172) |
| 306 | |
| 307 | MBTiles driver: |
| 308 | * avoid failure when there's no tile at the center of the maximum zoom level (#5278) |
| 309 | |
| 310 | MEM driver: |
| 311 | * Create(): use calloc() instead of malloc()+memset() for faster creation of huge in-memory datasets |
| 312 | |
| 313 | NetCDF driver: |
| 314 | * fix to read netcdf-4 files with UBYTE data (#5053) |
| 315 | * fix reading large netcdf-4 files with chunking and DEFLATE compression |
| 316 | * fix netcdf chunking when creating file with > 2 dims ; add CHUNKING creation option (#5082 ) |
| 317 | * fix duplicate nodata metadata when using CreateCopy() (#5084) |
| 318 | * fix copying large metadata in netcdf driver (#5113) |
| 319 | * fix netcdf geotransform detection (#5114) |
| 320 | * fix netcdf driver irregular grids management (#5118 and #4513) |
| 321 | * only call nc_close on a valid netcdf id when closing dataset |
| 322 | * try and identify .grd (and .nc3) files in netcdf-4 format (#5291), so they are identified before the hdf5 driver |
| 323 | |
| 324 | NITF driver: |
| 325 | * fix to support reading horizontal and/or vertical mono-block uncompressed images, even when the number of columns is <= 8192 (#3263) |
| 326 | * update NITF Series list with new entries from MIL-STD-2411_1_CHG-3.pdf (#5353) |
| 327 | * allow JP2KAK to be used as the JPEG2000 compression engine in the CreateCopy() case (#5386) |
| 328 | |
| 329 | PDF driver: |
| 330 | * Avoid reporting a Poppler error as a GDAL error on some newer USGS GeoPDF files (#5201) |
| 331 | * PDF writing: automatically adjust DPI in case the page dimension exceeds the 14400 maximum value (in user units) allowed by Acrobat (#5412) |
| 332 | |
| 333 | PDS driver: |
| 334 | * Parse correctly MISSING_CONSTANT = 16#FF7FFFFB# as a IEEE754 single precision float expressed in hexadecimal; add support for ENCODING_TYPE = ZIP (data file compressed in a ZIP); recognize IMAGE_MAP_PROJECTION as an object included in UNCOMPRESSED_FILE object (#3939) |
| 335 | |
| 336 | PNG driver: |
| 337 | * Implement reading and writing of ICC profiles (#5246) |
| 338 | |
| 339 | PostgisRaster driver: |
| 340 | * Speed-up dataset opening (#5046). |
| 341 | * Multi-tile multi-band caching added. |
| 342 | * Smarter use of the information advertized in raster_columns view. |
| 343 | * Avoid full table scan in situations without PKID/GIST indices. |
| 344 | * Use of quadtree. |
| 345 | |
| 346 | Rasdaman driver: |
| 347 | * caching of tiles for datasets with more than one band (#5298) |
| 348 | * connections are now kept for a whole session (#5298) |
| 349 | * fixing connection-string regex (#5298) |
| 350 | * fixing possible memory leaks (#5298) |
| 351 | |
| 352 | Rasterlite driver: |
| 353 | * fix resolution check typo in rasterlite driver |
| 354 | |
| 355 | Raw drivers: |
| 356 | * implement GetVirtualMemAuto() (RFC 45) |
| 357 | * IRasterIO(): add special behaviour to avoid going to block based IO when the dataset has INTERLEAVE=PIXEL and is elligible to direct I/O access pattern |
| 358 | * allow direct I/O access even if a small proportion of scanlines are loaded (improve QGIS use case where the overview display will load sparse scanlines, which would prevent direct I/O at full resolution afterwards) |
| 359 | * fix optimized RasterIO() when doing sub-sampling with non standard buffer pixel offset (#5438) |
| 360 | |
| 361 | RMF driver: |
| 362 | * fix decompression of 24-bit RMF DEM (#5268) |
| 363 | |
| 364 | RPFTOC driver: |
| 365 | * fix potential crash on some datasets when selecting the color palette (#5345) |
| 366 | |
| 367 | SAGA driver: |
| 368 | * add read/write support for .prj files (#5316) |
| 369 | |
| 370 | SRP driver: |
| 371 | * read TRANSH01.THF file to establish subdatasets (#5297) |
| 372 | |
| 373 | VRT driver: |
| 374 | * Implement non-linear scaling with a power function (addition of Exponent, SrcMin, SrcMax, DstMin, DstMax sub-elements in <ComplexSource>) |
| 375 | * Preserve 64bit integer image offsets (#5086) |
| 376 | * Make sure that VRTSourcedRasterBand::AddMaskBandSource() takes into account specified window (#5120) |
| 377 | * Make GDALAutoCreateWarpedVRT() return NULL when GDALSuggestedWarpOutput() fails |
| 378 | * VRTDataset::IRasterIO(): use source DatasetRasterIO even if band count is 1 |
| 379 | * VRTWarped: avoid setting up relative paths for things that aren't file-like |
| 380 | * make relativeToVRT=1 work with NITF_IM:, NETCDF:, HDF5:, RASTERLITE: |
| 381 | |
| 382 | WCS driver: |
| 383 | * ensure C locale is enforced before parsing floating point values |
| 384 | |
| 385 | WMS driver: |
| 386 | * accept 'WMS:http://server/?SRS=EPSG:XXXX' syntax to select the preferred SRS in which to fetch layers |
| 387 | * CPLHTTPFetchMulti(): avoid doing a timeout-only select when there are no file descriptor to wait on (can happen when doing a file:// URL) |
| 388 | * allow cache location to be specified with GDAL_DEFAULT_WMS_CACHE_PATH configuration option if not provided in the XML (#4540) |
| 389 | * Update to be able to understand slight changes in formatting of JSon output of ArcGIS mapserver protocol |
| 390 | |
| 391 | XYZ driver: |
| 392 | * accept datasets that have missing values at beginning and/or end of lines, such as MNT250_L93_FRANCE.XYZ |
| 393 | * fix detection when there are only integral values with comma field separator |
| 394 | * reopen with 'rb' flags for Windows happyness |
| 395 | |
| 396 | == OGR 1.11.0 - Overview of Changes == |
| 397 | |
| 398 | Core: |
| 399 | * GEOS support: require GEOS >= 3.1.0 and use the _r API of GEOS to avoid issues with the global GEOS error handlers |
| 400 | * exportToWkb(): ISO WKB generation with wkbVariant option (#5330) |
| 401 | * geocoding: when getting several answers from server for a query, report geometries on second, third, etc.. feature, and not only first one (#5057) |
| 402 | * allow auto loading of drivers to be disabled via config option |
| 403 | * remove obsolete OGRGeometryFactory::getGEOSGeometryFactory() |
| 404 | * OGRGeometryFactory::organizePolygons() in DEFAULT method: fix a case with 2 outer rings that are touching by the first point of the smallest one |
| 405 | * OGRGeometryFactory::organizePolygons(): optimization in ONLY_CCW case |
| 406 | * OGRGeometryFactory::organizePolygons(): Add an experimental mode : CCW_INNER_JUST_AFTER_CW_OUTER |
| 407 | * OGRLineString::segmentize() : don't set 0 as z for interpolated points, but the z from the previous point |
| 408 | * OGRLineString::setNumPoints() : add an optional argument to avoid zeroizing the arrays |
| 409 | * Add OGRLineString::setZ() |
| 410 | * Add OGRLineString::Project() and OGRLineString::getSubline() |
| 411 | * OGRPolygon: add stealExteriorRing() and stealInteriorRing(int iRing) |
| 412 | * OGRLinearRing::isClockwise(): optimizations and make it work in a degenerated case when a vertex is used several times in the vertex list (#5342) |
| 413 | * OGRLinearRing::isPointOnRingBoundary() : optimizations and take into account bTestEnvelope |
| 414 | * Add OGR_G_SetPointCount and OGR_G_SetPoints functions to API C (#5357) |
| 415 | * OGREnvelope3D::Contains(): fix incorrect test |
| 416 | * Layer algebra: fix handling of method field mapping to output fields when output fields are precreated (#5089) |
| 417 | * Layer algebra: when an error condition is skipped, call CPLErrorReset() (#5269) |
| 418 | * OGRLayer::GetFeature(): make sure that the behaviour is not influenced by |
| 419 | attribute or spatial filters in the generic implementation; |
| 420 | upgrade OGDI, PG, MySQL, MSSQLSpatial, OCI, SDE, PGeo, ODBC, WALK, IDB, SQLite and Ingres driver (#5309) |
| 421 | * introduce OGRLayer::FindFieldIndex() / OGR_L_FindFieldIndex() to lookup potentially laundered field names (RFC 42) |
| 422 | * OGR SQL: upgrade to support RFC 41 (multiple geometry fields) |
| 423 | * OGR SQL: more stricter checks |
| 424 | * OGR SQL: make parsing error report a usefull hint where the syntax error occured |
| 425 | * OGR SQL: fix thread-safety of swq_op_registrar::GetOperator() (#5196) |
| 426 | * OGR SQL: support not explicitely specifying AS keyword for aliasing a column spec |
| 427 | * OGR SQL: don't call CONCAT(a_column ...) or SUBSTR(a_column ...) as a_column |
| 428 | * OGR SQL: validate that arguments of MAX, MIN, AVG, SUM, COUNT are columns and not any expression since this is not supported |
| 429 | * OGR SQL: make AVG field definition a OFTReal |
| 430 | * OGR SQL: implement MIN(), MAX() and AVG() on a date (#5333) |
| 431 | * OGR SQL: fix SELECT * on a layer with a field that has a dot character (#5379) |
| 432 | * SQL SQLITE dialect: Make it available to all OGR drivers that have a specialized ExecuteSQL() implementation |
| 433 | |
| 434 | OGRSpatialReference: |
| 435 | * Upgrade to EPSG 8.2 database |
| 436 | * identify LCC_2SP instead of LCC_1SP if lat_0==lat_1 and lat_2 is present (#5191) |
| 437 | * add a variety of linear units to proj4 parsing (#5370) |
| 438 | * Fix crash in CleanupESRIDatumMappingTable() if it is called twice (#5090) |
| 439 | * fix order of AXIS and UNIT nodes in a VERT_CS node (#5105) |
| 440 | * ecw_cs.wkt: add missing TOWGS84[-168,-60,320,0,0,0,0] to NTF datum (#5145) |
| 441 | * fix OGRSpatialReference::importFromProj4() to work with non-C locale (#5147) |
| 442 | * morph central_latitude to latitude_of_origin in morphFromESRI() (#3191) |
| 443 | * OGRProj4CT: avoid using proj when the 2 projections are actually identical (#5188) |
| 444 | * add sanity checks in OGR_SRSNode::importFromWkt() (#5193) |
| 445 | * VERT_CS: when importing from proj.4 put AXIS node after UNIT; COMPD_CS: when importing from EPSG:x+y, set a more meaningfull name for the COMPD_CS node |
| 446 | * OGRSpatialReference::Validate() : in addition to hand-validation, use WKT grammar from OGC 01-009 CT |
| 447 | * preserve authority when importing +init=auth_name:auth_code (e.g. +init=IGNF:LAMB93) |
| 448 | |
| 449 | Utilities: |
| 450 | * ogrlineref: new utility to deal with linear geometries. |
| 451 | * ogrinfo: upgrade to support RFC 41 (multiple geometry fields) |
| 452 | * ogr2ogr: upgrade to support RFC 41 (multiple geometry fields) |
| 453 | * ogr2ogr: bump default value for -gt from 200 to 20000 (#5391) |
| 454 | * ogr2ogr: add -addfields option to add new fields found in a source layer into an existing layer ; add -unsetFieldWidth option to unset field with and precision; add -dim layer_dim option to force the coordinate dimension of geometries to match the one of the layer geometry type |
| 455 | * ogr2ogr: Check that -t_srs is also specified when -s_srs is specified |
| 456 | * ogr2ogr: add an explicit error message to report FID of feature that couldn't be inserted when CreateFeature() fails |
| 457 | * ogr2ogr: make relaxed lookup optional and add a switch -relaxedFieldNameMatch to allow it (RFC 42) |
| 458 | * ogr2ogr: make sure that the progress bar reaches 100% when converting OSM |
| 459 | * ogr2ogr: make sure that target dataset is properly closed when a CreateFeature() fails (so that truncated shapefiles have their header file properly updated) |
| 460 | * ogr_dispatch.py: Sample Python script to dispatch features into layers according to the value of some fields or the geometry type |
| 461 | * ogrinfo.py: sync with ogrinfo (RFC 41) |
| 462 | * ogr2ogr.py: port -nlt PROMOTE_TO_MULTI option from ogr2ogr.cpp (#5139) |
| 463 | |
| 464 | CSV driver: |
| 465 | * avoid erroneously reset of file content when opening in update mode a file without header (#5161) |
| 466 | * upgrade to support RFC 41 in read/write (multiple geometry fields) |
| 467 | * allow backslash doublequote to load (#5318) |
| 468 | |
| 469 | DGN driver: |
| 470 | * DGN writing: added polygon inner ring (holes) writing and MSLink writing (#5381) |
| 471 | |
| 472 | DXF driver: |
| 473 | * fix writing of 25D linestring where z is not constant (#5210) |
| 474 | * fix writing of POLYLINE objects (#5217, #5210) |
| 475 | * accept reading files starting with a TABLES section (#5307) |
| 476 | * support reading 3DFACE and SOLID (#5380) entities |
| 477 | * fix an error when processing clockwise circle arc (#5182) |
| 478 | * avoid building an invalid polygon when edges cannot be reassembled: turn it into a multilinestring |
| 479 | * use CPLAtof() instead of atof() to avoid issues with locales |
| 480 | * fix linear approximation of circular and elliptic arc in HATCH boundaries (#5182) |
| 481 | |
| 482 | DWG driver: |
| 483 | * add support for reading AcDb3dPolyline (#5260) |
| 484 | * fix linear approximation of circular and elliptic arc in HATCH boundaries (#5182) |
| 485 | |
| 486 | FileGDB driver: |
| 487 | * implement IgnoreFields API to speed-up a bit the conversion of a sub-set of fields when there's a huge amount of them (e.g. Tiger database). |
| 488 | * when writing <Length> of an attribute, use size in bytes (#5192) |
| 489 | * implement ref counting of the FileGDB SDK API' Geodatabase* object to avoid issues on Linux 64bit with interleaved opening and closing of databases (#4270) |
| 490 | * honour update flag to determine which operations are allowed or not |
| 491 | * add a driver global mutex to protect all calls as the FileGDB API SDK is not thread-safe at all |
| 492 | * add a COLUMN_TYPES layer creation option to override default column types; support reading/writing XML column types |
| 493 | * optimize GetFeatureCount() and GetExtent() when there are filters set |
| 494 | * set the default width for string fields to 65536. |
| 495 | The width can be configured with the FGDB_STRING_WIDTH configuration option |
| 496 | * fix creation and writing of Binary fields; enable reading |
| 497 | * add a CREATE_MULTIPATCH creation option |
| 498 | |
| 499 | FME driver: |
| 500 | * fix Linux compilation |
| 501 | |
| 502 | GeoJSON driver: |
| 503 | * recognize alternate formats such as the ones of https://code.google.com/p/election-maps/ |
| 504 | * add read support for TopoJSON |
| 505 | * upgrade internal libjson-c to json-c 0.11 (#4676) |
| 506 | * report integer values that are int64 as strings |
| 507 | * add 3d support to esri geojson reader (#5219) |
| 508 | * be less strict on looking for esri field type tag (#5219) |
| 509 | * fix sometimes incorrect result (significant digit losts...) when using -lco COORDINATE_PRECISION=0 |
| 510 | * fix handling of huge coordinates when writing (#5377) |
| 511 | |
| 512 | GeoRSS driver: |
| 513 | * advertize OLCCreateField capability |
| 514 | |
| 515 | GFT driver: |
| 516 | * switch http to https for the oauth2 link to improve security |
| 517 | |
| 518 | GML driver: |
| 519 | * add support for multiple geometry columns (RFC 41) |
| 520 | * add support for reading Finnish National Land Survey Topographic data (MTK GML) |
| 521 | * add support for support Finnish NLS cadastral data and Inspire cadastral data. |
| 522 | * add support for Czech RUIAN VFR format |
| 523 | * add data/gml_registry.xml file to associate feature types with schemas. |
| 524 | * extend .gfs syntax to be able to fetch OGR fields from XML attributes. |
| 525 | * extend .gfs syntax to support multiple geometry columns, and define a geometry property name |
| 526 | * autodiscover all XML attributes as OGR fields when creating .gfs file if GML_ATTRIBUTES_TO_OGR_FIELDS is set to YES (#5418) |
| 527 | * allow the <ElementPath> in .gfs to have several components that give the full XML path |
| 528 | * fix writing of .xsd file to avoid fid/gml_id being written as regular fields (#5142) |
| 529 | * fix writing of global srsName attribue on the global boundedBy.Envelope when all layers have same SRS (#5143) |
| 530 | * support for writing .gml/.xsd with fields of type StringList, RealList, IntegerList and support for parsing such .xsd files |
| 531 | * when writing .xsd for a datasource that has fields of type StringList, RealList or IntegerList, advertize SF-1 profile in the .XSD schema |
| 532 | * recognize xsd:boolean in XSD parsing and map it to String (#5384) |
| 533 | * add STRIP_PREFIX and WRITE_FEATURE_BOUNDED_BY dataset creation option to help minimizing the size of GML files |
| 534 | * don't write top <gml:boundedBy> in GML files with multiple layers of different SRS |
| 535 | * fix segfault when reading a GML file with huge coordinates (#5148) |
| 536 | * avoid opening our own .xsd files as valid datasources (#5149) |
| 537 | * make driver thread-safe with Xerces |
| 538 | * open successfully GML datasources with 0 layers (#249, #5205) |
| 539 | * fix tweaking of DescribeFeatureType requests |
| 540 | * support reading WFS 2.0 GetFeature documents with wfs:FeatureCollection as a wfs:member of the top wfs:FeatureCollection |
| 541 | * fix for crash on certain xlink:href with GML_SKIP_RESOLVE_ELEMS=NONE (#5417) |
| 542 | * GML geometry: fix duplicated points in GML_FACE_HOLE_NEGATIVE=YES mode (TopoSurface) (#5230) |
| 543 | * GML geometry: accept CompositeSurface as a child of surfaceMembers (#5369) |
| 544 | * GML geometry: join multilinestrings to linestrings in rings |
| 545 | * GML geometry: correctly deal with MultiSurface of Surface of PolygonPatch where a PolygonPatch has only interior ring(s) and no exterior ring (#5421) |
| 546 | * GML geometry: accept formulations of 'MULTIPOINT EMPTY, MULTILINESTRING EMPTY, MULTIPOLYGON EMPTY and GEOMETRYCOLLECTION EMPTY that are valid GML 3 (and accepted by PostGIS) |
| 547 | * GML geometry: make use of cs, ts and decimal attributes of (deprecated) gml:coordinates element |
| 548 | * GML geometry: accept XML header and comments |
| 549 | |
| 550 | GPX driver: |
| 551 | * advertize OLCCreateField capability |
| 552 | |
| 553 | ILI driver: |
| 554 | * add support for multiple geometry columns (RFC 41) |
| 555 | * use IlisMeta model reader/writer instead of IOM |
| 556 | * add layers for surface and area geometries |
| 557 | |
| 558 | KML driver: |
| 559 | * output KML that validates the ogckml22.xsd schema by placing <Schema> elements under the <Document> level (#5068) |
| 560 | * in writing mode, avoid defining an extending schema for the name and description fields (related to #5208) |
| 561 | |
| 562 | LIBKML driver: |
| 563 | * various checks, fixes and improvements related to OGC KML 2.2 Abstract Test Suite |
| 564 | * add support for reading <gx:Track> as a LINESTRING (#5095) |
| 565 | * add support for writing and reading <snippet> |
| 566 | * add support for writing atom:author, atom:link, phonenumber, Region, |
| 567 | ScreenOverlay, 3D model, StlyeMap |
| 568 | * add support for reading and generating Camera object |
| 569 | * add layer creation options to generate a LookAt element at layer level |
| 570 | * if UPDATE_TARGETHREF dataset creation option is defined, a NetworkLinkControl/Update document will be created |
| 571 | * add dataset creation options to generate a NetworkLinkControl element |
| 572 | * add dataset and layer creation options LISTSTYLE_ICON_HREF and LISTSTYLE_TYPE |
| 573 | * add support for writing a NetworkLink |
| 574 | * add support for creating PhotoOverlay objects |
| 575 | * add support for creating BalloonStyle elements |
| 576 | * offer LIBKML_USE_SIMPLEFIELD configuration option can be set to NO to use Data element instead of SimpleField |
| 577 | * add layer creation option FOLDER to optionally write layers as Folder instead of Document |
| 578 | * add dataset and layer creation options NAME, VISIBILITY, OPEN, SNIPPET and DESCRIPTION |
| 579 | * workaround bugs in pretty serializers |
| 580 | * when writing a .kmz file, put layers .kml docs into a layers/ subdirectory |
| 581 | * fix mem leaks, and use after free in kml2FeatureDef() (#5240) |
| 582 | * create document with default namespace set to http://www.opengis.net/kml/2.2 |
| 583 | * when writing, consider empty strings as unset (usefull when converting from CSV) |
| 584 | * don't write empty <Style /> element if OGR_STYLE is empty string |
| 585 | * transform multigeometry with one single component into single geometry |
| 586 | * create libkml/ subdirectory entry in .kmz |
| 587 | |
| 588 | MITAB driver: |
| 589 | * support reading MIF file with no associated MID file (when MIF file advertizes 'Columns 0') (#5141) |
| 590 | |
| 591 | MSSQLSpatial driver: |
| 592 | * Fix MSSQL to be aware of removed tables (#5071) |
| 593 | * Eliminate the per table server access when identifying the spatial reference (#5072) |
| 594 | * Improve detection of geometry column with MSSQL select layer (#4318) |
| 595 | * Fix for an issue with multicolumn primary keys (#5155) |
| 596 | * Add support for handling non spatial data tables (#5155) |
| 597 | * Fix creation of spatial_ref_sys and geometry_columns tables (#5339) |
| 598 | |
| 599 | MySQL: |
| 600 | * robustness for huge coordinates in spatial filter |
| 601 | |
| 602 | NAS driver: |
| 603 | * also accept XML files that have NAS-Operationen_optional.xsd in header |
| 604 | * make driver thread-safe with Xerces |
| 605 | * warn when geometry cannot be saved |
| 606 | |
| 607 | OCI driver: |
| 608 | * fix make plugin option |
| 609 | |
| 610 | ODBC driver: |
| 611 | |
| 612 | OSM driver: |
| 613 | * support relations with more than 2000 members in a OSM XML file (#5055) |
| 614 | * make the driver work with PBF files produced by osmconvert. |
| 615 | * osmconf.ini: report the waterway attribute for the lines layer (#5056) |
| 616 | * add an option in osmconf.ini to enable creating a 'all_tags' field, combining both fields specificaly identified, and other tags |
| 617 | * always use quoting of key/values in other_tags field (#5096) |
| 618 | * use alternative implementation of FindNode() that is a bit more efficient when process is CPU-bound |
| 619 | * fix issue with attribute filtering |
| 620 | * avoid GetNextFeature() to be blocked in certain conditions in non-interleaved mode (#5404) |
| 621 | |
| 622 | PG driver: |
| 623 | * upgrade to support RFC 41 in read/write (multiple geometry fields) |
| 624 | * use ST_Estimated_Extent() on table layers if GetExtent() is called with force = 0 (#5427) |
| 625 | * add a OGR_TRUNCATE configuration option (#5091) |
| 626 | * let postgres name the constraints to avoid long name truncation resulting in conflicts (#5125) |
| 627 | * map PG 'numeric' to OFTReal instead of OFTInteger |
| 628 | * retrieve SRID from geometry value, if not found in geometry_columns (#5131) |
| 629 | * fix ResolveSRID() when the current user has no select rights on geometry_columns table (#5131) |
| 630 | * fix retrieval of SRID on a table without SRID constraint, and when the datasource is opened with ' tables=fake' (#5131) |
| 631 | * robustness for huge coordinates in spatial filter |
| 632 | * fix delete layer bug on PG 2.0 (#5349) |
| 633 | * fix to be able to detect version of EntrepriseDB (#5375) |
| 634 | * Fix UTF-8 encoded string length |
| 635 | |
| 636 | PGDump driver: |
| 637 | * upgrade to support RFC 41 (multiple geometry fields) |
| 638 | * fix error when inserting a string that has backslash in it with PostgreSQL >= 9.1 (#5160) |
| 639 | |
| 640 | REC driver: |
| 641 | * fix runtime compatibility for Windows |
| 642 | |
| 643 | Shapefile driver: |
| 644 | * fix buffer overflow when creating a field of type Integer with a big width (#5135) |
| 645 | * delete temporary .cpg file earlier in REPACK |
| 646 | * fix leak of file descriptor in error code paths |
| 647 | * speed optimizations when reading geometries from .shp (#5272) |
| 648 | * add a 2GB_LIMIT=YES layer creation option (and SHAPE_2GB_LIMIT configuration option) |
| 649 | * .sbn support: increase allowed max depth from 15 to 24 (#5383) |
| 650 | |
| 651 | SOSI driver: |
| 652 | * fix memory leaks, and crashes |
| 653 | * advertize OLCCreateField capability |
| 654 | |
| 655 | S57 driver: |
| 656 | * make the driver thread-safe |
| 657 | * remove use of MAX_CLASSES in favor of dynamic sizing (#5227) |
| 658 | * fix GetFeature() on DSID layer |
| 659 | |
| 660 | SQLite/Spatialite driver: |
| 661 | * Make SQLite SQL dialect compatible with multiple geometry fields (note: however, multiple geom fields is not yet supported by OGR SQLite table layers) |
| 662 | * implement SetAttributeFilter() on SQL result layers, to directly inject it as a WHERE clause when possible |
| 663 | * add the OGR_SQLITE_PRAGMA configuration option |
| 664 | * Spatialite: correctly set proj4text field of spatial_ref_sys when inserting a new SRS in the spatial_ref_sys table (#5174) |
| 665 | * Spatialite: fix insertion in spatial_ref_sys to avoid issues with non-numeric authority codes (auth_srid) |
| 666 | * Spatialite: make creation of database much faster with spatialite 4.1 by using InitSpatialMetaData(1) (#5270) |
| 667 | * Spatialite: use thread-safe initialization for spatialite >= 4.1.2 |
| 668 | * avoid spatiliate views to emit (hidden) errors that cause troubles to MapServer OGR input driver (#5060) |
| 669 | * attempt to make VirtualOGR (and thus sqlite dialect) work even with a libsqlite3 compiled with SQLITE_OMIT_LOAD_EXTENSION (on Unix only) |
| 670 | * add warning when calling CreateField() with a field name that is 'ROWID' since it can cause corrupted spatial index |
| 671 | * serialize StringList as non-truncated strings |
| 672 | * detection of DateTime/Date/Time column type on the result of a max() / min() function |
| 673 | * ensure fields of type DateTime/Date/Time are properly recognized if the table is empty (#5426) |
| 674 | |
| 675 | VFK driver: |
| 676 | * fix memory leak |
| 677 | * change VFK header check (first line starts with '&H') |
| 678 | * implement OGR_VFK_DB_DELETE configuration option |
| 679 | * read all data blocks by default |
| 680 | * fix GetFeatureCount() |
| 681 | * don't use existing internal db when it's older then original vfk file |
| 682 | |
| 683 | VRT driver: |
| 684 | * add support for multiple geometry columns in OGRVRTLayer, OGRVRTUnionLayer and OGRVRTWarpedLayer (RFC 41) |
| 685 | * add validation of OGR VRT document against the schema (if libXML2 available); |
| 686 | can be disabled by setting GDAL_XML_VALIDATION configuration option to NO |
| 687 | * make relativeToVRT=1 work with CSV:filename or GPSBABEL:driver:filename (#5419) |
| 688 | |
| 689 | WFS driver: |
| 690 | * WFS 2.0: be a good citizen and send TYPENAMES (with a S) for GetFeature request (but still TYPENAME for DescribeFeatureType) |
| 691 | * accept TYPENAME(S) in URL with characters escaped by '%' (#5354) |
| 692 | |
| 693 | XLS driver: |
| 694 | * don't use sheetId attribute from workbook.xml to link a sheet name to its filename. The first sheet is sheet1.xml, etc... |
| 695 | |
| 696 | XPlane driver: |
| 697 | * accept V1000 APT files |
| 698 | |
| 699 | == SWIG Language Bindings == |
| 700 | |
| 701 | All bindings: |
| 702 | * include constraints.i in gdal.i so that NONNULL constraints are really applied |
| 703 | * add Feature.SetFieldBinaryFromHexString() |
| 704 | * add SpatialReference.EPSGTreatsAsNorthingEasting (#5385) |
| 705 | * map OGR_L_GetStyleTable(), OGR_L_SetStyleTable(), OGR_DS_GetStyleTable(), OGR_DS_SetStyleTable() |
| 706 | * Add OGR_STBL_AddStyle() and map all OGR_STBL_ C methods to SWIG |
| 707 | |
| 708 | CSharp bindings: |
| 709 | * Fix handling UTF8 strings in GDAL C# (#4971) |
| 710 | * Add C# typemaps for RFC-39 functions (#5264) |
| 711 | * Fix typo in OGRLayerAlg.cs (#5264) |
| 712 | * Add missing typemaps for C# (#5265) |
| 713 | |
| 714 | Java bindings: |
| 715 | * run 'make ANDROID=yes' in swig/java to generate SWIG bindings that compile for Android (#5107) |
| 716 | * fix linking issue that is encountered in non libtool builds with g++ 4.6 |
| 717 | * add multireadtest utility |
| 718 | * respect JAVA_HOME set via configure |
| 719 | |
| 720 | Perl bindings: |
| 721 | * ColorTable method of ColorTable class was documented but ColorEntries was |
| 722 | implemented. Implemented but deprecated ColorEntries. |
| 723 | |
| 724 | Python bindings: |
| 725 | * fix ref-counting of callable passed to gdal.PushErrorHandler() that could cause segfaults (#5186) |
| 726 | * make gdal_array.NumericTypeCodeToGDALTypeCode accept numpy dtype arguments (#5223) |
| 727 | * add default xoff,yoff,xsize,ysize values to ReadRaster calls |
| 728 | * make ogr.CreateGeometryFromWkt() and SpatialReference.ImportFromWkt() propery validate their argument (#5302) |