Changes between Initial Version and Version 1 of Release/1.7.0-News


Ignore:
Timestamp:
Jan 25, 2010, 7:15:23 PM (14 years ago)
Author:
warmerdam
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Release/1.7.0-News

    v1 v1  
     1= GDAL/OGR 1.7.0 =
     2
     3Some of the bugfixes mentioned below might also have gone into 1.6.X maintenance releases.
     4
     5== In a nutshell... ==
     6
     7 * New GDAL drivers : BAG, EPSILON, Northwood/VerticalMapper, R, Rasterlite, SAGA GIS Binary, SRP (USRP/ASRP), EarthWatch .TIL, WKT Raster
     8 * GDAL PCIDSK driver using the new PCIDSK SDK by default
     9 * New OGR drivers : DXF, GeoRSS, GTM, PCIDSK and VFK
     10 * New utility : gdaldem, gdalbuildvrt now compiled by default
     11 * Add support for Python 3.X. Compatibility with Python 2.X preserved (#3265)
     12 * Remove old-generation Python bindings.
     13 * Significantly improved GDAL drivers: GeoRaster, GeoTIFF, HFA, JPEG2000 Jasper, JPEG2000 Kakadu, NITF
     14 * Significantly improved OGR drivers: CSV, KML, SQLite (SpatiaLite support), VRT
     15 * WARNING: incompatibility between MrSID GeoDSDK and libgeotiff 1.3.0 or internal libgeotiff on some platforms (see #3309)
     16
     17== GDAL/OGR 1.7.0 - General Changes ==
     18
     19Build (All) :
     20 * Add gdalbuildvrt to the list of utilities built by default (#2747)
     21 * Improve Mingw compatibility (#2649)
     22 * Add Expat read support for GML driver when Xerces is unavailable (#2999)
     23 * Fix GML and ILI reading problems with Xerces 3.x (#3156)
     24 * Add 8/12bit JPEG-in-TIFF support
     25 * Fix trunk compilation against libdap 3.9.X (#3105)
     26 
     27Build (Windows) :
     28 * Check for CURL_LIB instead of CURL_DIR
     29 * ensure OGR_ENABLED gets defined if INCLUDE_OGR_FRMTS set (#2784)
     30 * Change quoting in VCDIR and SETARGV to avoid likely problems.
     31 * added dll and target-lib targets
     32 * fix _findfirst handle type for win64 (#3035)
     33 * Add support to compile OGR-postgis as a plugin (#3125)
     34 * Trap failures in subdirectories and stop build
     35
     36Build (Unix) :
     37 * Use proper object file names when building prerequsites lists (#1878)
     38 * Updated man page generation
     39 * Add new ./configure test to check that the GCC 4.1 built-in functions for atomic memory access are really available
     40 * Handle external libz (#2942)
     41 * Add support for 64bit file i/o on BSD systems, through fseeko/ftello
     42 * Add support for linking against libspatialite to benefit from spatial functions in SQL queries (#2666)
     43 * Fix support for --with-threads configure option on BSDs (tested on DragonFlyBSD 2.2.1)
     44 * Add support for autodetection of ogdi 3.2 in ./configure (#3007)
     45 * Remove additional dependency to libgdal.so added during linking in gdal/apps (#2970)
     46 * Improved ax_oracle_oci.m4 macro to handle libnnzXX for Oracle 10 and 11.
     47 * support using the Oracle Instant Client SDK
     48 * Make --with-ingres work with newer versions (#3126)
     49 * Search for alternative HDF4 flavor in HDF4 testing macro. Alternative HDF4
     50   (libmfhdfalt/libdfalt) build is NetCDF-compatible and used in Debian.
     51 * Support MacOSX "fat" binary building
     52
     53Port :
     54 * Provide API and implementation for thread and SMP safe atomic increments (#2648)
     55 * Add /vsisubfile virtual file driver
     56 * Added gzip write implementation
     57 * VSI ZIP : Allow natural chaining of VSI drivers without requiring double slash
     58 * Add a shortcut when looking for .csv files that are already open
     59 * Add CPLSetThreadLocalConfigOption()
     60 * Add CPLIsUTF8() and CPLForceToASCII(); Use them in GML, KML, GPX and GeoRSS drivers (#2971)
     61 * Add CPLStrlcpy() and CPLStrlcat(), clones of BSD strlcpy() and strlcat() functions
     62 * Add CPLStrnlen()
     63 * Add CSLLoad2() and CPLReadLine2L() with max number of lines and chars per line allowed
     64 * cplkeywordparser.cpp: Support parsing IMD files with values of the form list of lists
     65 * odbc: Fixed the null terminators for columns of length (x*511)+1, where x>1. (#2727)
     66 * unix VSIF*L : reworked to avoid unnecessary seeks which can be expensive
     67 * added HTTPAUTH and USERPWD options for http fetch (#3091)
     68 
     69== GDAL 1.7.0 - Overview of Changes ==
     70
     71Algorithms:
     72 * cutline : optimize by clipping cutline to region of interest (#2736)
     73 * cutline : avoid scanline to scanline blending problems (#2740)
     74 * rasterfill : substantially reworked
     75 * rasterfill : deprecate bConicSearch option - unused
     76 * rasterize : optimized
     77 * rasterize : Added GDALRasterizeLayersBuf() function to rasterize geometries directly
     78               into the supplied raster array.
     79 * rasterize : Add ALL_TOUCHED rasterize option (#2840)
     80 * rasterize : Added 3D support for rasterizing points and lines. (#3202)
     81 * rasterize : correct case of vertical/horizontal lines on raster right/bottom edge (#3268)
     82 * Added GDALCreateGenImgProjTransformer3() function
     83 * warp: Reduce destination file size, especially when it has compression (#1688)
     84 * warp: Fix crash when reprojecting to irrelevant SRS (#3079)
     85 * warp: avoid using the destination nodata value for integer datatypes (#3142)
     86 * warp: fix panDstValid generation, and avoid using it improperly (#3222)
     87 * warp: Restore support of reprojection of a lat-long image crossing 180E/180W longitude (#3206)
     88 * contour: Fix name of GDAL_CG_Create in contour.cpp (#2795)
     89 * contour: Generate contours with correct orientation (#3129)
     90 * gdalgeoloc: Improve geoloc backmap interpolation (#2501)
     91 * overview: added support for cubic convolution overviews
     92 * gdal_grid: 3 new metrics: data point count, average distance between data points
     93              and a grid node, average distance between data points.
     94 * gdal_grid: Properly cast the poOptions parameter in data metrics computation functions. (#3207)
     95
     96Core :
     97 * Added mechanism to clear overviews if zero overviews requested. Implemented by GTiff and HFA drivers (#2915)
     98 * Support for overviews in subdatasets
     99 * Support for overviews in proxydb directory (#2432)
     100 * SetColorTable(NULL) is permitted and means delete (#2421)
     101 * Preserve NBITS and SIGNEDBYTE in CreateCopy() for supporting drivers (#2902)
     102 * GDALCopyWords() : performance optimizations
     103 * Add GDALCheckDatasetDimensions() and GDALCheckBandCount()
     104 * Add GDALGetColorInterpretationByName()
     105 * Use tiff .ovr for overviews if .aux is just metadata (#2854)
     106 * Add missing argument in function declaration for GDALRATTranslateToColorTable()
     107 * Do not use colortable for bit2grayscale overviews (#2914)
     108 * Support world files with blank lines (ESRI Merge)
     109 * Add worldfiles in GetFileList() (ESRI Merge)
     110 * Fix rpb/imd loading with a path (#3047)
     111 * Add support for using overviews in GDALDataset::BlockBasedRasterIO() (#3124)
     112 * Take into account SIGNEDBYTE for GetStatistics() & GetHistogram() (#3151)
     113 * Add GDALReadOziMapFile() and GDALLoadOziMapFile() to read projection
     114   and georeferencing information from OziExplorer .MAP files.
     115 * Added declarations for GDALLoadTabFile() and GDALReadTabFile()
     116 * Add missing case for CInt16 and CInt32 in GDALNoDataMaskBand and GDALNoDataValuesMaskBand
     117 
     118Utilities :
     119 * gdaldem: new for GDAL/OGR 1.7.0 (#2640)
     120 * gdalinfo:
     121    - add -norat switch
     122    - do not report RPC or GEOLOCATION metadata with -nomd
     123    - Use pretty wkt to display GCP projection
     124 * gdalwarp:
     125    - fix cutline blend distance setting (#2733)
     126    - in -te case, adjust the resolution after computing the image dimensions
     127    - improved cutline support (#2733, #2847, #2884, #2984)
     128    - avoid overwriting an existing destination file that cannot be opened in update mode with a new GTiff file
     129    - better heuristics to guess output extent when projection from lat/long world
     130      extent to other world global projections (#2305)
     131 * gdaltindex:
     132    - Avoid unnecessary error message in gdaltindex when creating a new shapefile (#2779)
     133    - Rewritten to use OGR API instead of ShapeLib API, so as to produce .prj files more easily (#982)
     134 * gdal_contour:
     135    - make -3d option work even after -fl option (#2793)
     136    - Call GDALGetProjectionRef() on the dataset, not the raster band (#3062)
     137 * gdalbuildvrt:
     138    - Add -separate, -allow_projection_difference, -te, -tr, -q, -addalpha options
     139    - Add -srcnodata and -vrtnodata options (#3254)
     140    - Add -hidenodata option (#3327)
     141    - Avoid accidental overwriting of a non VRT dataset due to revered filename order
     142    - Fix -resolution lowest/highest (#3198)
     143 * gdaladdo: add -clean option (#2915)
     144 * gdaladdo: add -q option
     145 * gdal_grid: Add support for spatial filtering with -clipsrc option
     146 * gdal_translate: support translation of a dataset with subdatasets if the parent has bands
     147 * gdal_translate: Add 'gray' as a value of -expand rgb option
     148 * gdal_translate: Add -unscale commandline option
     149 * gdal_merge.py: Add progress report
     150 * gdal_vrtmerge.py: Fix -separate case (#2836)
     151 * gdal_vrtmerge.py: Write the <SourceProperties> element (#1985)
     152 * gdal_retile.py: add lanczos resampling (#2859)
     153 * gdal_fillnodata.py: ensure dstfile support works by copying source (#2866)
     154 * GDAL2Tiles: --srcnodata support + fixed KML rendering for -p raster
     155 * rgb2pct.py: Added ability to use a preexisting color table from a file (#2958)
     156 * pct2rgb.py and rgb2pct.py : Copy the GCPs and their projection to the target dataset.
     157 * classify.py: Fix order of args to numpy.ones() and numpy.zeros() (#3089)
     158 * hsv_merge.py: New sample script to greyscale as intensity into an RGB image,
     159                 for instance to apply hillshading to a dem colour relief.
     160 * support filename globbing for various Python scripts (#2783)
     161 * --formats will add 'v' in report on drivers that support virtual io
     162 * all utilities and scripts : consistently advertize -q as the official quiet
     163                               option, but accept both -q and -quiet (#3820)
     164
     165Changes in various drivers :
     166 * Implement support for overviews on subdatasets for HDF4, HDF5, NetCDF, NITF, XPM, TERRAGEN, PCIDSK (#2719)
     167 * Add support for 64bit offsets in /vsisubfile, JPEG and JP2ECW drivers
     168 * External overviews support added to some drivers (JDEM, ...)
     169 * Avoid incorrect GEOGCS AXIS settings (#2713)
     170 * Use GDALCheckDatasetDimensions() and GDALCheckBandCount() in various drivers
     171 * Many memory leak fixes (HDF5, HKV, Leveler, MFF, NITF, RMF, JPEG2000, WCS ... drivers)
     172 * Many fixes to improve robustness against corrupt data in many drivers
     173 * Error out when trying to open a read-only dataset in update mode (#3147)
     174 * Ensure that the same JPEG2000 driver that has been used with CreateCopy() is used to re-open it (#1596)
     175
     176ADRG driver:
     177 * Support PSP != 100 (#3193)
     178 
     179AIG driver:
     180 * Differ opening of the RAT only when GetDefaultRat() is called.
     181   Will improve performances and make less likely the error message of #3031
     182
     183AAIGRID driver:
     184 * Fix bad reading of AAIGRID dataset whose last line doesn't have a linebreak character (#3022)
     185 * Make the ArcInfo ASCII driver more Mac-compatible. (#3212)
     186
     187BAG driver :
     188 * New for GDAL/OGR 1.7.0
     189 
     190BLX driver:
     191 * Implement progress callback in CreateCopy() (#2830)
     192
     193BMP driver:
     194 * Modify GetGeoTransform() to return geotransform based on the resolution
     195   information in the BMP header if nothing else is available (ESRI merge).
     196 * use pam functions properly for geotransform when not using world file
     197 
     198BSB driver:
     199 * Fix several issues with BSB files reading (#2782)
     200 * Handle properly more than 256 GCPs (#2777)
     201 * Add logic to chip GCPs around to avoid split over dateline problems (#2809)
     202 * Add logic to reproject GCPs into Mercator for mercator projected images.
     203 
     204DTED driver:
     205 * Re-enable DTED driver to recognize files not starting by a UHL record (#2951)
     206
     207ECW driver:
     208 * Enable the JP2ECW driver to open JP2 files with the VSILAPI
     209 * Fix build with MSVC2008  (#2850)
     210 * Fix memory overwrite while zooming an ECW image (#2934)
     211 * Speed-up de-registeration of the driver that can take up to 3 seconds (#3134)
     212
     213EHDR driver:
     214 * Add color table update.  Add limited support for floating point
     215   files (.flt) (ESRI Merge)
     216 * added support for SIGNEDBYTE pixels (#2717)
     217 * Restructure stats handling so pam capture works right when stx write fails
     218 * improve a bit .clr reading (#3253)
     219 
     220ENVI driver:
     221 * Move RPC info into the RPC domain (#3063)
     222 * Converted to using VSI Large File API (#3274)
     223 * re-enabled complex support (#3174)
     224
     225EPSILON driver:
     226 * New for GDAL/OGR 1.7.0
     227 * Mainly used coupled with Rasterlite
     228 
     229ERS driver:
     230 * Added PIXELTYPE support to report/create SIGNEDBYTE (#2902)
     231 * Give precidence to PAM SRS, and even check for .aux file.  (ESRI Merge)
     232
     233FAST driver:
     234 * Support 7 bands (#3307)
     235 
     236Fujibas driver:
     237 * Fix to work on big-endian hosts
     238
     239GenBin driver:
     240 * Implemented custom class for 1bit (U1) files (#2730)
     241 * Fix inverse flattening computation (#2755).
     242 * Added U2 and U4 support
     243 * Look for LSB, assuming MSB if not found (#2730)
     244
     245GeoRaster driver:
     246 * Fix compression problems
     247 * Add MaskBand support
     248 * Support UNICODE metadata
     249 * Support cross database schema/user access
     250 * add COORDLOCATOR create option
     251
     252GeoTIFF driver :
     253 * Add 8/12bit jpeg in tiff support
     254 * Add support for creating external BigTIFF overview files,
     255   with BIGTIFF_OVERVIEW configuration option. (#2785)
     256 * Add support for deleting a color table (#2421)
     257 * Add logic for Imagine citation parsing
     258 * Add logic for encoding and reading ESRI PE string from citation.
     259 * Add support for reading and writing vertical datum info from geotiff
     260 * Changes to units handling.  (#2755)
     261 * Optimize opening speed by defering fetching the coordinate system till GetProjectionRef (#2957)
     262 * Optimize GTiffRasterBand::IReadBlock() for multi-band interleaved case.
     263 * Avoid uncesserary re-writting the TIFF directory (#3021)
     264 * Use official value for inverse flattening of the WGS84 ellipsoid (#2787)
     265 * Add metadata domain for XML documents (#2786)
     266 * Make GTiff driver friendly with files with huge number of bands and pixel interleaving (#2838)
     267 * Avoid precaching other bands if block cache size is not big enough to accomodate them (#2838)
     268 * Internal libtiff (4.0.0beta5) and libgeotiff (1.3.0beta) upgraded
     269 * use the SetCitationToSRS call for the PCSCitationGeoKey in a similar fashion to the GTCitationGeoKey (#2933)
     270 * NBITS set for GTiffOddBits.  YCbCr JPEG added as a compression type.
     271   generate MINISWHITE IMAGESTRUCTURE metadata item.  Set missing blocks
     272   to the nodata value if there is one.  (ESRI Merge)
     273 * Support GeoTIFF with only ProjectedCSTypeGeoKey defined (#3019)
     274 * External overviews: try to preserve the bit depth of the original image
     275 * Allow reading and creation of big all-in-one-strip 8bit TIFF (#3094)
     276 * Handle projection methods for Google Mercator special case (#3217)
     277
     278GFF driver :
     279 * Fix support for big endian host (#2832)
     280 * Add pam, and overview support.  Switch to VSI*L API to support virtualio (#3014)
     281
     282GIF driver :
     283 * Introduced a BIGGIF driver to handle GIF files without using the
     284   slurp into memory approach. (#2542)
     285 * CreateCopy() reports now progress
     286 * Replace internal libungif by giflib-4.1.6 (#1825)
     287 * Read projection and georeferencing from OziExplorer .MAP file if possible.
     288
     289GRASS driver:
     290 * Add support for GRASS 7.0 GDAL and OGR plugins (#2953)
     291 * Use GRASS_GISBASE for GDAL GRASS driver instead of hard-coded path (#2721)
     292
     293GRIB driver:
     294 * only scan for PDS templates in GRIB2 files (#2858)
     295 * Avoid dumping GribLen debug message if built with -DDEBUG.
     296 * Remove verbosity from GRIB driver (#2887)
     297 * Make GRIB detection thread safe (#3209)
     298 * Check that bands have the same dimensions (#3246)
     299
     300GS7BG driver:
     301  * Recognize version 2 datasets (#3123)
     302 
     303HDF4 driver :
     304 * Allow HDF4 subdataset name to include Windows letter drive (#2823)
     305
     306HDF5 driver :
     307 * subdatsets need to be numbered from 1 not 0 (#2462)
     308 * Block size recognition. (#2270)
     309 * Fix initial value for nGCPCount in HDF5ImageDataset (#2774)
     310 * Fixes to type classification, and to avoid listing subdatsets for unsupported pixel data types (#2941)
     311 * Mark PAM for not saving .aux.xml files at this level.  Directly open
     312   subdatasets in HDF5Dataset::Open() if there is only one subdataset.
     313 
     314HFA driver:
     315 * Support reading and evaluating 3rd order xforms (#2716)
     316 * Various improvements to SRS support, particularly to preserve PE
     317   compatability.  (#2755)
     318 * Added HFAEntry::RemoveAndDestroy() method to remove nodes from tree (#2421)
     319 * Added support for deleting color tables (#2421)
     320 * Add a scaled progress monitor for HFADataset::IBuildOverviews()
     321 * Fix HFA u2 compression/decompression (ESRI merge)
     322 * Add support for reading compressed s8 HFA (#3152)
     323 * Defer opening overviews till they are first requested (#3155)
     324 * Support multiple excluded values (#3252)
     325 * added a variety of additional coordinate system based types missing in some files (#3262)
     326 * Various fixes (#2421, #2842, #2755, #3082, #2730)
     327
     328Idrisi driver:
     329 * Writing text file in CRLF format (#3199)
     330 * forward porting esri changes + other changes
     331 * provide default values on Create() (#3243)
     332
     333INGR driver:
     334 * Fix INGR driver that was failing on big endian hosts (#2898)
     335 * Fix RLE support (#3106)
     336 * Added overview building (#2904)
     337
     338JPEG driver:
     339 * Enable the JPEG driver to read and create 12bit JPEG images when JPEG12_ENABLED=yes
     340 * Internal libjpeg: additional changes to ensure operation with IPP enabled apps (#2606,#2845)
     341 * JPEG read optimizations : differ extraction of EXIF metadata and internal maskband
     342 
     343JPEG2000 (JasPer) Driver:
     344 * Allow proper reading of JP2 images where dimensions are not multiple of 256 (#2399)
     345 * Add a virtual I/O interface to able to read from/write to JPEG2000-NITF files
     346 * Do not deregister jas_image_clearfmts() to avoid failure when gdal_translat'ing from JP2 streams
     347 * Add proper reading of YCbCr images as RGB
     348 * fix decoding of bit depth for BPCC and PCLR boxes
     349 
     350JP2KAK (Kakadu) Driver :
     351 * Fix band selection from ycbcr to rgb converted images in DirectRasterIO (#2732)
     352 * Support jpc vsisubfile streams
     353 * add handling of reversibly compressed data with 9 to 16 bits precision (#2964)
     354 * Modify transfer_bytes() buf32 case to offset/scale based on precision. (#2964)
     355   Fixed _WriteTile() lossless 16bit case to avoid improper 32K offset.
     356   Added support for NBITS image structure metadata, and creation option.
     357 * Added logic to limit tiles to 64K due to jpeg2000 limitation. (ESRI Merge)
     358 * Fix offseting of 16U buf32 data (#3027)
     359 * Support 16u/16s imagery through DirectRasterIO interface (#3049)
     360 * Support external overviews as an override to internal overviews
     361 * Rework jp2kak support to use natural kakadu builds (Windows build)
     362 * ensure external overviews get used if available (#3276)
     363 * add preliminary multi-threading read support via DirectRasterIO()
     364
     365
     366LAN driver:
     367 * Give preference to PAM coordinate system since built-in info is very
     368  limited.  Fallback to PAM geotransform if internal missing. (ESRI Merge)
     369
     370LCP driver:
     371 * Add projection file support (#3255)
     372 
     373MEM driver:
     374 * Allow creating bands of more than 2GB each if size_t is large enough.
     375 * Added GetInternalHandle() implementation to fetch band memory buffer
     376
     377MrSID driver:
     378 * Implement faster resampling for 1:1 case
     379 * Improve stream implementation so it works for jp2 with v7
     380 * Make the JP2MrSID driver accept .ntf extension to allow reading jpeg2000
     381   datastream in NITF files
     382 * Avoid reporting large metadata objects.  Add MG version to metadata.
     383
     384NetCDF driver:
     385 * Fix handling of pixel validity mask (#3112)
     386 * correct a problem with 5+ dimensional data access (#2583)
     387 * fix y flip detection in common case (#2654)
     388 * add support for subdataset names with Windows full path names, like NETCDF:D:\...
     389 
     390NITF driver:
     391 * Add support for reading & creating large (>4GB) NITF files.
     392 * Add support for NITF/JPEG2000 overviews (JP2KAK)
     393 * Add support for reading & creating 12bit JPEG compressed NITF files when JPEG12_ENABLED=yes
     394 * Add support for creating a NITF file with many bands and big TRE content
     395 * Add support for creating several uncompressed images in a NITF file (#2989)
     396 * Add support for creating M3 (masked multi-block JPEG compressed) images
     397 * Add support for unpacking a wider variety of pixel depths.
     398 * Add support for overriding IGEOLO with GEOLOB TRE precision georef (#3180)
     399 * Add support for for CFloat32 reading & writing (#2526)
     400 * Add support for reading and writing NITF file with large single block (#3263)
     401 * Allow Jasper driver to be used for NITF IC=C8 (JPEG2000) CreateCopy() if JP2ECW is not available
     402 * Allow JP2MrSID driver to be used for reading JPEG2000 datastreams in NITF
     403 * Avoid issues when reading M3 single block images
     404 * Fix CreateCopy() of multi block JPEG-NITF
     405 * Various bugfixes (#2940, #2912, #3029, #3088)
     406 * Support NITF file with a color table and JPEG2000 data content (#3110)
     407
     408NWT_GRC / NWG_GRD drivers (Northwood/VerticalMapper) :
     409 * New for GDAL/OGR 1.7.0
     410 
     411OGDI driver:
     412 * improve finding of PROJ.4 include files for OGDI (#1242)
     413
     414PCIDSK driver (old driver):
     415 * Added worldfile reading. Added PAM fallback for geotransform.
     416 * Added support for default overviews (ie. .ovr or .rrd).  (ESRI Merge)
     417 * fail somewhat gracefully on compressed images
     418 
     419PCIDSK driver (new driver):
     420 * New for GDAL/OGR 1.7.0, using the PCIDSK SDK
     421 
     422PDS driver:
     423 * Transfer various keywords to metadata
     424 * Made keyword handler more in complaint with ODL (#2956)
     425 * Support detached files with an offset (#3177)
     426 * Support .LBL labelled compressed files
     427
     428PNG driver :
     429 * Upgrade internal libpng to 1.2.35
     430 * Only write a world file if the source datasource has a geotransform
     431 * Allow writing a nodata value of 0 as the transparent color value (#3208)
     432 
     433R driver:
     434 * New for GDAL/OGR 1.7.0
     435 
     436Rasterlite driver
     437 * New for GDAL/OGR 1.7.0
     438
     439RIK driver:
     440 * Improved error checking
     441 
     442SAGA GIS Binary driver:
     443 * New for GDAL/OGR 1.7.0
     444
     445SDE driver :
     446 * Fix exporting ArcSDE raster results in a displaced image (#2063)
     447 
     448SRP driver (ASRP/USRP):
     449 * New for GDAL/OGR 1.7.0
     450 
     451SRTM driver :
     452 * Set GDALMD_AOP_POINT metadataitem (#1884)
     453 
     454TIL driver (EarthWatch .TIL) driver:
     455 * New for GDAL/OGR 1.7.0
     456
     457VRT driver :
     458 * Honour the INIT_DEST warp option (#2724)
     459 * Improve performance of LUTs in VRTComplexSource from O(n) to O(log2(n)) (#3003)
     460 * Implement (advertized in doc) support for SetMetadataItem( "source_0", szFilterSourceXML, "vrt_sources" ) on a VRTSourcedRasterBand (#3052)
     461 * Implement GetFileList() to list the source files
     462 * Fix wrong initialization of destination buffer in VRTSourcedRasterBand::IRasterIO() in case of not standard pixel/line spacing. (#2867)
     463
     464WCS driver:
     465 * do not try to parse HTML content, which is returned by some provider when the server doesn't exist
     466 * added HttpAuth and UserPwd options for authentication (#3091)
     467 
     468WKT Raster driver:
     469 * New for GDAL/OGR 1.7.0
     470
     471WMS driver:
     472 * Support TMS/formatted URLs in WMS minidriver (#2878)
     473 * Be tolerant if we have required 3 bands and got 4, or the other way round
     474 * Declare a user agent string
     475
     476== OGR 1.7.0 - Overview of Changes ==
     477
     478Utilities:
     479 * ogrinfo: Preserve order of source layers specified on ogrinfo command line,
     480            and use GetLayerByName() which enables to read some hidden layers
     481            like public.<table> layers from a PG database (#2922, #2026)
     482 * ogr2ogr:
     483    - Add -clipsrc and -clipdst option to clip geometries to the specified extents
     484    - Add -fieldTypeToString option to conveniently cast any fields of given type to fields of type string (#2968)
     485    - Add -progress option for ogr2ogr to displaying progress (#2998)
     486    - Add -wrapdateline option to ogr2ogr to deal with geometries that cross 180 degree longitude (#3158)
     487    - Add -dialect flag to specify SQL dialect
     488    - Preserve order of source layers specified on command line (#2922)
     489    - -overwrite and -append now automatically imply -update (#3048)
     490    - Support converting to a format after field name "laundering" (#3247)
     491  * ogrtindex:
     492    - Skip layers whose schema does not match instead of terminating (#3141)
     493    - Add a -accept_different_schemas option for non-MapServer use cases (#3141)
     494    - Set SRS to tileindex when one is found in the tiles
     495  * ogr2vrt.py : new script that will create a VRT corresponding to a
     496    source datasource (sample script for the moment, not promoted officially)
     497 
     498Core :
     499 * Improved OGR feature style (#2875, #2808)
     500 * Considerable speed-up of ExportToWkt() for very large geometries
     501 * Added new OGR_GEOM_AREA special field (#2949)
     502 * ensure forceToMultiLineString() works for MultiPolygons (#2735)
     503 * Various fixes in OGR SQL engine (r16116, #2996, #2788, #3143, #3144)
     504 * Add OGREnvelope::Intersect()
     505 * Add OGR_G_ApproximateArcAngles() for ellipses
     506 * Fix crash on Ubuntu 8.10 in GetFieldAsString() because of (too) strict guard logic (#2896)
     507 * add field type max so we can iterate through all possible values
     508 * Avoid making a 2D5 geometry from a 2D only linestring when reprojecting
     509
     510OGRSpatialReference :
     511 * Upgrade EPSG derived files to EPSG 7.1
     512 * Added support to operate on COMPD_CS coordinate systems
     513 * Added support for importing spatial reference definitions from the OziExplorer .MAP files.
     514 * Introduce static methods to destroy OGRSpatialReference and OGRCoordinateTransformation objects
     515 * Expose more of the axis orientation API to C
     516 * Add missing Eckert 1, 2, 3 and 5 projections
     517 * Fix typos in proj4 conversion for Wagner projections
     518 * hack in EXTENSION nodes for google mercators (#3136)
     519 * Validates PROJCS with AXIS definitions (#2739)
     520 * Added support for urn:ogc:def:crs:OGC::CRS:84 (and CRS:83, CRS:27) per WMS spec.
     521 * Wide variety of improvements to preserve PE strings through a morphFromESRI()
     522   and morphToESRI() process (#2755)
     523 * Fix inversion of dictionnary filename and GEOGCS/PROJCS name in OGRSpatialReference::exportToERM() (#2819)
     524 * Fix SpatialReference::IsSame() for LOCAL_CS case (#2849)
     525 * Fix bug in ImportFromXML that prevented from retrieving projection method
     526 * Accept both href and xlink:href in OGC XML
     527 * improve us foot translation handling (#2901)
     528 * OGRSpatialReference::importFromUrl() : add a default 10 second timeout to avoid waiting forever when remote server is stalled
     529 * ensure we can translate mercator1sp with non-zero origin to proj4 (#3026)
     530 * ensure scalefactor preserved in somerc translation (#3032)
     531 * SRS_ESRI: attempt to correct equidistant cylindrical parameter morph (#3036)
     532 * SRS_ESRI: improve plate_carree parameter morphing (#3036)
     533 * SRS_PCI : Fix PCI projection string handling for UTM
     534 * esri_extra.wkt: correct equidistant conic definitions (#3086)
     535 * SRS_PANORAMA : Added support for British National Grid and Pulkovo 1995 datums.
     536 * Improve recognition of WKT text strings when translating into proj4 hard-coded datum names, in particular nzgd49
     537   (also add ggrs87, carthage, hermannskogel, ire65); Fix ellipsoid parameters for modified airy (#3104)
     538 * OSRGetEllipsoidInfo() available for various OGR SRS modules
     539 * added support for OGC:CRS84 and similar srses from wms/wcs spec in SetFromUserInput (#3090)
     540 
     541BNA driver :
     542 * Fix output of BNA driver with polygons with inner ring (#2985)
     543 * Proper CRLF output on Windows (#3256)
     544 
     545CSV driver :
     546 * Add support for reading and writing CSV files with semicolon or tabulation
     547   as the field separator (#2925, #2136)
     548 * Add automatic treatment of WKT column as geometry
     549 * Add 'CREATE_CSVT' layer creation option
     550
     551DXF driver :
     552 * New for GDAL/OGR 1.7.0
     553 
     554Geoconcept driver:
     555 * Fix 'private Class and SubClass headers are inverted' (#2919)
     556 * Fix error in writing 2.5D/3D export file (#2921)
     557
     558GeoJSON driver:
     559 * updated JSON-C library to version 0.9
     560 * use VSIF*L API
     561
     562GML driver :
     563 * Speed-up considerably parsing of GML coordinates in big geometries, in particular on Windows
     564 * Add support for gml3.1.1 srsDimension attribute, to deal with 3D geometries (#2311)
     565 * Support multiple <gml:pos> elements in linearrings of polygons (#3244)
     566 * Limited support for GML3
     567 * Support direct use of FIDs as long as they are all numeric or they have a completely fixed prefix (#1017)
     568 * Fix OGRGMLLayer::GetFeatureCount() if there's a .XSD file available (#2969)
     569 * Added support for out-of-band attributes on features (for NAS)
     570 * Adding the date field type to xsd writer and precision info for OFTReal fields. (#2857)
     571
     572GPX driver:
     573 * Add GPX_SHORT_NAMES configuration option to make the GPX driver report shorter field names
     574   and avoid duplicated field names once translated to shapefile (#2966)
     575 * Write the <bounds> element (write only)
     576 * Avoid escaping XML content when writing <extensions>.
     577 * Add appropriate xmlns when detecting Garmin GPX extensions
     578
     579GRASS driver:
     580 * Do not report 3D geometries for 2D GRASS maps (#3009)
     581
     582GTM (GPSTrackMaker) driver :
     583 * New for GDAL/OGR 1.7.0 (#3113)
     584
     585ILI driver :
     586 * Improved curve segmentation algorithm
     587 * ILI1: Support for multiple point geomtries
     588 * ILI1: Support Real and Integer column types
     589
     590Ingres driver:
     591 * Utilize the new OGC based ingres capabilities (#3159)
     592
     593KML driver:
     594 * Support reading MultiGeometry and layers with mixed geometry type.
     595 * Speed-up considerably the reading of huge KML geometries (#3005)
     596 * Speed-up considerably with huge number of layers
     597 * Moved the location of the Style element to match the OGC Schema (#2858)
     598 * Advertize 25D geometry type when relevant (#1803, #1853, #2181)
     599 * Relax KML driver about xmlns (#3004)
     600
     601MySQL driver :
     602 * Fix mysql driver compilation with mysql 5.1/g++-4.3.2 (Mandriva 2009.1) (#2972)
     603 * Fixed bug MySQL driver truncating decimal places for double field type. (#2852)
     604
     605OCI driver :
     606 * OCI varchar2 columns can be up to 4000 bytes (#2876)
     607
     608ODBC driver :
     609 * make it slightly less likely that the srs_tablename parsing will interfere with complex DSNs.
     610 * support for schemas (#1969)
     611
     612OGDI driver :
     613  * fix to avoid applying old spatial filter to unrelated layer
     614  * fix to force ResetReading() when changing current layer
     615
     616PGEO driver :
     617 * Recognize more ESRI shape type constants. (#2991, #3100)
     618 * implement GetFIDColumn() and GetGeometryColumn() methods (#2694)
     619 
     620PostgreSQL driver:
     621 * Add support for tables with 'geography' column type introduced in PostGIS 1.5 (#3216)
     622 * Extend support of schemas in PG driver with 2 new options in the connection string:
     623   active_schema=foo and schemas=foo[,bar] (#522 and #525)
     624 * Implement OGRPGTableLayer::CreateFeature() by using UPDATE instead of DELETE + INSERT (#2557)
     625 * Implement SetNextByIndex() for layers of PG datasources (#3117)
     626 * Support PG 'real' data type in tables (#3006)
     627 * Speed-up PG database opening by avoiding 2 SQL requests per table
     628 * Avoid evaluating GetFieldIndex() on each field of each feature,
     629   which can be very expensive if the layer has many fields
     630 * allow ST_AsBinary with non binary connections
     631 * added a configuration option PG_SKIP_VIEWS.
     632 
     633GeoRSS driver :
     634 * New for GDAL/OGR 1.7.0 (#2726)
     635
     636OCI driver:
     637 * support blob column binding
     638 
     639PCIDSK driver :
     640 * New for GDAL/OGR 1.7.0
     641 
     642Shape driver :
     643 * Handle duplicate field names in shapefile driver. (#3247)
     644 * Support for opening and handling .DBF files > 2 GB (#3011)
     645 * Optimize to use shape bounds for spatial test before organizing poly (#2775)
     646 * Support for alternate date format (#2746)
     647 * Improve/fix TestCapability() on OGRShapeLayer
     648 * Refreshed shapelib from upstream
     649 
     650S57 driver :
     651 * Fix incorrect return value of GetFeatureCount() on S57 SOUNDG layer when SPLIT_MULTIPOINT=ON;
     652   also avoid warning on that layer when ADD_SOUNDG_DEPTH=OFF (#3163)
     653 
     654SQLite driver:
     655 * Add creation and write support in SpatiaLite-compatible databases
     656 * Add SPATIAL_INDEX creation option for SpatiaLite tables if linked against
     657   libspatialite (default to YES)
     658 * Implement OGRSQLiteTableLayer::TestCapability(OLCFastFeatureCount)
     659 * Implement OGRSQLiteLayer::GetFIDColumn() and GetGeometryColumn()
     660 * Implement TestCapability(OLCRandomRead)
     661 * Add a SQLITE_LIST_ALL_LAYERS configuration option to list all(non-spatial)
     662   tables into a SQLite DB even if there are spatial tables
     663 * Avoid reporting the primary key column as a regular column.
     664 * Better precision for double values in CreateFeature()
     665
     666VFK driver:
     667  * New for GDAL/OGR 1.7.0
     668
     669VRT driver:
     670 * Allow fast spatial filtering in the VGS_Direct case
     671 * Add support for CreateFeature(), SetFeature() and DeleteFeature() operations
     672 * Added field definition and style control
     673 * Added new vrt/schema creation capability (@dummy@ datasource, ogr2vrt.py script)
     674 * Implement 'SrcRegion' element
     675 * Add a 'reportSrcColumn' attribute to the 'GeometryField' to avoid reporting
     676   the x,y,wkt or wkb source fields in the VRT layer field definition
     677 * Forward TestCapability(), GetExtent(), SetNextByIndex() to source layer when possible
     678 
     679XPlane/Flightgear driver:
     680 * Improve handling of Bezier curves (#3030)
     681 * Support new file names used by XPlane 9.00 & later
     682 * Cut into 2 pieces airway segments that cross the antemeridian
     683 * Add new layer 'Stopway' that contains the shape of the stopway/blastpad/over-run of a runway
     684 * Recognize code 16 and 17 for seaplane bases and heliports and add a new field to APT layer
     685
     686== SWIG Language Bindings ==
     687
     688General:
     689 * Recommanded SWIG version is 1.3.39
     690 * Added API :
     691    - GDAL: gdal.!FilldoData(), gdal.!FileFromMemBuffer(), gdal.!Unlink(), gdal.!ApplyGeoTransform(), gdal.!InvGeoTransform(), Band.!GetUnitType(), Band.!GetBand(), Band.!ComputeStatistics(), Band.!HasArbitraryOverviews(), !RasterAttributeTable.!GetLinearBinning() and !SetLinearBinning(), extend [Band|Dataset].[!ReadRaster|!WriteRaster] to accept pixel, line and band spacing parameters
     692    - OGR: ogr.!GeneralCmdLineProcessor(), Geometry.Segmentize(), !FieldDefn.!GetTypeName(),Geometry.!ApproximateArcAngles()
     693    - OSR: osr.!ImportFromMICoordSys(), osr.!ExportToMICoordSys(), !SpatialReference.Clone(),osr.!EPSGTreatsAsLatLong(), osr.!ImportFromEPSGA()
     694 * Make resampling an optionnal parameter for gdal.!RegenerateOverview(),
     695   to be consistant with gdal.!RegenerateOverviews()
     696 * NONNULL checks have been added to check various arguments of methods
     697 * add missing constants : DCAP_VIRTUALIO, color interpretations, OGR constants
     698
     699CSharp bindings :
     700 * Add support for !GetFieldAsStringList, !GetFieldAsDoubleList and !GetFieldAsIntegerList in the C# wrapper (#2839)
     701 * Support MSVC2008 builds with the csharp interface (#2862)
     702 * Change the dll mapping rules to support the recent MONO versions
     703 * Use GC pinned arrays instead of the double copy in the RasterIO functions (#3073)
     704 * Add typemaps to support custom CPLErrorHandler via C# swig bindings
     705
     706Perl bindings :
     707 * in Polygonize make a local copy of the parameters as they are potentionally edited
     708
     709Python bindings :
     710 * Add support for Python 3.X. Compatibility with Python 2.X preserved (#3265)
     711 * Remove old-generation Python bindings (gdal/pymod).
     712 * Add Python binding's version description capabilities (#3137)
     713 * NUMPY : Make Band|Dataset.!ReadAsArray() take into account preallocated array (#2658, #3028)
     714 * Various memory leaks fixed
     715 * Fix gdal.!RegenerateOverviews(), Feature.!GetFieldAsStringList(),
     716   Feature.!GetFieldAsIntegerList(), Feature.!GetFieldAsDoubleList(),
     717   Transform.!TransformPoints and CoordinateTransformation.!TransformPoints
     718 * Extend python !TransformPoints typemap to accept any sequence (#3020)
     719 * Make Geometry iterable (#1886)
     720 
     721Java bindings (general changes):
     722 * Maintained again. A lot of changes to get them into clean state.
     723 * !RasterIO API : added API for standard Java arrays in addition to !DirectByteBuffer
     724 * Javadoc available at http://gdal.org/java
     725