| 1 | = GDAL/OGR 1.6.0 = |
| 2 | |
| 3 | '''These are preliminary release notes, the 1.6.0 release has not yet occured.''' (Made from SVN log from r13414 to r15679) |
| 4 | |
| 5 | == GDAL/OGR 1.6.0 - General Changes == |
| 6 | |
| 7 | Build (Unix): |
| 8 | * Added basic support for LDFLAGS |
| 9 | * Try prefix/lib before prefix/src for proj.4 linking (#1345) |
| 10 | * Allow specification of a python binary for --with-ogpython (#2258) |
| 11 | * Added NAS driver config support |
| 12 | * Fixed Expat detection problem on MinGW (#2050) |
| 13 | * Fix INST_DATA setting (/share/gdal instead of /share) (#2382) |
| 14 | * Build MSGN driver on Unix-like platforms |
| 15 | * Added MSG driver support to configure.in. EUMETSAT Wavelet Trasform software is only detected on request, option --with-msg specified. |
| 16 | * Improve cross-compilation |
| 17 | * Fix linking with HDF4 library when configuring with --with-hdf4 or --with-hdf4=yes (#2602) |
| 18 | * Fixes for compilation with GCC 4.3 |
| 19 | |
| 20 | Build (Windows) |
| 21 | * Default to non-debug builds. Use /GR in pre 1400 builds so that dynamic_cast doesn't just cause an blowout. Use .pdb file with version embedded. |
| 22 | * Make vc++ builds usable from mingw (#2216) |
| 23 | * Updated nmake.opt for building with Visual C++ adding /W3 flag for release build and /W4 for debug build. |
| 24 | * Add VS Makefile for GDAL and OGR DODS drivers (#2383) |
| 25 | |
| 26 | Port: |
| 27 | * Added VSIMalloc2() and VSIMalloc3() API and use them in GDAL drivers (RFC-19) |
| 28 | * Added infrastructure to detect bad arguments to printf-like functions |
| 29 | * Added CPLHashSet data structure |
| 30 | * Added quad tree implementation derived from shapelib & mapserv |
| 31 | * Added support for reading on-the-fly .gz files and .zip files (#1369) |
| 32 | * Added implementation of recode API (RFC23) |
| 33 | * Added CSLFindName() |
| 34 | * Added two new flags to CSLTokenizeString2() function: CSLT_STRIPLEADSPACES and |
| 35 | CSLT_STRIPENDSPACES to strip leading and ending spaces from the token. |
| 36 | * Added CSVGetNextLine() to fetch next record based on just csv filename |
| 37 | * Added CPL_ACCUM_ERROR_MSG=ON for CPLQuietErrorHandler |
| 38 | * Added CPL_MAX_ERROR_REPORTS config option (#2409). |
| 39 | * Added CPL_INLINE macro |
| 40 | * Added UNREFERENCED_PARAM macro to cpl_port.h. |
| 41 | * Added CPLGenerateTempFilename() |
| 42 | * Improve performance of CPLParseXMLString from O(n*n) to O(n) where n is the number of siblings node |
| 43 | * Fix bug with url encoding in CPLEscapeString() (#2314) |
| 44 | * Various fixes in CPLList implementation (CPLListInsert and CPLListRemove) (#2134) |
| 45 | * VSIMEM: added path normalization so everything is converted to forward slashes |
| 46 | * VSIMEM: prevent file extension, or write/update to files opened in readonly mode |
| 47 | * cpl_path.cpp: Add CPLAssert to check that the string inputs are not the result static buffer |
| 48 | |
| 49 | Utilities: |
| 50 | * Added a --utility_version that displays the version of GDAL used for compiling the utility and add runtime checks to see if GDAL library is compatible with the utility version |
| 51 | |
| 52 | == GDAL 1.6.0 - Overview of Changes == |
| 53 | |
| 54 | Core : |
| 55 | * Added support for computing statistics for datasets with arbitrary overviews in GDALRasterBand::ComputeStatistics() |
| 56 | * Added Gaussian resampling in overview building (#2137) |
| 57 | * Added Mode resampling in overview building (#2347) |
| 58 | * Added in GDALRasterBand::GetRasterSampleOverview() and ComputeRasterMinMax() (#2148) |
| 59 | * Preliminary gmljp2 specific changes to address axis orientation (#2131) |
| 60 | * Added RPC and IMD support (RFC 22) |
| 61 | * Added GDALProxyDataset and GDALProxyRasterBand abstract classes to be able to make proxy datasets and raster bands |
| 62 | * Added a proxy dataset class, GDALProxyPoolDataset, that differ at the maximum the opening of the underlying dataset and keep the number of simultaneous opened underlying datasets under a limit (similar to what is done in the RPFTOC driver) |
| 63 | * Migrate GDALRegenerateOverviews() to C API |
| 64 | * Added GDALDestroyDriver() |
| 65 | * Added special case in GDALCopyWholeRaster to be more friendly when writing a tiled compressed GeoTIFF (massive reduction of destination file size) |
| 66 | * Added GDALRegenerateOverviewsMultiBand to process all the bands at the same time to optimize the generations of compressed pixel-interleaved overviews (such as JPEG-In-TIFF). Optimization triggered in some cases for external and internal GeoTIFF overviews. PHOTOMETRIC_OVERVIEW and INTERLEAVE_OVERVIEW config options added for external overviews. -ro option added to gdaladdo to generate external overviews for GeoTIFF. Result : divide by 2 to 3 the size of JPEG-In-TIFF overviews on big RGB datasets |
| 67 | * Add a new class GDALNoDataValuesMaskBand to create a per-dataset nodata mask band (GMF_PER_DATASET | GMF_NODATA) when the metadata item NODATA_VALUES is found on the dataset (#2149) |
| 68 | |
| 69 | * Fix segfault when building overviews with --config USE_RRD YES (#2145) |
| 70 | * PAM: save floating point nodata in IEEE floating point binary format |
| 71 | * Fix division by zero in GDALGetRandomRasterSample (#2429) |
| 72 | * GDALOpen: Use EOVERFLOW if defined otherwise use hardcoded likely values (#2437) |
| 73 | * Replace implementation of arrays for maintaining the list of opened shared datasets by a CPLHashSet to avoid O(n*n) complexity |
| 74 | * Fix GDALRasterBand::IRasterIO fails to read data from dataset when block cache is too small (#2457) |
| 75 | * Modify GDALFindAssociatedAuxFile() to only select .aux files that have the same raster configuration as the target dataset (PxLxB). (#2471). |
| 76 | * When available use arbitrary overviews for computations in GDALRasterBand::ComputeRasterMinMax() and GDALRasterBand::GetHistogram(). |
| 77 | * Fix crash in GDALValidateCreationOptions when passed a creation option not in format key=value (#2499) |
| 78 | * Fix 'GDALNoDataMaskBand::IReadBlock doesn't behave correctly when eWrkDT != eDataType' (#2504) |
| 79 | * Use nodata masks when generating overviews (#2149) |
| 80 | * Improve error propagation when GDALRasterBlock::Write() fails (#2524) |
| 81 | * gdalnodatamaskband: add case for uint16 and uint32 as uint32 - fixes neg. nodata values for these |
| 82 | * Add a special case for dealing with RasterIO expansion on writes (#773) |
| 83 | * Add GDALValidateCreationOptions() checks in GDALDriver::Create() and GDALDriver::CreateCopy() |
| 84 | * Optimization of GDALCopyWords for transfer from buffer of packed bytes to buffer of bytes with interleaving (#2536) |
| 85 | * Use BlockBasedRasterIO in GDALDataset::IRasterIO for pixel-interleaved datasets when source and destination have the same size (#2536) |
| 86 | * PAM: Allow empty category in .aux.xml (#2562) |
| 87 | * GDALDataTypeUnion(): Add missing GDT_CInt16 case that was triggering a CPLAssert(FALSE) (linked to #2564) |
| 88 | * PAM: improve the find existing histogram logic to check approx and out of range |
| 89 | * Fix validation of values for creation option parameters of type float |
| 90 | * Fix memory leak related to PAM histograms |
| 91 | * Restrict dataset sharing to a one thread by tracking owning pid (#2229) |
| 92 | * rasterio.cpp: Handle >2GB memory arrays on a 64-bit build (#2199) |
| 93 | |
| 94 | Algorithms: |
| 95 | * Added GDALPolygonize() function |
| 96 | * Added sieve filter |
| 97 | * Add implementation of raster hole filler |
| 98 | * Added proximity algorithm implementation |
| 99 | * Added GDALRasterizeLayers() function to rasterize the all the features in the list of layers rather than individual geometries. |
| 100 | * Added support for point geometries rasterization |
| 101 | * Added line rasterization routine. |
| 102 | * Added GDALCreateGenImgProjTransformer2() |
| 103 | |
| 104 | * Massive warp kernel upgrade contributed by Seth Price: fixed number of problems with Cubic Spline and Lanczos resamplers, multiple performance improvements. |
| 105 | * Fix destination coordinate system setting logic in GDALReprojectImage (#2231) |
| 106 | * Modify GDALChecksum to give it a deterministic behaviour when given a GDT_[C]Float[32|64] rasterband with NaN and Inf values. The result is backward compatible with previous implementations with finite values |
| 107 | * Add options to RPC transformer, use for RPC_HEIGHT offset |
| 108 | * TPS : fix uninitialized variables (#2300), fix wrong behaviour with negative coordinates (#2615) |
| 109 | * Implement overview building for paletted rasterbands with average resampling by selecting the nearest entry after averaging on R,G,B components (#2408) |
| 110 | * gdalgeoloc.cpp : Fix crash in GDALCreateGeoLocTransformer if X_DATASET, etc... cannot be opened (#2434) |
| 111 | * warper: Prevent crashes when srcAlphaBand and dstAlphaBand are wrong |
| 112 | * Fix tiling in gdal_grid and output of geotransform when -txe and -tye not specified (#2508) |
| 113 | * warper: Wait for the threads to complete before leaving GDALWarpOperation::ChunkAndWarpMulti() (#2518) |
| 114 | * warper: When warping an RGBA image whose borders have alpha=0, avoid writing alpha=255 with bilinear, cubic, cubic spline resampling |
| 115 | * warper: Properly set a resample window size for Cubic Spline kernel. (#2414) |
| 116 | * gdalsimplewarp.cpp: fix pointer array allocation (#2586) |
| 117 | |
| 118 | Utilities: |
| 119 | * gdal_lut.py: New for 1.6.0. Sample app applying a greyscale lookup table |
| 120 | * gdal_polygonize.py : New for 1.6.0 |
| 121 | * gdal_proximity.py : New for 1.6.0 |
| 122 | * gdal_sieve.py: New for 1.6.0 |
| 123 | * densify.py: New for 1.6.0. A generic Translator class for ogr2ogr-like operations that can be easily overridden for special translation operations |
| 124 | * gdalflattenmask : New utility to merge regular data bands with the mask bands, for applications not being able to use the mask band concept. (Not compiled by default) |
| 125 | * gdal2ogr: New for 1.6.0. to create an OGR datasource from the values of a GDAL dataset; May be useful to test gdal_grid and generate its input OGR file (Not compiled by default) |
| 126 | |
| 127 | * Fix crash in gdalenhance |
| 128 | * Add -nln switch for gdal_contour |
| 129 | * gdalgrid: Fixed zero search radius handling in nearest neighbor interpolation method. |
| 130 | * gdalgrid: Added support for data metrics (minimum, maximum and range) computation. |
| 131 | * gdalgrid: Added spatial filter support applied on the OGR data source |
| 132 | * gdalgrid: Added ability to read values from the attribute field using the "-zfield" option. |
| 133 | * gdalgrid: fix crash on features with NULL geometry or when no point geometry is found on a layer (#2424) |
| 134 | * esri2wkt.py: Fix esri2wkt for NG python bindings (#2548) |
| 135 | * Build testepsg utility by default when OGR is enabled (Ticket #2554). |
| 136 | * gdaltranslate: new -expand rgb|rgba option to make color table expansion |
| 137 | * gdaltindex: Use correct index variable name |
| 138 | * gdal2tiles.py: Bug fix: switched axes in BoundingBox of tilemapresource.xml. |
| 139 | * gdal2tiles.py: Bug fix: wrong Origin in tilemapresource.xml. |
| 140 | * gdal2tiles.py: New version of GDAL2Tiles (SoC 2008 - GDAL2Tiles Improvements) |
| 141 | * gdal_retile.py: Some minor enhancement optionally storing the georeferencing data of created tiles in a csv file |
| 142 | * gdalinfo: Don't show RAT if -nomdd is used. |
| 143 | * gdalinfo: Display checksums on overviews when -checksum is specified |
| 144 | * gdalinfo: Display whether the mask band has overviews |
| 145 | * ogr2ogr: reset -gt to 1 with -skipfailures, document -gt (#2409) |
| 146 | * ogr2ogr: Output error messages on stderr to be consistant; Make error message about failed reprojection more clearer (hopefully); Advertize the use of -skipfailures in error message (#2588) |
| 147 | * nearblack: Add support for scanning from top and bottom as well as from the sides. |
| 148 | * Prevent crash in gdalwarpsimple utility and in GDALSimpleImageWarp() when source dataset has no raster band |
| 149 | * gdal_rasterize: check that coordinates systems match (Ticket #1937) |
| 150 | * gdalwarp: Add cutline support |
| 151 | |
| 152 | Various drivers: |
| 153 | * Reports GDAL_DCAP_VIRTUALIO=YES for drivers supporting it (#2193) |
| 154 | * Add warnings in CreateCopy() methods for drivers not supporting color tables (#1939) |
| 155 | * Simplify and harmonize how ESRI world file extensions are handled for BMP, GIF, JPEG, PNG and GTiff drivers (fix #1734) |
| 156 | * Windows : enable bigtiff by default when using internal libtiff (#2257) |
| 157 | * Added plugin building support for ECW, MrSID, HDF5, NetCDF, FITS and SDE drivers. |
| 158 | * fix case of capabilities xml elements to match properly (#2322) |
| 159 | * Add ALPHA creation option in the list of creation options |
| 160 | |
| 161 | AAIGrid Driver: |
| 162 | * Re-fix nodata test when determining AAIGrid data type (Ticket #2107). |
| 163 | * fix yllcorner computation (#1794) |
| 164 | * mark driver as supporting virtualio. |
| 165 | * Fix wrong data type used to read the source band AAIGCreateCopy (#2369) |
| 166 | * Add DECIMAL_PRECISION creation option for AAIGRID (#2430) |
| 167 | |
| 168 | ADRG driver: |
| 169 | * Initialize PAM to avoid creating .aux.xml file when gdalinfo an ADRG dataset |
| 170 | * Prevent opening in update mode && fix reading of blocks in creation mode |
| 171 | * Prevent error message coming from ADRG driver when trying to open in update mode a non-existing dataset |
| 172 | * Avoid error reporting and subsequent failure on some DIGEST files where the last record ends in a non-standard way |
| 173 | |
| 174 | BLX Magellan Topo driver: |
| 175 | * New for 1.6.0 (#2254 and #2570) |
| 176 | |
| 177 | BSB driver: |
| 178 | * Add support for alternate palettes via config option |
| 179 | * Fix Valgrind warning about read of uninitialized memory; Replace a CPLAssert by a test in case of corrupted dataset; Remove static buffer in BSBReadHeaderLine to improve thread-safety |
| 180 | * Update BSB write support to use VSIF*L API (still disabled by default); fix palette handling (last color entry was lost); add GCP/Geotransform writing |
| 181 | |
| 182 | COSAR driver: |
| 183 | * Initialize integral variables to prevent failure of test condition in case file read operation fails; clean signed/unsigned mismatch warning. |
| 184 | * Additional tests to protect against corrupted datasets |
| 185 | |
| 186 | DIMAP driver: |
| 187 | * Fix use of static CPL buffers |
| 188 | * Implement GetFileList() and support for opening directory for DIMAP format |
| 189 | |
| 190 | DODS driver: |
| 191 | * Add using namespace libdap for version 3.8.2 (#2404) |
| 192 | |
| 193 | DTED driver: |
| 194 | * Add the GDAL_DTED_SINGLE_BLOCK config option to make a single block of a whole DTED file. This can speed-up a lot scanline oriented algorithms (#1909) |
| 195 | * Add support for DTED products strictly following MIL-D-89020 that was buggy |
| 196 | * Fix compilation without CPL |
| 197 | * Improve thread safety |
| 198 | |
| 199 | ECW driver: |
| 200 | * Fix memory leaks (#2210) |
| 201 | * Be more careful deciding what geotransforms to ignore (#1935) |
| 202 | * Rename ecw plugin gdal_ECW_JP2ECW.so/dll (#2320) |
| 203 | * Properly set default nPixelSpace and nLineSpace in ECWRasterBand::IRasterIO(). |
| 204 | * Added pixel data type checking in ECWCreateCopy() (#2593). |
| 205 | |
| 206 | EHDR driver: |
| 207 | * Port EHDR driver to large file API (by apetkov) (#2580) |
| 208 | |
| 209 | EIR (Erdas Imagine Raw format) driver: |
| 210 | * New for 1.6.0 |
| 211 | |
| 212 | ENVI driver: |
| 213 | * fix problems with old/new state plane zone codes (#2227) |
| 214 | |
| 215 | ERS driver: |
| 216 | * add support for HeaderOffset keyword (#2598) |
| 217 | |
| 218 | FAST driver: |
| 219 | * Order the GCP in TL, TR, BR, BL order to benefit from the GDALGCPsToGeoTransform optimization |
| 220 | * Add support for Euromap FAST datasets for IRS-1C/IRS-1D PAN/LISS3/WIFS (#2329) |
| 221 | * Fix USGS projection decoding for EOSAT FAST format Rev C (#2381) |
| 222 | * Add support for detection of FAST IRS P6 and CARTOSAT-1 band filenames |
| 223 | |
| 224 | FITS driver: |
| 225 | * Fix crash in FITS when dataset has metadata; Fix 2 minor Valgrind warnings (#2396) |
| 226 | * Fix crash on int32 test case in fits.py for 64-bit GDAL build (#2579) |
| 227 | |
| 228 | GeoRaster driver: |
| 229 | * New for 1.6.0 |
| 230 | |
| 231 | GFF driver: |
| 232 | * Close file pointer in dataset destructor |
| 233 | |
| 234 | GIF driver: |
| 235 | * Disable opening of large files which hang GDALOpen() (#2542) |
| 236 | |
| 237 | GRASS driver: |
| 238 | * Fix obvious memory leaks in GRASS driver (#2537) |
| 239 | * fix to use G_free() instead of free() (#1983) |
| 240 | |
| 241 | GRIB driver: |
| 242 | * Moved from spike to trunk: grib now standard, but support --without-grib option |
| 243 | |
| 244 | GSAG driver: |
| 245 | * Prevent crash on huge number of rows |
| 246 | * Prevent Valgrind warnings on bogus short GSAG files |
| 247 | * Major update to correct upside problems, removing Create (#2224, #1616, #2191) |
| 248 | |
| 249 | GS7BG driver: |
| 250 | * Fixed geotransormation matrix calculation (#2132) |
| 251 | * Properly read the header on big-endian system. |
| 252 | * fix bigendian support (#2172) |
| 253 | |
| 254 | GTiff driver: |
| 255 | * Add support for reading and writing embedded nodata masks of a TIFF file (TIFFTAG_SUBFILETYPE=FILETYPE_MASK) |
| 256 | * Added SUBDATASETS support |
| 257 | * Add the ability to create files with PHOTOMETRIC=PALETTE. |
| 258 | * Add the ability to update palette on existing files (#2421) |
| 259 | * Enforce PROFILE properly for Create (#1527) |
| 260 | * Add support for reading a CMYK TIFF. By default, it will be opened with the RGBA interface (CMKY->RGBA translation done by libtiff. Said to be *very* crude), unless 'GTIFF_RAW:' is specified before the filename. In that later case, the CMYK bands will be presented. Also add support for translating to a CMYK TIFF too : the source dataset must have CMYK bands. No colorspace translation is done |
| 261 | * Internal libtiff : refresh from upstream libtiff |
| 262 | * Added GTiffSplitBitmapBand to treat one row 1bit files as scanline blocks (#2622) |
| 263 | * Don't use GCS if it is less than 1 (#2183). |
| 264 | * Modified so that the RGBA interface is not used for YCbCr mode JPEG compressed data. Set JPEGCOLORMODE to RGB at the point a directory is read to avoid error report if doing it later during writing. This fixes the GDAL 1.5.0 issues with writing YCbCr JPEG compressed data (#2189). |
| 265 | * Fix memory leak in gt_wkt_srs.cpp |
| 266 | * Prevent crash in GTiff driver in case we cannot GDALOpen the newly create-copied file |
| 267 | * Fix buffer overflow when calling GTIFDirectoryInfo in GTIFGetOGISDefn (#2372) |
| 268 | * add special handling for 24bit data which gets byteswapped by libtiff (#2361) |
| 269 | * Replace hard-coded 3 byte increment by iPixelByteSkip in int24 gtiff decoding (#2361) |
| 270 | * Cleaunup frmt/gtiff directory by removing unused files. Move TIFF_WriteOverview to gt_overview.cpp. Create gt_overview.h to declare TIFF_WriteOverview and GTIFFBuildOverviewMetadata |
| 271 | * Add a ENDIANNESS creation option to GTiff driver for debug purpose mostly |
| 272 | * Fix writing of blocks on TIFF files in non-native endianness (#2398) |
| 273 | * Push extra bands of pixel interleaved data into block cache (#2435) |
| 274 | * Improve integration with PAM metadata loading and saving (#2448) |
| 275 | * Fix potential buffer overflow in GTIFAngleStringToDD (commited in upstream libgeotiff) - #2228 |
| 276 | * Fix GTiffOddBitsBand::IWriteBlock with GDT_UInt16/32; Error properly with GDT_Float32; Support creating files with NBITS>8; Handle NBITS=1 IReadBlock/IWriteBlock in GTiffOddBitsBand; Prevent subtle IReadBlock/IWriteBlock round-tripping bug for NBITS<8 (#2360) |
| 277 | * Set the TIFFTAG_COMPRESSION compression before asking the default strip size, so that in the case of JPEG compression, the correct strip height is selected (either 8 or 16). Tested with libtiff-3.8.2 and internal libtiff |
| 278 | * Prevent crash on tiff_ovr_9 when JPEG-In-TIFF support is not built |
| 279 | * In GTiffDataset::Create(), set TIFFTAG_JPEGCOLORMODE=JPEGCOLORMODE_RGB when creating a TIFF with COMPRESS=JPEG and PHOTOMETRIC=YCBCR; In Crystalize(), backup the value of TIFFTAG_JPEGCOLORMODE and set it again after writing the directory (#2645) |
| 280 | * Handle more gracefully the case where we open or create a TIFF file with a compression method not built in libtiff (use of TIFFIsCODECConfigured) |
| 281 | * Don't fail when TIFFTAG_JPEGCOLORMODE tag cannot be read |
| 282 | * IPP libjpeg compatability changes (#2606) |
| 283 | * ensure zip/jpeg quality is preserved in crystalize. (#2642) |
| 284 | * support handling nodata via pam/aux mechanisms (#2505) |
| 285 | * ensure TIFFFlush() is called in FlushCache() (#2512) |
| 286 | * Replace Crystalize() by SetDirectory() in GTiffDataset::IBuildOverviews() so that 2 consecutive ds.BuilOverviews() calls work without needing to close and reopen the dataset in between |
| 287 | * Prevent crash when disk is full |
| 288 | * Add detection of big-endian bigtiffs when BIGTIFF_SUPPORT is *NOT* defined |
| 289 | * Add missing ScaleAtCenter parameter for Hotine Oblique Mercator when writing the geotiff keys |
| 290 | * Added logic to pre-clear geotiff tags when updating a file (#2546) |
| 291 | * Add ExtraSample tag in overviews too (#2572) |
| 292 | * Fix handling of non-degree angular units (#601) |
| 293 | |
| 294 | GXF driver: |
| 295 | * Add GXFRasterBand::GetNoDataValue (fix #835) |
| 296 | * Avoid crash on bogus GXF file |
| 297 | |
| 298 | HDF4 driver: |
| 299 | * add support for projected NRL products (#2225) |
| 300 | * make a block consist of several scanlines for SDS case to speed up (#2208) |
| 301 | * Add H4ST prefix to names of HDF4SubdatasetType enumeration values. (#2296). |
| 302 | * Remove useless and dangerous redefinition of sincos in HDF-EOS (#2494) |
| 303 | * Added compatibility definitions for HDF 4.2 library (#2609) |
| 304 | |
| 305 | HDF5 driver: |
| 306 | * Fix minor memory leaks and one incorrect memory usage in HDF5 |
| 307 | * implement support for 1.8+ hdf library versions (#2297) |
| 308 | |
| 309 | HFA driver: |
| 310 | * Avoid possible uninitialized variable usage in HFAWriteXFormStack() |
| 311 | * Fix BASEDATA count value (preceding pointer) at 1 (#2144) |
| 312 | * Incorporate generalization of EPT_f32 reduced precision handling (#1000) |
| 313 | * add missing creation options, fix doc to refer to COMPRESSED instead of COMPRESS (#2167) |
| 314 | * remove static buffer to improve thread-safety |
| 315 | * Read invalid blocks as nodata value if available. Create new files with all blocks marked invalid. Support writing to invalid blocks as long as there is already a pointer to valid data. (#2427) |
| 316 | * add support for writing 1, 2 and 4 bit data (#2436) |
| 317 | * Attempt to preserve PROJCS name in sMapInfo.proName, and to capture it as the PROJCS name when reading. This will hopefully preserve symbolic names like NAD_1983_StatePlane_Ohio_South_FIPS_3402_Feet instead of replacing them with something generic like "Lambert_Conformal_Conic" (#2422). |
| 318 | * avoid reducing array sizes if writing them in random order (#2427) |
| 319 | * Manually destroy bands in HFADataset destructor so that there is no chance |
| 320 | they will end up trying to write out cached information after the |
| 321 | file has been closed. Loosely related to (#2524). |
| 322 | * error out gracefully and early on attempts to write to readonly file (#2524) |
| 323 | * open the dependent file(s) with same permissions as master (#2425) |
| 324 | * Fix crash in HFACompress::compressBlock when compressing random data with m_nDataTypeNumBits >= 16 (#2525) |
| 325 | * Fix reading of a non-initialized compressed HFA file (#2523) |
| 326 | * Add FORCETOPESTRING, and ensure ProjectionX applied to all bands (#2243) |
| 327 | |
| 328 | HTTP driver: |
| 329 | * Fix HTTP driver when falling back to /tmp (#2363) |
| 330 | |
| 331 | IDRISI driver: |
| 332 | * Force min/max calculation on IWriteBlock |
| 333 | * remove conditional from CreateColorRamp() call |
| 334 | * Fix #2444 (lat/long) and #2442 (uppercase file extension) |
| 335 | |
| 336 | ILWIS driver: |
| 337 | * Modified to use VSI*L API for reading and writing. Modify ReadBlock() so that data written on newly created datasets can still be read back. |
| 338 | * Fix memory leaks in ILWIS driver |
| 339 | * Avoid writing an ILWIS file to disk when it is a src_dataset. Design of responsible class (IniFile) is simplified, to prevent this from happening unintentionally. |
| 340 | * Spend extra effort to find the most compact GDAL data-type for storing the ILWIS data; Added missing ILWIS-system domains to the list; Initialized variables before they are used; Added comments to code. |
| 341 | * Solved unwanted rounding in the pixel size, that resulted in wrong map size calculation. |
| 342 | |
| 343 | INGR driver: |
| 344 | * Support splitting bitonal images into scanline blocks too (#1959) |
| 345 | * Fix compilation of INGR driver on big-endian target (#2613) |
| 346 | |
| 347 | ISIS3 driver: |
| 348 | * fix earth model, already in meters, not kilometers! (#2321) |
| 349 | * ensure we adjust first tile offset depending on band (#2573) |
| 350 | |
| 351 | ISO8211 driver: |
| 352 | * corrections to handle double byte attributes better (#1526) |
| 353 | |
| 354 | JP2KAK driver: |
| 355 | * Add VSI*L reading and writing (vsil_target) (#2255) |
| 356 | * Remove KAKADU4 related ifdefs, we now assume at least KAKADU 4.2. |
| 357 | * disable JPIP - not working with modern Kakadu |
| 358 | |
| 359 | JPEG driver: |
| 360 | * Added support for reading georeferencing from .tab files. Fixes #682. |
| 361 | * Add support for reading images in CMYK and YCbCrK color spaces (#2443) |
| 362 | * make sure bHasDoneJpegStartDecompress is set in Reset() (#2535) |
| 363 | * Added fill/flush support compatible with IPP libjpeg (#2606) |
| 364 | |
| 365 | LCP (FARSITE) driver: |
| 366 | * New for 1.6.0 |
| 367 | |
| 368 | L1B driver: |
| 369 | * Added support for NOAA-18(N) and METOP-2 datasets; tiny code refactoring. |
| 370 | * L1B : add auto guess of data format when it is 2 spaces or empty string |
| 371 | * The GAC GCPs are not tied to the center of pixel. |
| 372 | * Serious code rewriting in order to read datasets withour archive header |
| 373 | |
| 374 | MEM driver: |
| 375 | * Avoid failure when doing mem_driver->Create('MEM:::') |
| 376 | |
| 377 | MrSID driver: |
| 378 | * Use VSI Virtual File API in MRSID DSDK I/O routines. MrSID reading now |
| 379 | works through the VSI calls as any other GDAL driver. |
| 380 | * Added support for MrSID DSDK 7.x (#2410) |
| 381 | * Use int 32 types instead of long types for LTI_METADATA_DATATYPE_UINT32 and LTI_METADATA_DATATYPE_SINT32 metadata (#2629) |
| 382 | |
| 383 | MSG driver: |
| 384 | * Fixes and improvements to enable compilation with GCC 4.x (Ticket #2168). |
| 385 | |
| 386 | NDF driver: |
| 387 | * Support NDF2 files in other than the current directory (#2274) |
| 388 | * Added somewhat improved coordinate system support (#2623) |
| 389 | |
| 390 | NetCDF driver: |
| 391 | * Handle very large attributes properly (#2196) |
| 392 | * NETCDF plugin name doesn't correspond to the loader entry name causes an error in AutoLoadDrivers (#2464) |
| 393 | * Fix allocation of panBandZLev (#2582) |
| 394 | * Fix accidentally too large memory allocation (#2591) |
| 395 | * Do not report char variables as subdataset (#2599) |
| 396 | |
| 397 | NITF driver: |
| 398 | * Add support for RPB and IMD files |
| 399 | * Handle NITF JPEG-compressed image with data mask subheader (IC=M3) multi-blocks (#2364) |
| 400 | * Implement SetProjection for NITF (#2095) |
| 401 | * Added support for decoding 12 bit images (#2532) |
| 402 | * Added support for writing TEXT segments in CreateCopy() |
| 403 | * Added support for writing arbitrary user defined TREs |
| 404 | * Fix #2249 : shift when writing NITF color table with nColors < 256 |
| 405 | * Prevent crash with LUT entry count > 256 |
| 406 | * Disable unnecessary VSIFFlush() calls. They are very expensive on some systems. I believe they were originally included due to problems on |
| 407 | poorly behaved stdio implementations (solaris?). |
| 408 | * Apply untested RPC00A remapping (#2040) |
| 409 | * Fix #2135 by narrowing workaround test made for #1750 |
| 410 | * Prevent crash on NITF file without image segment (#2362) |
| 411 | * Additionnal fix for handling 1-bit uncompressed NITF images with NITF_IC=NM (#1854) |
| 412 | * Set IREP=RGB implicitely when the first 3 channels of an image are R,G,B (#2343) |
| 413 | * Allocate one extra byte for the NULL terminating character when reading TEXT data in NITF file (#2366) |
| 414 | * Fix 'adding BLOCKA TRE precludes writing IGEOLO' (#2475) |
| 415 | * Add GDAL_DMD_CREATIONOPTIONLIST for NITF |
| 416 | * Prevent crash when using a bad value for TRE creation option |
| 417 | * Fallback to pam info for nodata (#2596) |
| 418 | |
| 419 | PAUX driver: |
| 420 | * Check for either generated spelling of AuxiliaryTarget (#2219) |
| 421 | |
| 422 | PCRaster driver: |
| 423 | * Add overview support |
| 424 | * Added support for CSF version 1. Updated nodata values to be equal to gdal's internal ones. |
| 425 | |
| 426 | PDS driver: |
| 427 | * Add support for # style comments (#2176) |
| 428 | * Improve PDS dataset identification & fixes image segment offset (#2397) |
| 429 | * Add LSB_SIGNED_INTEGER |
| 430 | |
| 431 | PGCHIP driver: |
| 432 | * Many memory leak fixes & cleanups, add an extra parameter '%name=my_name' for handling several rasters in the same table, add support for reading&writing geotransform |
| 433 | |
| 434 | PNM driver: |
| 435 | * Fix potential buffer overflow in case of bad PNM file |
| 436 | * Fix logical tests in PNM Identify (bug #2190) |
| 437 | |
| 438 | RAW drivers: |
| 439 | * manage RawRasterBand NODATA values at PAM level |
| 440 | * RawRasterBand : add extra parameter bOwnsFP to enable the RawRasterBand to take ownership of the fpRaw so as to close it properly in its destructor |
| 441 | * Fix crash in rawdataset.cpp with pixeloffset=0 (#2576) |
| 442 | |
| 443 | RMF driver: |
| 444 | * Do not forget to swap block size/offset table on big-endian archs. (#2169) |
| 445 | * Added support for reading and writing extended header.. |
| 446 | * RMF driver can crash / corrupt stack when importing projection from Panorama (#2277) |
| 447 | * Fixed error checking code returned by color table read function. |
| 448 | * Added support fo reading big endian variant of the RSW files. |
| 449 | |
| 450 | RPFTOC driver: |
| 451 | * Enable external overview building on RPFTOC subdatasets |
| 452 | * Use new proxy API instead of RPFTOCGDALDatasetCache |
| 453 | * Initialize PAM for RPFTocDataset |
| 454 | * Implement GetFileList() for RPFTOCDataset and RPFTOCSubDataset |
| 455 | |
| 456 | RS2 driver: |
| 457 | * Added projection reading |
| 458 | * Updates to RADARSAT-2 driver to account for tiled GeoTIFF images. |
| 459 | * Capture all files for GetFileList(). |
| 460 | * Support selecting directory as well as product.xml to open the dataset. |
| 461 | * Various other enhancements |
| 462 | |
| 463 | SDTS driver: |
| 464 | * Prevent infinite recursion in SDTSRasterReader::GetBlock when CEL0 file is truncated |
| 465 | * SDTS DEM : Read metadata in the IDEN file |
| 466 | |
| 467 | SGI driver: |
| 468 | * Implemented SGI write support (always RLE) |
| 469 | * Fix SGI driver that misidentified SRTMHGT files as SGI files (#2289) |
| 470 | |
| 471 | Terragen Driver: |
| 472 | * Fix overflow in implicit constant conversion (#2119) |
| 473 | |
| 474 | Terralib driver: |
| 475 | * New for 1.6.0 |
| 476 | |
| 477 | TSX driver: |
| 478 | * Added support to extract GCPs from XML metadata for TerraSAR-X SSC products. |
| 479 | * Provide an error message if the sceneInfo tag cannot be found in the TerraSAR-X image metadata. |
| 480 | * Fix lat/lon inversion (whoops, #2565); expose additional metadata items |
| 481 | |
| 482 | USGSDEM driver: |
| 483 | * mark NTS and INTERNALNAME as legal options |
| 484 | * make parser more permissive (#2348) |
| 485 | * add missing ZRESOLUTION creation option in GDAL_DMD_CREATIONOPTIONLIST |
| 486 | * USGSDEM: add precisions to creation options documentation; check that source dataset dimensions are at least 2x2 for CreateCopy() |
| 487 | * USGSDEM: fix USGSDEMDecToPackedDMS when input is very close to an integer degree value |
| 488 | |
| 489 | VRT driver: |
| 490 | * Use VSIF Large API in VRTDataset::Open to fix #1070 |
| 491 | * recover from failure to create transformer (#2240) |
| 492 | * Added LUT based transformation support to the VRTComplexSource |
| 493 | * Extend the output of <SimpleSource> in a forward and backword compatibly way, and make use of GDALProxyPoolDataset when possible |
| 494 | * Add the <ColorTableComponent> element to <ComplexSource> to do color table expansion in the VRT |
| 495 | * Fix failure when attempting to read a warped VRT made from a 3-band dataset with -dstalpha option (#2502) |
| 496 | * In VRTDerivedRasterBand::IRasterIO() don't call RasterIO() on sources with 0,0 for nPixelSpace and nLineSpace as most sources, except VRTSimpleSource, don't translate them. |
| 497 | * Allow empty category in VRT rasterband (#2562) |
| 498 | * Use nodata in VRTKernelFilteredSource::FilterData (#1739) |
| 499 | * Fix VRT average resampling when resampling factor > 100% (#1725) |
| 500 | |
| 501 | WCS driver: |
| 502 | * Improvements to identify Band field name |
| 503 | * More fiddling with GetCoverage() bounding boxes. Avoid half pixel |
| 504 | bounding box shift south east. When using GridOffset/GridStep values expand the bounding box out by 1% of a pixel to avoid "on edge" rounding issues. |
| 505 | * Strip namespaces off DescribeCoverage response (early), and add a bug |
| 506 | workaround for GeoServer WCS 1.1 responses. |
| 507 | * Correct wcs 1.1 band identification logic |
| 508 | * URL encode format and coverage name. Improve error recognision. |
| 509 | * GridOffset should be top left corner of pixel center oriented bounds |
| 510 | |
| 511 | WMS driver: |
| 512 | * Add ClampRequests setting (#2450) |
| 513 | * Fix WMS driver to make it work when ReadBlockFromFile() must deal with blocks already in block-cache but that are not the band to fill (#2647) |
| 514 | * Add a <Timeout> option (#2646) |
| 515 | |
| 516 | XPM driver: |
| 517 | * Prevent crash when opening an XPM file with large file API |
| 518 | |
| 519 | |
| 520 | == OGR 1.6.0 - Overview of Changes == |
| 521 | |
| 522 | General: |
| 523 | * RFC 21: OGR SQL type cast and field name alias (#2171) |
| 524 | * Added support for outline color in OGRStyleLabel (#2480) |
| 525 | * Added support for symbol outline color in OGR Style Strings (#2509) |
| 526 | * Added geometry type merger |
| 527 | * Added SetEquirectangular2() |
| 528 | * Added SetLinearUnitsAndUpdateParameters() to C API |
| 529 | * Add support to translate OGRPolygon to OGRMultiLineString |
| 530 | * Add a segmentize() method to OGRGeometry to modify the geometry such it has no segment longer then the given distance; add a -segmentize option to ogr2ogr |
| 531 | * Many performance fixes in OGRGeometryFactory::organizePolygons (#1217, #2428, #2589) |
| 532 | * Changed OGRFeature::GetStyleString() to return the value of the OGR_STYLE field if no style string have been specified. |
| 533 | * Ensure OpenShared sharing is only with same thread (#2229) |
| 534 | * ogrfeaturestyle : OGRSTBrushAngle parameter should not be georeferenced. |
| 535 | * Strip whitespaces at the start and end of parsed pairs of style elements in OGRStyleTool::Parse(). As per #1413. |
| 536 | * Remove empty linestrings from multilinestring objects |
| 537 | * Allow 'POINT EMPTY' in WKT (bug #1628) |
| 538 | * Fix OGRGeometryCollection::getCoordinateDimension() (#2334) |
| 539 | * Make OGRLineString::importFromWkb and OGRPolygon::importFromWkb with EMPTY geometries |
| 540 | * Implement IsEmpty() for all geometries without using GEOS (for speed purpose, and also because GEOS 2.2.3 is buggy with multipolygons with empty polygon inside); Make exportToWkt() export a valid WKT when multipoints/linestrings/polygons have an empty geometry inside |
| 541 | * Reintroduce OFTWideString and OFTWideStringList but mark them as deprecated (#2359). |
| 542 | * Fixed segmentation fault in swq_select_finish_summarize when SQL query issued on layer without any attributes like empty shapefile (Ticket #2358). |
| 543 | * Fix crash in OGRDataSource::ExecuteSQL with an empty SQL query (#2386) |
| 544 | * Make OGRLayer::FilterGeometry more restrictive in the geometries it selects (#2454) |
| 545 | * OGRStyleVector class and related stuff has been removed (#2070). |
| 546 | * Fixed OGR SQL to properly escape single quotes in string literals (Ticket #2220). |
| 547 | * Prevent an OGR driver from being registered several times (#2544) |
| 548 | |
| 549 | Utilities: |
| 550 | * Start on a dissolve utility based on ogr2ogr |
| 551 | * Add --version and --licence options for OGR CLI utilities |
| 552 | |
| 553 | OGRSpatialReference: |
| 554 | * RFC 20: Axes methods |
| 555 | * Upgrade to EPSG 6.17 |
| 556 | * Added support for "International Map of the World Polyconic" |
| 557 | and "Wagner I-VII" projections. |
| 558 | * Add EquidistantCylindricalSphere and GaussLabordeReunion (#2134) |
| 559 | * Fix exportToProj() translation for OSGB36 (#2160) |
| 560 | * ogr_srs_panorama.cpp : Fixed search in ellipsoid list |
| 561 | * ogr_srs_pci.cpp : List of ellipsoids updated |
| 562 | * Treat spherical mercator 1SP similarly to normal mercator 1sp (proj #9). |
| 563 | * Ensure Clear() clears the bNormInfoSet flag and use Clear() from the various import methods to wipe old state (#2533). |
| 564 | * add import/export for MITAB CoordSys |
| 565 | * Added declarations for OSRImportFromMICoordSys()/OSRExportToMICoordSys(); make OSRImportFromPanorama()/OSRExportToPanorama() externally visible again. |
| 566 | * Ensure rectified_grid_angle gets stripped for HOM projections (#2575) |
| 567 | * ogr_srs_esri.cpp: Correct test of iRGAChild (#2575). |
| 568 | * Recent EPSG releases seem to use PolarLongOrigin instead of ProjCenterLong for the Krovak projection parameters. Handle either (#2559). |
| 569 | * Test that input pointer is not NULL in OGRSpatialReference::importFromWkt(). |
| 570 | |
| 571 | AVC driver: |
| 572 | * Make AVCE00 a distinct driver |
| 573 | * Update from AVCE00 master, includes the fixes for #2495 (GCC warnings) |
| 574 | * Detect compressed E00 input files and refuse to open them instead of crashing (#2513) |
| 575 | * Avoid scanning the whole E00 input file in AVCE00ReadOpenE00() if the file does not start with an EXP line (#1989) |
| 576 | |
| 577 | BNA driver: |
| 578 | * Fix crash when trying to write features with empty geometries |
| 579 | * Add support for Unix End-Of-Line characters on Windows |
| 580 | |
| 581 | CSV driver: |
| 582 | * Allow to define field width via .csvt text file (bug #2142) |
| 583 | * Handle more gracefully CSV files with an empty column title (#2538) |
| 584 | |
| 585 | DGN driver: |
| 586 | * add some experimental linkage testing |
| 587 | |
| 588 | DODS driver: |
| 589 | * add using namespace libdap for version 3.8.2 (#2404) |
| 590 | |
| 591 | Geoconcept Export driver: |
| 592 | * New for 1.6.0 |
| 593 | |
| 594 | GeoJSON driver: |
| 595 | * Fixed GeoJSON driver crash when writing features with null geometry (#2212) |
| 596 | * GeoJSON: enabled read/write of 25D geometry types. |
| 597 | * Improved GeoJSON driver to gracefully handle JSON strings that do not encode GeoJSON content. |
| 598 | |
| 599 | GPX driver: |
| 600 | * XML Datetime can be expressed without explicit timezone mention |
| 601 | * <extensions> is valid inside <rtept> and <trkpt> too |
| 602 | * Add support for GPX 1.0 reading |
| 603 | * Handle degenerate and NULL geometries in creation mode |
| 604 | * Remove noisy CPL_DEBUG message when GPX driver built without Expat and when the input file doesn't look like GPX (#2394) |
| 605 | * Prevent GPX and KML drivers to read too much of a non GPX/KML file (#2395) |
| 606 | |
| 607 | GML driver: |
| 608 | * Support reading GML 3 posList geometry (#2311) |
| 609 | * Add logic to potentially track geometry type (mostly for NAS just now) |
| 610 | * Fix #2141 : GML driver recognizes improperly strings as integers |
| 611 | * Do geometry element name test (IsGeometryElement) case sensitive to avoid false positives on property names, and such (#2215). |
| 612 | * Fix memory bug in OGRGMLLayer::GetNextFeature() when using attribute filter (#2349) |
| 613 | |
| 614 | GMT driver : |
| 615 | * Remove spaces from numeric field values before writing to avoid unnecessary quoting. |
| 616 | |
| 617 | GRASS driver: |
| 618 | * Call Vect_close() in the OGR GRASS driver (#2537) |
| 619 | |
| 620 | INGRES driver: |
| 621 | * New for 1.6.0 |
| 622 | |
| 623 | Interlis 1 driver: |
| 624 | * Support for SURFACE polygons spread over multiple OBJECTs Polygonize on demand. Generation of area layer |
| 625 | * Fix a crash (#2201) |
| 626 | * Fix memory leaks & apps/test_ogrsf correctness in OGRILI1 (#2203) |
| 627 | * Prevent crash in OGRILI1DataSource::Open with an empty string (#2335) |
| 628 | * Fixed column order detection for some Interlis 1 models (#2595) |
| 629 | |
| 630 | Interlis 2 driver: |
| 631 | * Fix memory usage and leaks in OGRILI2 (bug #2203) |
| 632 | * Fix logic to detect ILI2 datasets (#2516) |
| 633 | |
| 634 | KML driver: |
| 635 | * Updated KML write driver to support KML v2.2. |
| 636 | * Added support for "SchemaData" - typed KML fields that maintain feature data. |
| 637 | * Support of date types, written out as strings (#2264) |
| 638 | * Added automatic coordinate system transformation to WGS84 (the only CS that KML recognizes). (#2271) |
| 639 | * Report XML parsing error in KML driver in a similar way it's done in the GPX driver |
| 640 | * Speedup detection of KML documents |
| 641 | * Use VSI Large File API |
| 642 | * Corrected case on schemaUrl attribute and added the id attribute to the schema element. (#1897) |
| 643 | |
| 644 | MITAB driver: |
| 645 | * Upgraded to current dev version of MITAB - includes a number of TAB StyleString improvements |
| 646 | * Support font point outline color |
| 647 | |
| 648 | MySQL Driver: |
| 649 | * Fix memory leaks in MySQL driver |
| 650 | * Fix crash with very long WHERE clause in MySQL driver |
| 651 | * Use assignSpatialReference for read features |
| 652 | * Fix SRS cache in FetchSRS() |
| 653 | * MYSQL: Add backquotes around table and column names to enable the use of reserved keywords (#2315) |
| 654 | * Fix reporting of capabilities for OGRMySQLResultLayer |
| 655 | * return proper results for various writing capabilities (#2184) |
| 656 | |
| 657 | NTF driver: |
| 658 | * Update for new meridian and strategi products (#2600) |
| 659 | |
| 660 | OCI driver: |
| 661 | * Fixed memory leaks in OCI driver reported by Linda Thompson (#2120) |
| 662 | * Support for OCI + VRT to access non spatial data (#2202) |
| 663 | * Prevent from calling CPLError when SDO_GEOMETRY is missing (non spatial) (#2202) |
| 664 | * Added support for fields of type DATE and TIMESTAMP [WITH [LOCAL] TIME ZONE] as OFTDate and OFTDateTime. |
| 665 | * An extra space is needed for the decimal separator when retrieving the numeric fields (#2350) |
| 666 | * Improved OCI driver to query spatial extent of layer using SDO_GEOM_METADATA for better performance (Ticket #543). |
| 667 | * OCI: Filter out MDSYS.CS_SRS entries with NULL value of WKTEXT. |
| 668 | * add compound and stroked-arc read support |
| 669 | |
| 670 | PG (Postgres/PostGIS) Driver: |
| 671 | * Add the ability to specify a list of tables to be treated as layers with the 'tables=' connection string option (#1699) |
| 672 | * Add SPATIAL_INDEX creation option to create GIST index. Turned ON by default (#959) |
| 673 | * Add support for listing and correctly fetching geometry type of inherited spatial tables (#2558) |
| 674 | * Fixes to Postgres binary cursor mode and improvement/fixes to data types handling (#2312) |
| 675 | * Implement efficient GetFeatureCount, SetSpatialFilter and GetExtent for OGRPGResultLayer |
| 676 | * Apply spatial filter in OGRPGDataSource::ExecuteSQL() |
| 677 | * Make binary cursor work with non-PostGIS geometry column |
| 678 | * Fix memory leaks |
| 679 | * Fix write outside of allocated buffer in OGR PG driver (#2303) |
| 680 | * Use assignSpatialReference for read features |
| 681 | * Fix geometry filter when there is no PostGIS geometry column |
| 682 | * Fix getting the PK of a table with PostgreSQL <= 7.3; Fix CreateFeatureViaCopy when geometry column is not PostGIS geometry |
| 683 | * Use the 'auth_srid' to avoid mismatches between OGR and PostGIS WKTs of EPSG codes (#2123) |
| 684 | * Fix reporting of capabilities and handling of spatial and attribute filters by OGRPGResultLayer |
| 685 | * Add PG_USE_POSTGIS to be able to disable PostGIS for debug purpose |
| 686 | * Re-enable PQsetClientEncoding but set it to UNICODE now that the driver advertizes OLCStringsAsUTF8 |
| 687 | * Replace use of risky sprintf by CPLString to avoid potential buffer overflows |
| 688 | * In non PostGIS mode, skip tables of schema 'information_schema' |
| 689 | * Allow VACUUM through ExecuteSQL() without a transaction (#2619). |
| 690 | |
| 691 | PGEO driver: |
| 692 | * correct testcapability results (#2601) |
| 693 | * treat type 50 geometry as SHPT_ARC (#1484) |
| 694 | |
| 695 | SDE driver: |
| 696 | * Versioned editing/write support for SDE. |
| 697 | |
| 698 | SQLite driver: |
| 699 | * Added support for geometry_columns, and WKB support |
| 700 | * Added preliminary FGF to geometry support |
| 701 | * Added spatial_ref_sys support |
| 702 | * Added preliminary support for spatialite geometries |
| 703 | |
| 704 | SHAPE driver: |
| 705 | * Cleanup to remove unused old classification code for multipolygons (#2174) |
| 706 | * Fix error class in VSI_SHP_Error (#2177) |
| 707 | * Fix crash with polygon with nParts == 0 |
| 708 | * Change SHAPE driver to return a NULL geometry instead of an empty OGRMultiPoint, OGRMultiLineString and OGRMultiPolygon (bug #2217) |
| 709 | * Fix crashes on corrupted geometries (#2218) |
| 710 | * Fix crash when dealing with unhandled field types in shape driver, in DEBUG mode (#2309) |
| 711 | * Add case for wkbMultiLineString and 25D in OGRShapeLayer::CreateFeature |
| 712 | * Make SHPWriteOGRObject write a SHPT_NULL object for empty geometries and handle correctly multigeometries with empty geometries inside |
| 713 | * Make sure field type set to OFTDate when OFTDataTime requested (#2474) |
| 714 | * Implement OGRShapeDataSource::DeleteLayer() (#2561) |
| 715 | |
| 716 | S57 driver: |
| 717 | * Ensure SOUNDG in multipoint form is MultiPoint25D not 2D. |
| 718 | * Print out contents of OGR_S57_OPTIONS evvironment variable if set (for debug |
| 719 | purposes). |
| 720 | * Correct control for applying updates, now done in Ingest method. |
| 721 | |
| 722 | VRT driver: |
| 723 | * carry style string through VRT layer |
| 724 | * Pass the envelope of the geometry as the spatial filter in the sub-query (#2214) |
| 725 | * Add "shared" attribute on SrcDataSource to control sharing. Default to OFF for SrcLayer layers, and ON for SrcSQL layers. This endevours to avoid conflicts of layer state. (#2229) |
| 726 | |
| 727 | XPlane/Flightgear driver: |
| 728 | * New for 1.6.0 |
| 729 | |
| 730 | |
| 731 | |
| 732 | == SWIG Language Bindings == |
| 733 | |
| 734 | SWIG General : |
| 735 | * Added GetHistogram |
| 736 | * Added SetLinearUnitsAndUpdateParameters |
| 737 | * Added GetSubDatasets method on Dataset |
| 738 | * Added SetEquirectangular2 |
| 739 | * Cast returned value to OGRDriverShadow in GetDriver method instead of OGRLayerShadow |
| 740 | * Make it possible to skip adding the inline C functions into the wrapper |
| 741 | * Fix SWIG ReadRaster_internal and DSReadRaster_internal may crash (#2140) |
| 742 | * Modify GeneralCmdLineProcessor() to recognise that a <= 0 return result is special and means NULL should be returned indicating a need to terminate the calling application. |
| 743 | * Added SetMetadataItem/GetMetadataItem |
| 744 | * Added gdaltransformer wrapper for RFC 22 |
| 745 | * implement the BuildFromEdges function #2380 |
| 746 | * Added ComputeProximity |
| 747 | * Added GDALRegenerateOverviews |
| 748 | * Added GetFileList |
| 749 | * Added GRA_Lanczos |
| 750 | * Added gdal.Polygonize() |
| 751 | * expose GDALDestroyDriverManager() to improve leak detection |
| 752 | * Added RasterizeLayer() and SieveFilter() |
| 753 | * If we receive an odd array type in BandWriteArray(), cast the array to float64 which we do support (#2285). |
| 754 | |
| 755 | SWIG C# related changes: |
| 756 | * Implement GDALProgressFunc callback for C# (fix for #2122) |
| 757 | * Fixed that passing null as the options parameter of Driver.CreateCopy causes access violation (#2185). |
| 758 | * Added GDALCreateCopy sample application |
| 759 | * Support for signing the GDAL C# assemblies (#2186) |
| 760 | * Added raster specific tests |
| 761 | * Reworked the wrapper implementation |
| 762 | * Added the bandMap parameter to the C# Dataset.ReadRaster and Dataset.WriteRaster API. |
| 763 | * Added a C# sample to demonstrate the GDALDatasetRasterIO operations. |
| 764 | * Added Band.GetHistogram to the C# bindings |
| 765 | * Sample application for Band.GetHistogram. |
| 766 | * Added the GDALAdjustContrast sample to demonstrate the image correction at the C# side. |
| 767 | * Added Dataset.GetGCPs, Dataset.SetGCPs and GCPsToGeoTransform in the C# bindings (bugs #2426, #1986 and #1677 |
| 768 | * Added support for using OGR.Layer in Gdal.Polygonize |
| 769 | * Changed the behaviour to use OSR.SpatialReference and OSR.CoordinateTransformation instead of defining the same classes in the OGR namespace |
| 770 | * Changed the scope from internal to public of the required functions |
| 771 | |
| 772 | SWIG Python related changes: |
| 773 | * Fix layer __getitem__ bug (#2187) |
| 774 | * add some sugar to ogr.DataSource.DeleteLayer to be able to take in either an index or a layer name. If you give it a name, it *will* loop through all of the layers on the datasource. This might be expensive depending on the driver. |
| 775 | * add date/time fetching support to the generic GetField implementation... note this is not real 'datetime' support yet |
| 776 | * a typemap for taking in lists of GDAL objects #2458 |
| 777 | * don't always return 0 for OGRErrs #2498 |
| 778 | * Added GetDefaultHistogram() with Python implementation |
| 779 | * support for mingw Windows builds |
| 780 | * Link with gdal_i.lib instead of gdal.lib when building with MSVC compiler. (#2578) |
| 781 | |
| 782 | SWIG Perl |
| 783 | * Added a more verbose description to the error message if projection method test fails. Skip testing parameters of International Map of the World projection since it fails (a bug?). |
| 784 | * driver's create method's 2nd parameter, if given, is a listref |
| 785 | * Support Cygwin by adding -lstdc++ to LIBS if OS is cygwin |
| 786 | * Add GetDriver method as an alias to _GetDriver for DataSource. This fixes an unnoticed side-effect of rewrapping GetDriver for root class OGR. |
| 787 | * force name to be a string for _GetLayerByName and make default for name 0 |
| 788 | * fix Layer::Schema |
| 789 | * use perl hash also for fields in schema (the new API was not really implemented), add Schema method also for Feature |
| 790 | * croak in Geometry::create unless type, wkt, wkb, or gml given |
| 791 | * do not call UseExceptions when booting OGR wrappers since it is only done once when booting GDAL (of which OGR is a part), do not include inline functions from cpl_exceptions.i into OGR wrappers |
| 792 | * add exception support as for OGR |
| 793 | * use geometry factory methods in Geometry::create; accept also only coordinate parameters (i.e. auto-add 0 if needed) in Point method for Point type |
| 794 | * Add wrappers for field types datetime and lists. Do not use the overloaded (field name) versions of the get/set functions. |
| 795 | * GetField and SetField methods, which check for goodness of the field (name, index) and support dates, times, datetimes, and lists. In Row and Tuple the field value may be a listref. |
| 796 | * Support HEXWKB in Geo::OGR::Geometry::create. |
| 797 | * As* methods for Geometry as aliases for ExportTo; SpatialReference->create constuctor |
| 798 | * made needed links from parameters to typemaps to make Get- and SetDefaultHistogram methods work in Perl |
| 799 | * support for mingw Windows builds |
| 800 | |
| 801 | SWIG Java: |
| 802 | * removed colortable from java bindings for now (#2231) |