Gdal

Latest version: v3.9.0

Safety actively analyzes 628903 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 9

1.8.0

Port:
* RFC 7 : Use VSILFILE for VSI*L Functions (3799)
* RFC 30 : Unicode support for filenames on Win32
* Implement Rename() for /vsimem
* New virtual file system handlers :
- /vsicurl/ : to read from HTTP or FTP files (partial downloading)
- /vsistdin/ : to read from standard input
- /vsistdout/ : to write to standard output
- /vsisparse/ :mainly to make testing of large file easier
- /vsitar/ : to read in .tar or .tgz/.tar.gz files
* Add C API to create ZIP files
* Add support for writable /vsizip/
* Add VSIBufferedReaderHandle class that is useful to improve performance when
doing backward seeks by a few bytes on underlying file handles for which
backwardseeks are very slow, such as GZip handle
* Add service for base64 decoding
* CPL ODBC : Add transaction support (3745)
* CPL ODBC: Increase the default connection timeout to 30 sec
* Add VSIStatExL() that has a flag to specify which info is really required
(potential speed optimization on slow virtual filesystems such as /vsicurl)
* Add VSIIsCaseSensitiveFS() to avoid ugly ifndef WIN32 / endif in the code of
various drivers
* Add Recode() convenience method to CPLString
* HTTP downloader: add PROXY and PROXYUSERPWD options (and GDAL_HTTP_PROXY and
GDAL_HTTP_PROXYUSERPWD configurations option) to allow request to go through a
proxy server.

Core:
* RFC 24: progressive/async raster reading
* On Unix, add capability of opening the target of a symlink through GDALOpen()
even if it not a real filename. Useful for opening resources expressed as
GDAL virtual filenames in software offering only file explorers (3902)
* Assume anything less than 100000 for GDAL_CACHEMAX is measured in megabytes.
* Read cartesian coordinates if applicable in GDALLoadOziMapFile().
* Avoid being overly sensitive to numeric imprecision when comparing pixel
value and nodata value in GDALRasterBand::ComputeStatistics()/
ComputeRasterMinMax(), especially for GeoTIFF format where nodata is
stored as text (3573)
* Better handling of NaN (not a number) (3576)
* Add C wrapper GDALSetRasterUnitType() for GDALRasterBand::SetUnitType() (3587)
* Add GDALLoadRPCFile() to read RPCs from GeoEye _rpc.txt files (3639)
* Allow GDALLoadRPB/RPC/IMDFile() to be called directly with the RPB/RPC/IMD
filename
* In GDAL cache block, use 64-bit variables for cache size
* Add GDALSetCacheMax64(), GDALGetCacheMax64() and GDALGetCacheUsed64() (3689)
* Improve formatting of seconds in DecToDMS()
* Support negative nPixelOffset values for RawRasterBands
* GDALDatasetCopyWholeRaster(): improve performance in certain cases by better
fitting to input/output block sizes
* Add GDALRasterBandCopyWholeRaster()
* Make sure band descriptions are properly captured and cloned (3780)
* GDALDataset/GDALRasterBand::CreateMaskBand(): invalidate pre-existing raster
band mask that could be created lazily with GetMaskBand()/GetMaskFlags(),
so that a later GetMaskBand() returns the newly created mask band
* Overview computation : speed improvements in resampling kernels
* Fix dereferencing of open datasets for GetOpenDatasets (3871)
* Add DllMain callback to set-up and tear-down internal GDAL library
resources automatically (3824)
* List .aux file if it used in GDALPamDataset::GetFileList()
* PAM dataset : try retrieving projection from xml:ESRI metadata domain

Algorithms:
* rasterize: Burn the attribute value in ALL the bands during rasterization. (3396)
* geoloc : Allow using XBAND and YBAND with height == 1 in the case of a regular
geoloc grid, suc h as for LISOTD_HRAC_V2.2.hdf (3316)
* GDALFillNodata(): improve&fix progress report
* warper : Try to determine if we will need a UnifiedSrcDensity buffer
when doing memory computations (3515).
* warper : GDALSuggestedWarpOutput2(): use more sample points around the edge
of the raster to get more accurate result (3742)
* warper : added (preliminary) support for mask bands that aren't nodata or alpha
* warper : integrate Google Summer of Code OpenCL implementation of warper
* gdalgrid: Move ParseAlgorithmAndOptions from apps/gdal_grid.cpp to
alg/gdalgrid.cpp (3583)
* RPCTransformer: take into account optional DEM file to extract elevation
offsets (RPC_HEIGHT_SCALE and RPC_DEM transformation options added) (3634)
* GDALReprojectImage() : correctly assign nSrcAlphaBand and nDstAlphaBand (3821)
* gdalgrid : Properly initialize the first nearest distance in GDALGridNearestNeighbor().

Utilities :
* gdallocationinfo : new
* nearblack: add -setalpha option to add/set an alpha band + -of, -q, -co
* nearblack: add -setmask option to use a mask band to mask the nodata areas
* gdalbuildvrt: support stacking ungeoreferenced images when using -separate,
provided they have the same size (3432)
* gdalbuildvrt: implement a check to verify that all color tables are identical
* gdalbuildvrt: automatically create a VRT mask band as soon one of the sources
has a dataset mask band (non-trivial = neither alpha, neither alldata, neither nodata)
* gdalbuildvrt: use OSRIsSame() to check if all source raster have same SRS (3856)
* gdal_translate: Transfer GEOLOCATION in the -of VRT case if spatial
arrangement of the data is unaltered
* gdal_translate : add support for resizing datasets with mask bands
* gdal_translate : add -mask option to add a mask band from an input band/mask band.
Also extend syntax for the value of the -b option to allow specifying mask band as input band
* gdal_translate : support '-a_nodata None' as a way of unsetting the nodata value
* gdal_translate : invalidate statistics when using -scale, -unscale, -expand, -srcwin,
-projwin or -outsize and a new -stats option to force their (re)computation (3889)
* gdal_rasterize: Add capability of creating output file (3505)
* gdaldem: add a new option, -compute_edges, that enable gdaldem to compute
values at image edges or if a nodata value is found in the 3x3 window,
by interpolating missing values
* gdaldem : add '-alg ZevenbergenThorne' as an alternative to Horn formula
for slope, aspect and hillshade
* gdaldem : support GMT .cpt palette files for color-relief (3785)
* gdalwarp: add -crop_to_cutline to crop the extent of the target dataset to
the extent of the cutline
* gdalwarp: add a -overwrite option (3759)
* gdal_grid : Properly use the spatial filter along with the bounding box.
* epsg_tr.py: added -copy format for INGRES COPY command
* hsv_merge.py: support RGBA dataset as well as RGB dataset, add -q and -of
options, avoid using hillband when it is equal to its nodata value
* val_repl.py: copy geotransform and projection from input dataset to output
dataset
* gdal_retile.py : assign color interpretation (3821)
* gdal_retile.py : add -useDirForEachRow option to create a different output structure (3879)
* Make gdal_translate and gdalwarp return non-zero code when block writing failed
for some reason (3708)
* loslas2ntv2.py : new utility : .los/.las to NTv2 converter
* gdal_calc.py : new utility
* Add -tap option to gdal_rasterize, gdalbuildvrt, gdalwarp and gdal_merge.py
to align on a standard grid (3772)

AAIGRID driver:
* Cast nodata value to float to be consistent with precision of pixel data in
GDT_Float32 case; small optimization to avoid reading the first 100K when
we know that the datatype is already Float32
* Allow reading files where decimal separator is comma (3668)
* Detect 1e+XXX as a real value among integer values (3657)
* Add a AAIGRID_DATATYPE configuration option that can be set to Float64
* speed-up CreateCopy(), particularly on windows, by buffering the output

AIGrid driver:
* Support sparse sets of tile files {w,z}001???.adf (3541)

BSB driver:
* Capture extension lines for headers
* Added UNIVERSAL TRANSVERSE MERCATOR, LCC and POLYCONIC handling (3409)
* provide an option (BSB_IGNORE_LINENUMBERS) to ignore line numbers as some
generators do them wrong but the image is otherwise readable (3776)
* Avoid turning missing values to index 255 (3777)

DODS driver:
* Compilation fix to support libdap 3.10

DTED driver:
* Add origin metadata in original format (3413)
* Report NIMA Designator field as 'DTED_NimaDesignator' metadata (3684)
* Fixes to read some weird DTED3 file

ECW driver:
* Support building against 4.1 SDK (compat with older versions maintained) (3676)
* Add alpha support with 4.1 SDK, and various configuration options
* Add pseudo powers of two overviews.

EHdr driver:
* Improvements to deal with http://www.worldclim.org/futdown.htm datasets

ENVI driver:
* Support tabulation character in .hdr files (3741)
* Support reading gzipped image file (3849)

ERS driver:
* Read "Units" child of the "BandId" node and set it as unit type for RasterBand.

FITS driver:
* Accept files whose metadata list doesn't end with 'END' (3822)

GeoRaster driver :
* Suppress error when testing SRID code as EPSG (3326)
* Several improvements and fixes (3424)
* Deprecates JPEG-B compression (3429)
* Fix GetColorInterpretation() on RGBA's alpha channel (3430)
* Allows OS authentication (3185)
* Add support for Point Cloud, add transaction control wrapper
* use OCI Bind to load VAT (3277)
* Change order of NODATA tag on XML metadata (3673)
* Add support for per band NoData value - Oracle 11g (3673)
* Add support to ULTCoordinate - (3718)
* Fix interleaving cache error (3723)
* Fix compress vs nbits order error (3763)
* Fix writing interleaved jpeg 3805 and reading default blocksize 3806
* Add create option blocking=(YES,NO,OPTIMUM) 3807, also fix 3812

GRASS driver:
* Update GDAL and OGR GRASS drivers to compile against GRASS 7.0SVN (2953)

GTiff driver :
* RFC 33 : Adjust PixelIsPoint handling (3838,3837)
* Refresh internal libtiff with upstream
* Refresh internal libgeotiff with upstream
* Add PREDICTOR_OVERVIEW configuration option to set the predictor value for
LZW or DEFLATE compressed external overviews; Also make sure that the
predictor value gets well propagated in the case of internal overviews (3414)
* Add a COPY_SRC_OVERVIEWS creation option (for CreateCopy()) that copies
existing overviews in the source dataset.
* Make GetScale() and GetOffset() retrieve values from PAM if not available in
internal metadata
* Use GCP info from PAM if available
* Support CreateCopy() on datasets with a color indexed channel and an alpha
channel (3547)
* Allow reading geotransform when opening with GTIFF_DIR prefix (3478)
* Add a warning when clipping pixel values for odd-bits band
* Make sure that 16bit overviews with jpeg compression are handled using 12bit
jpeg-in-tiff (3539)
* Add GDAL_TIFF_OVR_BLOCKSIZE configuration option to specify block size used
for overviews
* Read RPCs from GeoEye _rpc.txt files (3639)
* Implement GetUnitType() and SetUnitType(); make sure to remove
TIFFTAG_GDAL_METADATA tag if it existed before and there are no more
metadata; fix to make sure we can unset offset & scale stored in PAM
* Speed-up writing of blocks in case of multi-band 8 bit images
* Support TIFF_USE_OVR config option to force external overviews
* Add special ability to for xml:ESRI metadata into PAM
* Try to detect build-time vs runtime libtiff version mismatch (*nix only)
* Added logic to expand verticalcs using importFromEPSG() when possible
* Create internal masks with deflate compression if available
* Fix jpeg quality propagation (particularly remove warning when
using a deflate compressed internal mask band with jpeg compressed main IFD)
* Add support for JPEG_QUALITY_OVERVIEW configuration option for internal
overviews when adding them after dataset reopening
* auto-promote mask band to full 8 bits by default (unless
GDAL_TIFF_INTERNAL_MASK_TO_8BIT is set TO FALSE).
* add LZMA compression optional support (requires latest libtiff4 CVS HEAD)
* Supporting writing compound coordinate systems.

GTX driver:
* New for GDAL/OGR 1.8.0
* Read NOAA .gtx vertical datum shift files.

GXF driver:
* Cast nodata value to float to be consistent with precision of pixel data in
GDT_Float32 case
* Introduce a GXF_DATATYPE configuration option that can be set to Float64
* Use GDALGetScanline() instead of GDALGetRawScanline() so that SENS
is applied to normally return things in conventional orientation as
is assumed by the geotransform. (3816).

HDF4 driver:
* Prevent reading nonexistent subdatasets
* Allow reading 1D subdatasets, in particular for GEOLOC bands
* Workaround strange test that swaps xsize, ysize and nbands for the particular
case of the dataset of ticket 3316
* Speed up access to HDF4_SDS datasets; allow multi-line block dimension for
HDF4_EOS datasets (2208)
* HDF4_EOS_GRID : detect tile dimensions and use them as block size; increase
HDF4_BLOCK_PIXELS default value to 1,000,000 (3386)
* Support reading of L1G MTL metadata (3532)
* Read as HDF if HDFEOS returned 0 datasets
* Improve fetching the geolocation data in case of one-to-one mapping and
abcence of dimension maps (2079)
* Properly set the GCP projection for MODIS Aerosol L2 Product.
* Fetch scale/offset, unit type and descriptions for some HDF-EOS datasets.

HDF5 driver:
* Avoid setting bogus projection if we don't get georeferencing from
CreateProjections(). Avoid trying to operate if DeltaLat/Long is zero.
Avoid crashing on NULL poH5Object->pszPath in CreateMetadata(). (3534)
* Ensure backslashes are preserved in paths for UNC on win32 (3851)

HF2 driver:
* New for GDAL/OGR 1.8.0
* Read and write HF2/HFZ heightfield raster

HFA driver:
* Ensure that an .aux file created for overviews has AUX=YES set so a
base raster will not be created.
* Various robustness improvements (3428)
* Support pulling overviews from an .rrd file even if the .aux does not
reference it (3463)
* avoid using empty names for layer, if we have one generate a fake name,
use for overviews (3570)
* Add support for New Zealand Map Grid to HFA driver (3613)
* Support EPT_s8 in BASEDATA (3819)
* Substantial improvements for Rename/CopyFiles (3897)

Idrisi driver:
* Allow color items greater than maximum value (3605)

JPEGLS driver:
* New for GDAL/OGR 1.8.0
* JPEG-LOSSLESS driver based on CharLS library

JP2KAK driver:
* Allow quality as low as 0.01
* Major restructuring, all reading now goes through DirectRasterIO (3295)
* Introduce YCC optimization
* Ensure we fetch <= 8 bit images with their true precision (3540)
* Make JP2KAK_RESILIENT also turn off persist, and force sequential access (4336)
* Fix reading overviews via direct case (4340)

JP2OpenJPEG:
* New for GDAL/OGR 1.8.0
* JPEG2 driver based on OpenJPEG library

JPIPKAK driver:
* New for GDAL/OGR 1.8.0
* JPIP driver based on Kakadu library

KMLSUPEROVERLAY driver :
* New for GDAL/OGR 1.8.0
* Added new plug-in GDAL Super-Overlay Driver. The driver allows converts
raster (like TIF/GeoTIFF, JPEG2000, JPEG, PNG) into a directory structure
of small tiles and KML files which can be displayed in Google Earth.

LOS/LAS driver:
* New for GDAL/OGR 1.8.0
* Read NADCON .los/.las Datum Grid Shift files

MG4Lidar driver
* New for GDAL/OGR 1.8.0
* Read MG4 Lidar point cloud data and expose it as a Raster. It depends on
the current, freely-available-though-not-open-source MG4 Lidar SDK v1.1

MrSID:
* Updated to support MrSID SDK v8.0.0 (compat with older versions maintained) (3889)
* Updated to support writing MG4/Raster (3889)
* Support reading projection from .met files accompanying NASA LandSat SID files

NetCDF driver:
* Improve coordinate system support (3425)
* Add support for multiple standard_parallel tags to support LCC single
standard parallel (3324)
* Add CF-1 spheroid tag support for netcdf driver
* Add support for weather/climate files with pixel size in km
* Attempt to fix flip image (3575)
* Add support for Scale and Offset (3797)

NITF driver:
* Ensure that igeolo corners are not messed up if irregular, keep center/edge
of pixel location info (3347)
* Add capture of select RPF attribute metadata (3413)
* Carry raw IGEOLO and ICORDS through as metadata (3419)
* Added NITFPossibleIGEOLOReorientation() in an attempt to deal with
files written with the IGEOLO corners out of order.
* Implement readonly support for RSets (3457)
* Add capability of writing CGM segment as creation option (or from the source
CGM metadata domain if no CGM= creation option); for consistency, also add
the capability of writing TEXT segment as creation option, in addition to
the existing capability of writing it from the source TEXT metadata domain (3376)
* Fix read out of buffer for NBPP < 8 and very small block size; fix decoding
of NBPP=4 (3517)
* Add FILE_TRE creation option to write TRE content in XHD field of file header
* Add SDE_TRE creation option to write GEOLOB and GEOPSB TREs. This is limited
to geographic SRS, and to CreateCopy() for now
* Allow using NITF header located in STREAMING_FILE_HEADER DE segment when
header at beginning of file is incomplete
* Improve NITF to NITF translation
* Fetch TREs from DE segment
* Support reading CSSHPA DES & extracting embedded shapefile
* Support writing image comments (ICOM)
* Add description for NITF file & image header fields in creation options XML
* Accept A.TOC files with frame entries that have same (row,col) coordinates
* Avoid erroring out when file or image user TRE size is just 3
* Load subframe mask table if present (typically, for CADRG/CIB images with IC=C4/M4) (3848)
* A few hacks to accept some (recoverable) file inconsistencies (3848)

NTv2 driver:
* New for GDAL/OGR 1.8.0
* Read&write NTv2 Datum Grid Shift files

OZI driver:
* New for GDAL/OGR 1.8.0
* Read OZI OZF2/OZFX3 files

PAUX driver:
* Add support for INTERLEAVE option

PCIDSK2 driver:
* PCIDSK SDK refreshed from upstream
* Remove svn:external for pcidsk sdk; Copy it directly in GDAL tree
* Support for reading and writing descriptions added to the PCIDSK SDK.
* Add bitmap support
* Support for reading/writing complex PCIDSK files through libpcidsk
* Support worldfile if lacking internal georef (3544)
* Fix locking state at CPLThreadMutex creation (3755)
* Improved projection support.

PDF driver:
* New for GDAL/OGR 1.8.0
* Read Geospatial PDF (through poppler library), either encoded according
to OGC Best practice or Adobe ISO32000 extensions.

PDS driver:
* Support quoted SAMPLE_TYPE. Check for UNSIGNED in SAMPLE_TYPE for UInt16.
* Support files where scanlines are broken over several records.
* Support newline continuation
* Recognize ENCODING_TYPE = "N/A" (N/A surrounded by double-quotes)
* Take into account MINIMUM, MAXIMUM, MEAN and STANDARD_DEVIATION when
available to set the statistics

PNG driver:
* Update internal libpng to 1.2.44
* Internal libpng : Make screwy MSPaint "zero chunks" only a warning,
not error (3416).
* Added ZLEVEL creation option

PostGIS Raster (formerly WKTRaster driver):
* Improved block reading and raster settings reading in WKT Raster driver
* Functions SetRasterProperties and GetGeoTransform modified to allow both
referenced and not referenced rasters
* Connection string parsing simplified. Schema, table name and where clause
can be passed with or without quotes
* New parameter "mode"

RASDAMAN driver:
* New for GDAL/OGR 1.8.0
* Read rasters in rasdaman databases

RMF driver:
* Significant improvements. Implemented decompression scheme typically
used in DEM data.

SRP driver:
* Relax strict equality test for TSI size for unusual products (3862)

TerraSAR driver:
* Enhancements related to GCPs handling (3564).

USGSDEM driver:
* Support non-standard DEM file (3513)

VRT driver:
* Preliminary Overview support on VRT bands (3457)
* Support for mask band : VRT may expose a mask band,
and mask bands can be used as VRTRasterBand sources
* Port to VSIF*L API; advertise GDAL_DCAP_VIRTUALIO=YES
* Make format identification less strict (3793)
* Support for LocationInfo metadata item on bands

WCS driver:
* Decode base64 encoded multipart data

WMS driver:
* Adds a <UserAgent> optional parameter so that the user be able to provide
its own useragent string for picky WMS servers (3464)
* Default color interpretation for wms driver (3420)
* Add UnsafeSSL setting (3882)

XYZ driver:
* New for GDAL/OGR 1.8.0
* Read ASCII XYZ gridded datasets

OGR 1.8.0 - Overview of Changes

Core:
* RFC 28 : OGR SQL Generalized Expressions
* RFC 29 : Support for ignoring fields in OGR
* Add OGRLayer::GetName() and OGRLayer::GetGeomType() virtual methods,
and their C and SWIG mappings (3719)
* On Unix, add capability of opening the target of a symlink through OGROpen()
even if it not a real filename. Useful for opening resources expressed as
GDAL virtual filenames in software offering only file explorers (3902)
* Expat based XML readers : add support for reading files with Windows-1252
encoding
* Use transactions in CopyLayer for better speed. (3335)
* OGRGeometry::importFromWkt() : allow importing SF-SQL 1.2 style WKT while
preserving compatibility with previously recognized non conformant WKT (3431)
* Add C functions : OGR_G_ForceToPolygon(), OGR_G_ForceToMultiPolygon(),
OGR_G_ForceToMultiPoint() and OGR_G_ForceToMultiLineString()
* Add C functions : OGR_G_Length(), OGR_G_Simplify(), OGR_G_Area(), OGR_G_Boundary()
OGR_G_SymDifference() and OGR_G_UnionCascaded()
* Add C function: OGR_F_StealGeometry()
* Move Centroid() method from OGRPolygon to OGRGeometry base class to be able
to operate on various geometry types, and to be consistent with PostGIS
ST_Centroid() capabilities and the underlying GEOS method
* Make the GetStyleTable() SetStyleTable() SetStyleTableDirectly() methods on
datasources and layers virtual (2978)
* Add OGRSFDriverRegistrar::DeregisterDriver() and OGRDeregisterDriver()
* Improve detection of rounding errors when writing coordinates as text with
OGRMakeWktCoordinate()
* OGR SQL: allow comparing datetime columns in WHERE clause
* OGR indexing: re-use .ind file in read-write mode when calling CreateIndex()
but the index was opened as read-only (follow up of 1620); ensure that the
.ind file is closed before being unlink()'ed
* AssemblePolygon: ensure largest area ring is used as exterior ring (3610)
* OGRGeometryFactory::createFromGEOS() : preserve coordinate dimension
(with GEOS >= 3.3) (3625)
* Allow calling transformWithOptions() with a NULL poCT
* Improve wrapdateline, especially on LINESTRING
* Fix getEnvelope() for OGRPolygon and OGRGeometryCollection to avoid taking
into empty sub-geometries; Fix OGRLayer::GetExtent() to avoid taking into
account empty geometries
* Support attribute index scan with the sql 'IN' operator (3686)
* Add attribute index support for the sql queries in mapinfo tab format (3687)
* OGRGometry: add a swapXY() virtual method
* Implement special field support for IsFieldSet
* OGRLineString::transform() : allow partial reprojection if
OGR_ENABLE_PARTIAL_REPROJECTION configuration option is set to YES (3758)
* Add OGR_G_ExportToGMLEx() that can take options to enable writing GML3
geometries compliant with GML3 SF-0
* OGRFeature::SetField() : support setting integer and real lists from a
string in the format (n:value,value,value,...)

OGRSpatialReference:
* Big upgrade to EPSG 7.4.1 with improved datum logic
* Use PROJ 4.8.0 thread-safe functions if available to avoid global OGR PROJ4
mutex when doing OGRProj4CT::TransformEx()
* Support for defining VERT_CS and COMPD_CS from EPSG and from/to PROJ.4
* Implement OGRSpatialReference:IsVertival() and
OGRSpatialReference::IsSameVertCS() methods
* add RSO gamma handling (proj 62)
* TMSO support
* Adjust handling of NAD27 to avoid towgs84 params, use +datum when no towgs84,
do not emit +ellipse if +datum used (3737)
* exportToProj4() : add +towgs84= instead of +datum= if both information are
available. This behavior can be turned off by setting
OVERRIDE_PROJ_DATUM_WITH_TOWGS84=NO (3450)
* Add PROJ4_GRIDS EXTENSION as a way of preserving datum grids
* ogr_srs_proj4: add a table for Prime Meridians; improve recognition of prime
meridian to export them as names when possible with exportToProj4()
* importFromProj4(): recognize +f= option
* Correct handling of Mercator2SP from EPSG (2744)
* Make GetAxis() const
* Improve axis orientation recognition for stuff like EPSG:3031
* Fix Amersfoort (geotiff 22)
* Panorama: Added zone number to the list of projection parameters list.
Use the zone number when we need to compute Transverse Mercator projection.
* Panorama: Use Pulkovo 42 coordinate system instead of WGS84 as a fallback
if the CS is not specified.
* ESRI: added support for Mercator in an old style file
* Add Bonne, Gauss-Schreiber Transverse Mercator, Mercator (2SP), Two Point
Equidistant and Krovak to the list of projections description dictionary.
* SRS validation : various fixes
* Exposure OSRImportFromERM() and OSRExportToERM() functions in C API.
* PCI : Fix the transfer of scale for Stereographic Projection (3840).
Add support for Oblique Stereographic (SGDO) (3841)
* Substantially upgrade PCI datum conversions using PCI datum/ellips.txt files

Various drivers:
* Improve behavior of DXF, VFK, GPX, SHAPE, PG, LIBKML, KML, VRT, CSV, GML,
BNA, GeoRSS, GEOJSON drivers when LC_NUMERIC is not the C locale

Utilities:
* ogr2ogr: copy datasources and layers style table
* ogr2ogr: use OGRGeometryFactory::forceToMultiLineString() when -nlt
MULTILINESTRING is specified
* ogr2ogr: allow -wrapdateline if neither input or output srs is specified,
but input layer srs is geographic
* ogr2ogr: add -splitlistfields and -maxsubfields options to split fields of
type IntegerList, RealList or StringList into as many subfields of
single type as necessary.
* ogr2ogr: accept None or Null as a special value of -a_srs to nullify the output SRS
* ogr2ogr: ignore -overwrite options if the output datasource does not yet exist (3825)
* ogr2ogr: special case when output datasource is a existing single-file Shapefile :
auto-fill the -nln argument if not specified (2711)
* ogr2ogr: add a -explodecollections option to split multi geometries into several features
* ogr2ogr: add a -zfield option to set the Z coordinate of a 3D geometry from the value of
a field

AeronavFAA driver:
* New for GDAL/OGR 1.8.0

ArcObjects driver:
* New for GDAL/OGR 1.8.0

BNA driver:
* Ported to use VSIF*L API

CSV driver:
* For files structured as CSV, but not ending with .CSV extension, the 'CSV:'
prefix can be added before the filename to force loading by the CSV driver
* Support reading airport data coming from http://www.faa.gov/airports/airport_safety/airportdata_5010
* If a datasource is created with the extension .csv assume this should be
the first layer .csv file instead of a directory
* Skip empty lines (3782)
* Port to VSI*L API for read&write; support writing to /vsistdout/

DGN driver:
* Correct computation of abyLevelsOccurring (3554).

DODS driver:
* Compilation fix to support libdap 3.10

DXF driver:
* Smooth polyline entity support added
* Read blocks as a distinct layer instead of inlining
* Assemble file at end with changes to header template - so far only inserting
new layer definitions
* Support for writing user defined blocks
* Add limited hatch support
* Add support for writing linetypes. Support using complete dxf files as
the header or trailer template.
* Apply the INSERT entity id to all features inserted in its place (3817)
* various fixes
* Implement Win1252/utf8 conversion for dxf text
* Fix issues with text angles, text escape and multiline text
* add support for \U+xxxx unicode chars in labels

GeoJSON driver:
* Add reader to parse JSON output of FeatureService following GeoServices REST
* Read and write "id" member at feature object level
* Various robustness fixes to avoid crashes
* Fix combined spatial and attribute filtering (3803)

GeoRSS driver:
* Ported to use VSIF*L API
* Recognize <gml:MultiPoint>, <gml:MultiLineString> and <gml:MultiPolygon>
* Support reading GeoRSS inside <rdf:RDF>

GML driver:
* Adding support for xlink:href. (3630)
* Add support for Polish TBD GML
* Support reading <gml:Curve>, <gml:MultiCurve>, <gml:TopoCurve>,
<gml:TopoSurface>, <gml:Ring>, <gml:Surface>, <gml:PolygonPatch>,
<gml:pointMembers>, <gml:curveMembers>, <gml:surfaceMembers>
<gml:Triangle>, <gml:Rectangle>, <gml:Tin/gml:TriangulatedSurface>,
<gml:Arc>, <gml:Circle> elements in GML3 geometries
* Recognize <gml:Solid> and <gml:CompositeSurface>, <gml:OrientableSurface> elements
(dealt as an approximation as multipolygons, and not as volumes)
* Add support for "complex structure flattening" of attributes, and OFTStringList,
OFTRealList and OFTIntegerList field types in case of multiple occurrences of
a GML element (such as UK Ordnance Survey Mastermap) (3680)
* Add support for CityGML generic attributes <stringAttribute>, <intAttribute> and
<doubleAttribute>
* Various improvements for better support of AIXM 5.1
* Write and retrieve layer geometry type to/from .gfs file (3680)
* Support using the <GeometryElementPath> to retrieve the appropriate geometry in
case several ones are available per feature
* Use VSIF*L API for read&write
* XSD reader : various improvements, in particular to support various types of schema
returned by WFS DescribeFeatureType
* XSD writer: change the default GeometryPropertyType to a more precise type name
according to the layer geometry type
* Write valid <gml:MultiGeometry> element instead of the non-conformant
<gml:GeometryCollection>. For backward compatibility, recognize both syntax for
the reading part (3683)
* Support reading SRS per layer when possible, and deal with urn:ogc:def:crs:EPSG::xxx
geographic coordinate systems (as returned by WFS 1.1.0 for example) to restore
(longitude, latitude) order (unless GML_INVERT_AXIS_ORDER_IF_LAT_LONG is set to NO)
Also add a GML_CONSIDER_EPSG_AS_URN option that can be set to YES when EPSG:XXXX should
be considered as urn:ogc:def:crs:EPSG::XXXX
* Expose gml:id as a string field when reading <wfs:FeatureCollection>
* Add dataset creation option FORMAT=GML3 to write GML3 SF-0 compliant data
* Add dataset creation option SPACE_INDENTATION=YES/NO to optionally disable space indentation
when writing GML.
* Recognize GML answer of MapServer WMS GetFeatureInfo request
* Fix datatype detection to fallback to Real when an integer cannot fit into a 32bit int (3866)
* GML/WFS : use SRS defined in global gml:Envelope if no SRS is set for any feature geometry

GMT driver:
* Add support for multilinestring reading (3802)

GPSBabel driver:
* New for GDAL/OGR 1.8.0
* Read/Write files supported by GPSBabel utility

GPX driver:
* Port write side of the driver to VSIF Large API
* Add LINEFORMAT dataset creation option
* Allow writing track points and route points with their own attributes by
writing point features in track_points and route_points layers

HTF driver:
* New for GDAL/OGR 1.8.0
* Read Hydrographic Transfer Format (HTF)

Ingres driver:
* Implement support for spatial reference systems (atrofast, 3159)
* Added support for GEOMETRYCOLLECTION as a generic geometry type, and
fleshed out the layer creation logic to support all geometry types.

KML driver:
* KML vertex output: avoid warning for coordinates just above 90 and 180
degrees due to numerical imprecisions
* Port to VSI*L API for write

LIBKML driver:
* New for GDAL/OGR 1.8.0
* Alternate KML driver relying on Google libkml

MITAB driver:
* Use "," for the OGR Feature Style id: parameter delimiter, not "." as per
the spec.
* Synchronized with mitab CVS HEAD
* Fixed crash when trying to get the same mitab feature twice

MSSQLSpatial driver:
* New for GDAL/OGR 1.8.0
* Read/write support for MS SQL Spatial databases

NAS driver:
* New for GDAL/OGR 1.8.0
* Reads the NAS/ALKIS format used for cadastral data in Germany

OCI driver:
* Allows OS authentication (3185)
* Uppercase table_name on SQL queries 1960 - OCI: ogr2ogr with append option
is not considering layer creation
* Support creation of non-spatial tables (3690)
* Set MULTI_LOAD as default 3656, for new layer and update

OGDI driver:
* Add OGR_OGDI_LAUNDER_LAYER_NAMES configuration option to simplify reported layer names
* Fix GetFeatureCount() when used with SetAttributeFilter()

OpenAir driver:
* New for GDAL/OGR 1.8.0
* Read Special Use Airspace in OpenAir format

PCIDSK driver:
* Implement creation/update and coordinate system support

PDS driver:
* New for GDAL/OGR 1.8.0
* Read NASA Planetary Data Systems TABLE objects

PGeo driver:
* Add PGEO_DRIVER_TEMPLATE option

PGDump driver:
* New for GDAL/OGR 1.8.0
* To output PostgreSQL SQL dump (very similar to shp2pgsql utility)

PostgreSQL driver:
* Add support for PostgreSQL >= 9.0 new binary data format
* Use canonical (HEXEWKB) form to get geometry to speed-up feature retrieval.
WKT-based retrieval can still be used if PG_USE_TEXT configuration option
is set to YES
* If the PG_USE_BASE64 configuration option is set to YES, geometries will be
requested as BASE64 encoded EWKB instead of canonical HEX encoded EWKB.
(useful when bandwidth is the limiting factor)
* Don't instantiate layer defn at layer creation. This can speed up
significantly database opening when they are many tables and the user just
needs to fetch one with GetLayerByName().
* Implement efficient OGRLayer::GetName() and OGRLayer::GetGeomType()
* Allow creating layer with eType = wkbNone
* Don't require to have found a layer in readonly mode to succeed in opening
the datasource.
* Add TEMPORARY (ON/OFF) layer creation option to create TEMPORARY tables
* CreateLayer() : don't launder schema_name if passed string is schema_name.table_name,
and when testing if the layer already exists prepend or remove the
schema_name to the table_name when comparing to layer names
* Handle Nan and Inf values for float types in INSERT, UPDATE and
COPY SQL commands. (3667)
* Retrieve the FID of a newly inserted feature (3744)
* Remove use of deprecated PostGIS functions when running against PostGIS 2.0SVN

S57 driver:
* Avoid crashing if there is a missing VRPT field in a vector record.

SOSI driver:
* New for GDAL/OGR 1.8.0
* Read Norwegian SOSI-standard

Shapefile driver:
* Use VSI*L API for .prj file so it works in virtual circumstances (3536).
* CreateLayer(): Check that the layer doesn't already exist
* Implement multipatch read support
* Remove ESRI style spatial indexes from Shapefile on update via OGR (2798)
* Fix conflict between spatial and attribute indexes (3722)
* Create integer fields with unknown width as 10 characters instead of 11
to avoid them getting immediately considered to be real when reopening (2151)
* Make 'ogr2ogr -overwrite dst.shp src.shp -nln dst' work when dst.shp already exists

SQLite driver:
* Spatialite : use MBRIntersects operator instead of MBRWithin (3810)
* Spatialite: avoid executing some Spatialite functions several times when
issuing SQL queries
* Add a INIT_WITH_EPSG dataset creation option to fill the spatial_ref_sys
table with content of EPSG CSV files (default to NO); several fixes to be
robust to single quote characters in SRS strings
* Fix to make CopyLayer() work when src layer is a SQL result layer (3617)
* Add OGR_SQLITE_SYNCHRONOUS configuration option that, when set to OFF,
can speed up considerably write operations (e.g. on EXT4 filesystems),
at the expense of extra robustness w.r.t system crashes.
* Spatialite: when creating a spatialiate DB, add a srs_wkt column in the
spatial_ref_sys table, as introduced in libspatialite 2.4.0
* Implement the DeleteLayer() interface and report the ODsCDeleteLayer capability

SUA driver:
* New for GDAL/OGR 1.8.0
* Read Special Use Airspace in Tim Newport-Peace's format

VRT driver :
* Fix GetExtent() on non VGS_Direct VRT layers (3783)

WFS driver:
* New for GDAL/OGR 1.8.0
* WFS client that brings read & write (WFS-T) support for WFS 1.0.0 and 1.1.0

SWIG Language Bindings

General :
* Add Geometry.Length(), Geometry.Area(), Geometry.Simplify(), Geometry.UnionCascaded(),
Geometry.SymDifference, Geometry.Boundary()
* Add SpatialReference.GetUTMZone()
* Add Geometry.ForceToPolygon(), Geometry.ForceToMultiPolygon(),
Geometry.ForceToMultiPoint() and Geometry.ForceToMultiLineString()
* Add Band.SetScale() Band.SetOffset(), and Band.SetUnitType()
* Add ogr.RegisterDriver() and ogr.DeregisterDriver()
* Move ogr.GeometryTypeToName() and ogr.GetFieldTypeName() from Java bindings
to all bindings
* Initialize return values of GetRasterStatistics() so that we know if they
have been updated
* Add Feature.SetFromWithMap()
* Add gdal.GridCreate() (3661)
* Expose OSR GetSemiMajor(), GetSemiMinor(), GetInvFlattening() and
ImportFromERM() functions

CSharp bindings:
* Use the .NET Framework 2.0 transparency rules (level 1 transparency) for the
VC2010 builds (3559)
* Fix GDAL_DMD_ and GDAL_DCAP_ constants for Csharp (3601)

Java bindings:
* Add GdalGrid.java, GDALContour.java
* Add 'make test' target for Unix/Windows

Perl bindings:
* Support polygons in TransformPoints.
* Test for existence of capability before comparison (avoid unnecessary warning)
* Added CAPABILITIES lists to driver, datasource and layer classes;
Capabilities and TestCapability methods return and use strings as documented
already earlier; added FIELD_TYPES, JUSTIFY_TYPES, GEOMETRY_TYPES and
BYTE_ORDER_TYPES lists into appropriate classes
* "create" constructor for FeatureDefn
* Add aliases Equals and Intersects as mentioned in 3492
* Changes to support RFC 30
* Add bindings for ReadDir, Stat, FillNodata
* Simple support for PostGIS HEX EWKB (remove/add SRID)
* The Schema method of FeatureDefn returns a schema, where each field hash contains
also key 'Index' and the field index as the value.

Python bindings:
* Fix compilation of Python bindings with Python 3.X on 64 bit platform
* Optimize Band.ReadRaster() and Dataset.ReadRaster() to avoid extra buffer
copy; also add the capability to pass the result buffer such as
result_buf = ' '; ReadRaster(0, 0, 1, 1, buf_obj = result_buf) (3521)
* NumPy Band.WriteArray() : use numpy object directly instead of converting to
string
* Band.ReadAsArray() : instantiate the numpy object before calling RasterIO()
instead of creating it from a string
* NumPy : add support for signed byte
* Make sure that feat.SetField('field_name', double_value) goes through
OGR_F_SetFieldDouble() instead of being first converted to string
* Add an optional parameter can_return_null to Dataset.GetGeoTransform();
when used and set to True, None is returned when GDALGetGeoTransform()
returns CE_Failure (instead of the fake (0,1,0,0,0,1)); backward
compatibility preserved when the parameter isn't specified
* Avoid suppressing warnings and errors when exceptions are used (3632)
* Add gdalinfo.py, ogrinfo.py and ogr2ogr.py as sample scripts, direct ports
of corresponding C/C++ utilities
* Allow manipulating buffer > 2 GB on 64bit builds for ReadRaster() and WriteRaster()
* Map gdal.GetCacheMax(), gdal.SetCacheMax() and gdal.GetCacheUsed() to the
corresponding 64bit new API
* Reset error status before new GDAL/OGR call when using gdal.UseExceptions() (3077)
* Changes to support RFC 30
* Fix Feature.ExportToJson() (3870)

1.7.0

Not secure
Algorithms:
* cutline : optimize by clipping cutline to region of interest (2736)
* cutline : avoid scanline to scanline blending problems (2740)
* rasterfill : substantially reworked
* rasterfill : deprecate bConicSearch option - unused
* rasterize : optimized
* rasterize : Added GDALRasterizeLayersBuf() function to rasterize geometries directly
into the supplied raster array.
* rasterize : Add ALL_TOUCHED rasterize option (2840)
* rasterize : Added 3D support for rasterizing points and lines. (3202)
* rasterize : correct case of vertical/horizontal lines on raster right/bottom edge (3268)
* Added GDALCreateGenImgProjTransformer3() function
* warp: Reduce destination file size, especially when it has compression (1688)
* warp: Fix crash when reprojecting to irrelevant SRS (3079)
* warp: avoid using the destination nodata value for integer datatypes (3142)
* warp: fix panDstValid generation, and avoid using it improperly (3222)
* warp: Restore support of reprojection of a lat-long image crossing 180E/180W longitude (3206)
* contour: Fix name of GDAL_CG_Create in contour.cpp (2795)
* contour: Generate contours with correct orientation (3129)
* gdalgeoloc: Improve geoloc backmap interpolation (2501)
* overview: added support for cubic convolution overviews
* gdal_grid: 3 new metrics: data point count, average distance between data points
and a grid node, average distance between data points.
* gdal_grid: Properly cast the poOptions parameter in data metrics computation functions. (3207)

Core :
* Added mechanism to clear overviews if zero overviews requested. Implemented by GTiff and HFA drivers (2915)
* Support for overviews in subdatasets
* Support for overviews in proxydb directory (2432)
* SetColorTable(NULL) is permitted and means delete (2421)
* Preserve NBITS and SIGNEDBYTE in CreateCopy() for supporting drivers (2902)
* GDALCopyWords() : performance optimizations
* Add GDALCheckDatasetDimensions() and GDALCheckBandCount()
* Add GDALGetColorInterpretationByName()
* Use tiff .ovr for overviews if .aux is just metadata (2854)
* Add missing argument in function declaration for GDALRATTranslateToColorTable()
* Do not use colortable for bit2grayscale overviews (2914)
* Support world files with blank lines (ESRI Merge)
* Add worldfiles in GetFileList() (ESRI Merge)
* Fix rpb/imd loading with a path (3047)
* Add support for using overviews in GDALDataset::BlockBasedRasterIO() (3124)
* Take into account SIGNEDBYTE for GetStatistics() & GetHistogram() (3151)
* Add GDALReadOziMapFile() and GDALLoadOziMapFile() to read projection
and georeferencing information from OziExplorer .MAP files.
* Added declarations for GDALLoadTabFile() and GDALReadTabFile()
* Add missing case for CInt16 and CInt32 in GDALNoDataMaskBand and GDALNoDataValuesMaskBand

Utilities :
* gdaldem: new for GDAL/OGR 1.7.0 (2640)
* gdalinfo:
- add -norat switch
- do not report RPC or GEOLOCATION metadata with -nomd
- Use pretty wkt to display GCP projection
* gdalwarp:
- fix cutline blend distance setting (2733)
- in -te case, adjust the resolution after computing the image dimensions
- improved cutline support (2733, 2847, 2884, 2984)
- avoid overwriting an existing destination file that cannot be opened in update mode with a new GTiff file
- better heuristics to guess output extent when projection from lat/long world
extent to other world global projections (2305)
* gdaltindex:
- Avoid unnecessary error message in gdaltindex when creating a new shapefile (2779)
- Rewritten to use OGR API instead of ShapeLib API, so as to produce .prj files more easily (982)
* gdal_contour:
- make -3d option work even after -fl option (2793)
- Call GDALGetProjectionRef() on the dataset, not the raster band (3062)
* gdalbuildvrt:
- Add -separate, -allow_projection_difference, -te, -tr, -q, -addalpha options
- Add -srcnodata and -vrtnodata options (3254)
- Add -hidenodata option (3327)
- Avoid accidental overwriting of a non VRT dataset due to reversed filename order
- Fix -resolution lowest/highest (3198)
* gdaladdo: add -clean option (2915)
* gdaladdo: add -q option
* gdal_grid: Add support for spatial filtering with -clipsrc option
* gdal_translate: support translation of a dataset with subdatasets if the parent has bands
* gdal_translate: Add 'gray' as a value of -expand rgb option
* gdal_translate: Add -unscale commandline option
* gdal_merge.py: Add progress report
* gdal_vrtmerge.py: Fix -separate case (2836)
* gdal_vrtmerge.py: Write the <SourceProperties> element (1985)
* gdal_retile.py: add lanczos resampling (2859)
* gdal_fillnodata.py: ensure dstfile support works by copying source (2866)
* GDAL2Tiles: --srcnodata support + fixed KML rendering for -p raster
* rgb2pct.py: Added ability to use a preexisting color table from a file (2958)
* pct2rgb.py and rgb2pct.py : Copy the GCPs and their projection to the target dataset.
* classify.py: Fix order of args to numpy.ones() and numpy.zeros() (3089)
* hsv_merge.py: New sample script to greyscale as intensity into an RGB image,
for instance to apply hillshading to a dem colour relief.
* support filename globbing for various Python scripts (2783)
* --formats will add 'v' in report on drivers that support virtual io
* all utilities and scripts : consistently advertise -q as the official quiet
option, but accept both -q and -quiet (3820)

Changes in various drivers :
* Implement support for overviews on subdatasets for HDF4, HDF5, NetCDF, NITF, XPM, TERRAGEN, PCIDSK (2719)
* Add support for 64bit offsets in /vsisubfile, JPEG and JP2ECW drivers
* External overviews support added to some drivers (JDEM, ...)
* Avoid incorrect GEOGCS AXIS settings (2713)
* Use GDALCheckDatasetDimensions() and GDALCheckBandCount() in various drivers
* Many memory leak fixes (HDF5, HKV, Leveler, MFF, NITF, RMF, JPEG2000, WCS ... drivers)
* Many fixes to improve robustness against corrupt data in many drivers
* Error out when trying to open a read-only dataset in update mode (3147)
* Ensure that the same JPEG2000 driver that has been used with CreateCopy() is used to re-open it (1596)

ADRG driver:
* Support PSP != 100 (3193)

AIG driver:
* Differ opening of the RAT only when GetDefaultRat() is called.
Will improve performances and make less likely the error message of 3031

AAIGRID driver:
* Fix bad reading of AAIGRID dataset whose last line doesn't have a linebreak character (3022)
* Make the ArcInfo ASCII driver more Mac-compatible. (3212)

BAG driver :
* New for GDAL/OGR 1.7.0

BLX driver:
* Implement progress callback in CreateCopy() (2830)

BMP driver:
* Modify GetGeoTransform() to return geotransform based on the resolution
information in the BMP header if nothing else is available (ESRI merge).
* use pam functions properly for geotransform when not using world file

BSB driver:
* Fix several issues with BSB files reading (2782)
* Handle properly more than 256 GCPs (2777)
* Add logic to chip GCPs around to avoid split over dateline problems (2809)
* Add logic to reproject GCPs into Mercator for mercator projected images.

DTED driver:
* Re-enable DTED driver to recognize files not starting by a UHL record (2951)

ECW driver:
* Enable the JP2ECW driver to open JP2 files with the VSILAPI
* Fix build with MSVC2008 (2850)
* Fix memory overwrite while zooming an ECW image (2934)
* Speed-up de-registration of the driver that can take up to 3 seconds (3134)

EHDR driver:
* Add color table update. Add limited support for floating point
files (.flt) (ESRI Merge)
* added support for SIGNEDBYTE pixels (2717)
* Restructure stats handling so pam capture works right when stx write fails
* improve a bit .clr reading (3253)

ENVI driver:
* Move RPC info into the RPC domain (3063)
* Converted to using VSI Large File API (3274)
* re-enabled complex support (3174)

EPSILON driver:
* New for GDAL/OGR 1.7.0
* Mainly used coupled with Rasterlite

ERS driver:
* Added PIXELTYPE support to report/create SIGNEDBYTE (2902)
* Give precedence to PAM SRS, and even check for .aux file. (ESRI Merge)

FAST driver:
* Support 7 bands (3307)

Fujibas driver:
* Fix to work on big-endian hosts

GenBin driver:
* Implemented custom class for 1bit (U1) files (2730)
* Fix inverse flattening computation (2755).
* Added U2 and U4 support
* Look for LSB, assuming MSB if not found (2730)

GeoRaster driver:
* Fix compression problems
* Add MaskBand support
* Support UNICODE metadata
* Support cross database schema/user access
* add COORDLOCATOR create option

GeoTIFF driver :
* Add 8/12bit jpeg in tiff support
* Add support for creating external BigTIFF overview files,
with BIGTIFF_OVERVIEW configuration option. (2785)
* Add support for deleting a color table (2421)
* Add logic for Imagine citation parsing
* Add logic for encoding and reading ESRI PE string from citation.
* Add support for reading and writing vertical datum info from geotiff
* Changes to units handling. (2755)
* Optimize opening speed by deferring fetching the coordinate system till GetProjectionRef (2957)
* Optimize GTiffRasterBand::IReadBlock() for multi-band interleaved case.
* Avoid unnecessary re-writing the TIFF directory (3021)
* Use official value for inverse flattening of the WGS84 ellipsoid (2787)
* Add metadata domain for XML documents (2786)
* Make GTiff driver friendly with files with huge number of bands and pixel interleaving (2838)
* Avoid precaching other bands if block cache size is not big enough to accommodate them (2838)
* Internal libtiff (4.0.0beta5) and libgeotiff (1.3.0beta) upgraded
* use the SetCitationToSRS call for the PCSCitationGeoKey in a similar fashion to the GTCitationGeoKey (2933)
* NBITS set for GTiffOddBits. YCbCr JPEG added as a compression type.
generate MINISWHITE IMAGESTRUCTURE metadata item. Set missing blocks
to the nodata value if there is one. (ESRI Merge)
* Support GeoTIFF with only ProjectedCSTypeGeoKey defined (3019)
* External overviews: try to preserve the bit depth of the original image
* Allow reading and creation of big all-in-one-strip 8bit TIFF (3094)
* Handle projection methods for Google Mercator special case (3217)

GFF driver :
* Fix support for big endian host (2832)
* Add pam, and overview support. Switch to VSI*L API to support virtualio (3014)

GIF driver :
* Introduced a BIGGIF driver to handle GIF files without using the
slurp into memory approach. (2542)
* CreateCopy() reports now progress
* Replace internal libungif by giflib-4.1.6 (1825)
* Read projection and georeferencing from OziExplorer .MAP file if possible.

GRASS driver:
* Add support for GRASS 7.0 GDAL and OGR plugins (2953)
* Use GRASS_GISBASE for GDAL GRASS driver instead of hard-coded path (2721)

GRIB driver:
* only scan for PDS templates in GRIB2 files (2858)
* Avoid dumping GribLen debug message if built with -DDEBUG.
* Remove verbosity from GRIB driver (2887)
* Make GRIB detection thread safe (3209)
* Check that bands have the same dimensions (3246)

GS7BG driver:
* Recognize version 2 datasets (3123)

HDF4 driver :
* Allow HDF4 subdataset name to include Windows letter drive (2823)

HDF5 driver :
* subdatsets need to be numbered from 1 not 0 (2462)
* Block size recognition. (2270)
* Fix initial value for nGCPCount in HDF5ImageDataset (2774)
* Fixes to type classification, and to avoid listing subdatsets for unsupported pixel data types (2941)
* Mark PAM for not saving .aux.xml files at this level. Directly open
subdatasets in HDF5Dataset::Open() if there is only one subdataset.

HFA driver:
* Support reading and evaluating 3rd order xforms (2716)
* Various improvements to SRS support, particularly to preserve PE
compatibility. (2755)
* Added HFAEntry::RemoveAndDestroy() method to remove nodes from tree (2421)
* Added support for deleting color tables (2421)
* Add a scaled progress monitor for HFADataset::IBuildOverviews()
* Fix HFA u2 compression/decompression (ESRI merge)
* Add support for reading compressed s8 HFA (3152)
* Defer opening overviews till they are first requested (3155)
* Support multiple excluded values (3252)
* added a variety of additional coordinate system based types missing in some files (3262)
* Various fixes (2421, 2842, 2755, 3082, 2730)

Idrisi driver:
* Writing text file in CRLF format (3199)
* forward porting esri changes + other changes
* provide default values on Create() (3243)

INGR driver:
* Fix INGR driver that was failing on big endian hosts (2898)
* Fix RLE support (3106)
* Added overview building (2904)

JPEG driver:
* Enable the JPEG driver to read and create 12bit JPEG images when JPEG12_ENABLED=yes
* Internal libjpeg: additional changes to ensure operation with IPP enabled apps (2606,2845)
* JPEG read optimizations : differ extraction of EXIF metadata and internal maskband

JPEG2000 (JasPer) Driver:
* Allow proper reading of JP2 images where dimensions are not multiple of 256 (2399)
* Add a virtual I/O interface to able to read from/write to JPEG2000-NITF files
* Do not deregister jas_image_clearfmts() to avoid failure when gdal_translat'ing from JP2 streams
* Add proper reading of YCbCr images as RGB
* fix decoding of bit depth for BPCC and PCLR boxes

JP2KAK (Kakadu) Driver :
* Fix band selection from ycbcr to rgb converted images in DirectRasterIO (2732)
* Support jpc vsisubfile streams
* add handling of reversibly compressed data with 9 to 16 bits precision (2964)
* Modify transfer_bytes() buf32 case to offset/scale based on precision. (2964)
Fixed _WriteTile() lossless 16bit case to avoid improper 32K offset.
Added support for NBITS image structure metadata, and creation option.
* Added logic to limit tiles to 64K due to jpeg2000 limitation. (ESRI Merge)
* Fix offsetting of 16U buf32 data (3027)
* Support 16u/16s imagery through DirectRasterIO interface (3049)
* Support external overviews as an override to internal overviews
* Rework jp2kak support to use natural kakadu builds (Windows build)
* ensure external overviews get used if available (3276)
* add preliminary multi-threading read support via DirectRasterIO()


LAN driver:
* Give preference to PAM coordinate system since built-in info is very
limited. Fallback to PAM geotransform if internal missing. (ESRI Merge)

LCP driver:
* Add projection file support (3255)

MEM driver:
* Allow creating bands of more than 2GB each if size_t is large enough.
* Added GetInternalHandle() implementation to fetch band memory buffer

MrSID driver:
* Implement faster resampling for 1:1 case
* Improve stream implementation so it works for jp2 with v7
* Make the JP2MrSID driver accept .ntf extension to allow reading jpeg2000
datastream in NITF files
* Avoid reporting large metadata objects. Add MG version to metadata.

NetCDF driver:
* Fix handling of pixel validity mask (3112)
* correct a problem with 5+ dimensional data access (2583)
* fix y flip detection in common case (2654)
* add support for subdataset names with Windows full path names, like NETCDF:D:\...

NITF driver:
* Add support for reading & creating large (>4GB) NITF files.
* Add support for NITF/JPEG2000 overviews (JP2KAK)
* Add support for reading & creating 12bit JPEG compressed NITF files when JPEG12_ENABLED=yes
* Add support for creating a NITF file with many bands and big TRE content
* Add support for creating several uncompressed images in a NITF file (2989)
* Add support for creating M3 (masked multi-block JPEG compressed) images
* Add support for unpacking a wider variety of pixel depths.
* Add support for overriding IGEOLO with GEOLOB TRE precision georef (3180)
* Add support for for CFloat32 reading & writing (2526)
* Add support for reading and writing NITF file with large single block (3263)
* Allow Jasper driver to be used for NITF IC=C8 (JPEG2000) CreateCopy() if JP2ECW is not available
* Allow JP2MrSID driver to be used for reading JPEG2000 datastreams in NITF
* Avoid issues when reading M3 single block images
* Fix CreateCopy() of multi block JPEG-NITF
* Various bugfixes (2940, 2912, 3029, 3088)
* Support NITF file with a color table and JPEG2000 data content (3110)

NWT_GRC / NWG_GRD drivers (Northwood/VerticalMapper) :
* New for GDAL/OGR 1.7.0

OGDI driver:
* improve finding of PROJ.4 include files for OGDI (1242)

PCIDSK driver (old driver):
* Added worldfile reading. Added PAM fallback for geotransform.
* Added support for default overviews (i.e. .ovr or .rrd). (ESRI Merge)
* fail somewhat gracefully on compressed images

PCIDSK driver (new driver):
* New for GDAL/OGR 1.7.0, using the PCIDSK SDK

PDS driver:
* Transfer various keywords to metadata
* Made keyword handler more in complaint with ODL (2956)
* Support detached files with an offset (3177)
* Support .LBL labelled compressed files

PNG driver :
* Upgrade internal libpng to 1.2.35
* Only write a world file if the source datasource has a geotransform
* Allow writing a nodata value of 0 as the transparent color value (3208)

R driver:
* New for GDAL/OGR 1.7.0

Rasterlite driver
* New for GDAL/OGR 1.7.0

RIK driver:
* Improved error checking

SAGA GIS Binary driver:
* New for GDAL/OGR 1.7.0

SDE driver :
* Fix exporting ArcSDE raster results in a displaced image (2063)

SRP driver (ASRP/USRP):
* New for GDAL/OGR 1.7.0

SRTM driver :
* Set GDALMD_AOP_POINT metadataitem (1884)

TIL driver (EarthWatch .TIL) driver:
* New for GDAL/OGR 1.7.0

VRT driver :
* Honour the INIT_DEST warp option (2724)
* Improve performance of LUTs in VRTComplexSource from O(n) to O(log2(n)) (3003)
* Implement (advertized in doc) support for SetMetadataItem( "source_0", szFilterSourceXML, "vrt_sources" ) on a VRTSourcedRasterBand (3052)
* Implement GetFileList() to list the source files
* Fix wrong initialization of destination buffer in VRTSourcedRasterBand::IRasterIO() in case of not standard pixel/line spacing. (2867)

WCS driver:
* do not try to parse HTML content, which is returned by some provider when the server doesn't exist
* added HttpAuth and UserPwd options for authentication (3091)

WKT Raster driver:
* New for GDAL/OGR 1.7.0

WMS driver:
* Support TMS/formatted URLs in WMS minidriver (2878)
* Be tolerant if we have required 3 bands and got 4, or the other way round
* Declare a user agent string

OGR 1.7.0 - Overview of Changes

Utilities:
* ogrinfo: Preserve order of source layers specified on ogrinfo command line,
and use GetLayerByName() which enables to read some hidden layers
like public.<table> layers from a PG database (2922, 2026)
* ogr2ogr:
- Add -clipsrc and -clipdst option to clip geometries to the specified extents
- Add -fieldTypeToString option to conveniently cast any fields of given type to fields of type string (2968)
- Add -progress option for ogr2ogr to displaying progress (2998)
- Add -wrapdateline option to ogr2ogr to deal with geometries that cross 180 degree longitude (3158)
- Add -dialect flag to specify SQL dialect
- Preserve order of source layers specified on command line (2922)
- -overwrite and -append now automatically imply -update (3048)
- Support converting to a format after field name "laundering" (3247)
* ogrtindex:
- Skip layers whose schema does not match instead of terminating (3141)
- Add a -accept_different_schemas option for non-MapServer use cases (3141)
- Set SRS to tileindex when one is found in the tiles
* ogr2vrt.py : new script that will create a VRT corresponding to a
source datasource (sample script for the moment, not promoted officially)

Core :
* Improved OGR feature style (2875, 2808)
* Considerable speed-up of ExportToWkt() for very large geometries
* Added new OGR_GEOM_AREA special field (2949)
* ensure forceToMultiLineString() works for MultiPolygons (2735)
* Various fixes in OGR SQL engine (r16116, 2996, 2788, 3143, 3144)
* Add OGREnvelope::Intersect()
* Add OGR_G_ApproximateArcAngles() for ellipses
* Fix crash on Ubuntu 8.10 in GetFieldAsString() because of (too) strict guard logic (2896)
* add field type max so we can iterate through all possible values
* Avoid making a 2D5 geometry from a 2D only linestring when reprojecting

OGRSpatialReference :
* Upgrade EPSG derived files to EPSG 7.1
* Added support to operate on COMPD_CS coordinate systems
* Added support for importing spatial reference definitions from the OziExplorer .MAP files.
* Introduce static methods to destroy OGRSpatialReference and OGRCoordinateTransformation objects
* Expose more of the axis orientation API to C
* Add missing Eckert 1, 2, 3 and 5 projections
* Fix typos in proj4 conversion for Wagner projections
* Hack in EXTENSION nodes for Google Mercator (3136)
* Validates PROJCS with AXIS definitions (2739)
* Added support for urn:ogc:def:crs:OGC::CRS:84 (and CRS:83, CRS:27) per WMS spec.
* Wide variety of improvements to preserve PE strings through a morphFromESRI()
and morphToESRI() process (2755)
* Fix inversion of dictionary filename and GEOGCS/PROJCS name in OGRSpatialReference::exportToERM() (2819)
* Fix SpatialReference::IsSame() for LOCAL_CS case (2849)
* Fix bug in ImportFromXML that prevented from retrieving projection method
* Accept both href and xlink:href in OGC XML
* improve us foot translation handling (2901)
* OGRSpatialReference::importFromUrl() : add a default 10 second timeout to avoid waiting forever when remote server is stalled
* ensure we can translate mercator1sp with non-zero origin to proj4 (3026)
* ensure scalefactor preserved in somerc translation (3032)
* SRS_ESRI: attempt to correct equidistant cylindrical parameter morph (3036)
* SRS_ESRI: improve plate_carree parameter morphing (3036)
* SRS_PCI : Fix PCI projection string handling for UTM
* esri_extra.wkt: correct equidistant conic definitions (3086)
* SRS_PANORAMA : Added support for British National Grid and Pulkovo 1995 datums.
* Improve recognition of WKT text strings when translating into proj4 hard-coded datum names, in particular nzgd49
(also add ggrs87, carthage, hermannskogel, ire65); Fix ellipsoid parameters for modified airy (3104)
* OSRGetEllipsoidInfo() available for various OGR SRS modules
* added support for OGC:CRS84 and similar srses from wms/wcs spec in SetFromUserInput (3090)

BNA driver :
* Fix output of BNA driver with polygons with inner ring (2985)
* Proper CRLF output on Windows (3256)

CSV driver :
* Add support for reading and writing CSV files with semicolon or tabulation
as the field separator (2925, 2136)
* Add automatic treatment of WKT column as geometry
* Add 'CREATE_CSVT' layer creation option

DXF driver :
* New for GDAL/OGR 1.7.0

Geoconcept driver:
* Fix 'private Class and SubClass headers are inverted' (2919)
* Fix error in writing 2.5D/3D export file (2921)

GeoJSON driver:
* updated JSON-C library to version 0.9
* use VSIF*L API

GML driver :
* Speed-up considerably parsing of GML coordinates in big geometries, in particular on Windows
* Add support for gml3.1.1 srsDimension attribute, to deal with 3D geometries (2311)
* Support multiple <gml:pos> elements in linearrings of polygons (3244)
* Limited support for GML3
* Support direct use of FIDs as long as they are all numeric or they have a completely fixed prefix (1017)
* Fix OGRGMLLayer::GetFeatureCount() if there's a .XSD file available (2969)
* Added support for out-of-band attributes on features (for NAS)
* Adding the date field type to xsd writer and precision info for OFTReal fields. (2857)

GPX driver:
* Add GPX_SHORT_NAMES configuration option to make the GPX driver report shorter field names
and avoid duplicated field names once translated to shapefile (2966)
* Write the <bounds> element (write only)
* Avoid escaping XML content when writing <extensions>.
* Add appropriate xmlns when detecting Garmin GPX extensions

GRASS driver:
* Do not report 3D geometries for 2D GRASS maps (3009)

GTM (GPSTrackMaker) driver :
* New for GDAL/OGR 1.7.0 (3113)

ILI driver :
* Improved curve segmentation algorithm
* ILI1: Support for multiple point geomtries
* ILI1: Support Real and Integer column types

Ingres driver:
* Utilize the new OGC based ingres capabilities (3159)

KML driver:
* Support reading MultiGeometry and layers with mixed geometry type.
* Speed-up considerably the reading of huge KML geometries (3005)
* Speed-up considerably with huge number of layers
* Moved the location of the Style element to match the OGC Schema (2858)
* Advertise 25D geometry type when relevant (1803, 1853, 2181)
* Relax KML driver about xmlns (3004)

MySQL driver :
* Fix mysql driver compilation with mysql 5.1/g++-4.3.2 (Mandriva 2009.1) (2972)
* Fixed bug MySQL driver truncating decimal places for double field type. (2852)

OCI driver :
* OCI varchar2 columns can be up to 4000 bytes (2876)

ODBC driver :
* make it slightly less likely that the srs_tablename parsing will interfere with complex DSNs.
* support for schemas (1969)

OGDI driver :
* fix to avoid applying old spatial filter to unrelated layer
* fix to force ResetReading() when changing current layer

PGEO driver :
* Recognize more ESRI shape type constants. (2991, 3100)
* implement GetFIDColumn() and GetGeometryColumn() methods (2694)

PostgreSQL driver:
* Add support for tables with 'geography' column type introduced in PostGIS 1.5 (3216)
* Extend support of schemas in PG driver with 2 new options in the connection string:
active_schema=foo and schemas=foo[,bar] (522 and 525)
* Implement OGRPGTableLayer::CreateFeature() by using UPDATE instead of DELETE + INSERT (2557)
* Implement SetNextByIndex() for layers of PG datasources (3117)
* Support PG 'real' data type in tables (3006)
* Speed-up PG database opening by avoiding 2 SQL requests per table
* Avoid evaluating GetFieldIndex() on each field of each feature,
which can be very expensive if the layer has many fields
* allow ST_AsBinary with non binary connections
* added a configuration option PG_SKIP_VIEWS.

GeoRSS driver :
* New for GDAL/OGR 1.7.0 (2726)

OCI driver:
* support blob column binding

PCIDSK driver :
* New for GDAL/OGR 1.7.0

Shape driver :
* Handle duplicate field names in shapefile driver. (3247)
* Support for opening and handling .DBF files > 2 GB (3011)
* Optimize to use shape bounds for spatial test before organizing poly (2775)
* Support for alternate date format (2746)
* Improve/fix TestCapability() on OGRShapeLayer
* Refreshed shapelib from upstream

S57 driver :
* Fix incorrect return value of GetFeatureCount() on S57 SOUNDG layer when SPLIT_MULTIPOINT=ON;
also avoid warning on that layer when ADD_SOUNDG_DEPTH=OFF (3163)

SQLite driver:
* Add creation and write support in SpatiaLite-compatible databases
* Add SPATIAL_INDEX creation option for SpatiaLite tables if linked against
libspatialite (default to YES)
* Implement OGRSQLiteTableLayer::TestCapability(OLCFastFeatureCount)
* Implement OGRSQLiteLayer::GetFIDColumn() and GetGeometryColumn()
* Implement TestCapability(OLCRandomRead)
* Add a SQLITE_LIST_ALL_TABLES configuration option to list all(non-spatial)
tables into a SQLite DB even if there are spatial tables
* Avoid reporting the primary key column as a regular column.
* Better precision for double values in CreateFeature()

VFK driver:
* New for GDAL/OGR 1.7.0

VRT driver:
* Allow fast spatial filtering in the VGS_Direct case
* Add support for CreateFeature(), SetFeature() and DeleteFeature() operations
* Added field definition and style control
* Added new vrt/schema creation capability (dummy datasource, ogr2vrt.py script)
* Implement 'SrcRegion' element
* Add a 'reportSrcColumn' attribute to the 'GeometryField' to avoid reporting
the x,y,wkt or wkb source fields in the VRT layer field definition
* Forward TestCapability(), GetExtent(), SetNextByIndex() to source layer when possible

XPlane/Flightgear driver:
* Improve handling of Bezier curves (3030)
* Support new file names used by XPlane 9.00 & later
* Cut into 2 pieces airway segments that cross the antemeridian
* Add new layer 'Stopway' that contains the shape of the stopway/blastpad/over-run of a runway
* Recognize code 16 and 17 for seaplane bases and heliports and add a new field to APT layer

SWIG Language Bindings

General:
* Recommended SWIG version is 1.3.39
* Added API :
- 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
- OGR:
ogr.GeneralCmdLineProcessor(), Geometry.Segmentize(), FieldDefn.GetTypeName(),
Geometry.ApproximateArcAngles()
- OSR :
osr.ImportFromMICoordSys(), osr.ExportToMICoordSys(), SpatialReference.Clone()
osr.EPSGTreatsAsLatLong(), osr.ImportFromEPSGA()
* Make resampling an optional parameter for gdal.RegenerateOverview(),
to be consistent with gdal.RegenerateOverviews()
* NONNULL checks have been added to check various arguments of methods
* add missing constants : DCAP_VIRTUALIO, color interpretations, OGR constants

CSharp bindings :
* Add support for GetFieldAsStringList, GetFieldAsDoubleList and
GetFieldAsIntegerList in the C wrapper (2839)
* Support MSVC2008 builds with the csharp interface (2862)
* Change the dll mapping rules to support the recent MONO versions
* Use GC pinned arrays instead of the double copy in the RasterIO functions (3073)
* Add typemaps to support custom CPLErrorHandler via C swig bindings

Perl bindings :
* in Polygonize make a local copy of the parameters as they are potentially edited

Python bindings :
* Add support for Python 3.X. Compatibility with Python 2.X preserved (3265)
* Remove old-generation Python bindings.
* Add Python binding's version description capabilities (3137)
* NUMPY : Make Band|Dataset.ReadAsArray() take into account preallocated array (2658, 3028)
* Various memory leaks fixed
* Fix gdal.RegenerateOverviews(), Feature.GetFieldAsStringList(),
Feature.GetFieldAsIntegerList(), Feature.GetFieldAsDoubleList(),
Transform.TransformPoints and CoordinateTransformation.TransformPoints
* Extend python TransformPoints typemap to accept any sequence (3020)
* Make Geometry iterable (1886)

Java bindings (general changes):
* Maintained again. A lot of changes to get them into clean state.
* RasterIO API : added API for standard Java arrays in addition to DirectByteBuffer
* Javadoc available at http://gdal.org/java

1.6.0

Not secure
Core :
* RFC 22 : Added RPC and IMD support
* Added support for computing statistics for datasets with arbitrary overviews in GDALRasterBand::ComputeStatistics()
* Added Gaussian resampling in overview building (2137)
* Added Mode resampling in overview building (2347)
* Allow fast NONE overview generation (2677)
* Added in GDALRasterBand::GetRasterSampleOverview() and ComputeRasterMinMax() (2148)
* Preliminary gmljp2 specific changes to address axis orientation (2131)
* Added GDALProxyDataset and GDALProxyRasterBand abstract classes to be able to make proxy datasets and raster bands
* 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)
* Migrate GDALRegenerateOverviews() to C API
* Added GDALDestroyDriver()
* Added special case in GDALCopyWholeRaster to be more friendly when writing a tiled compressed GeoTIFF (massive reduction of destination file size)
* 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
* 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)

* Fix segfault when building overviews with --config USE_RRD YES (2145)
* PAM: save floating point nodata in IEEE floating point binary format
* Fix division by zero in GDALGetRandomRasterSample (2429)
* GDALOpen: Use EOVERFLOW if defined otherwise use hardcoded likely values (2437)
* Replace implementation of arrays for maintaining the list of opened shared datasets by a CPLHashSet to avoid O(n*n) complexity
* Fix GDALRasterBand::IRasterIO fails to read data from dataset when block cache is too small (2457)
* Modify GDALFindAssociatedAuxFile() to only select .aux files that have the same raster configuration as the target dataset (PxLxB). (2471).
* When available use arbitrary overviews for computations in GDALRasterBand::ComputeRasterMinMax() and GDALRasterBand::GetHistogram().
* Fix crash in GDALValidateCreationOptions when passed a creation option not in format key=value (2499)
* Fix 'GDALNoDataMaskBand::IReadBlock doesn't behave correctly when eWrkDT != eDataType' (2504)
* Use nodata masks when generating overviews (2149)
* Improve error propagation when GDALRasterBlock::Write() fails (2524)
* gdalnodatamaskband: add case for uint16 and uint32 as uint32 - fixes neg. nodata values for these
* Add a special case for dealing with RasterIO expansion on writes (773)
* Add GDALValidateCreationOptions() checks in GDALDriver::Create() and GDALDriver::CreateCopy(). Can be disabled with GDAL_VALIDATE_CREATION_OPTIONS=NO
* Optimization of GDALCopyWords for transfer from buffer of packed bytes to buffer of bytes with interleaving (2536)
* Use BlockBasedRasterIO in GDALDataset::IRasterIO for pixel-interleaved datasets when source and destination have the same size (2536)
* PAM: Allow empty category in .aux.xml (2562)
* GDALDataTypeUnion(): Add missing GDT_CInt16 case that was triggering a CPLAssert(FALSE) (linked to 2564)
* PAM: improve the find existing histogram logic to check approx and out of range
* Fix validation of values for creation option parameters of type float
* Fix memory leak related to PAM histograms
* Restrict dataset sharing to a one thread by tracking owning pid (2229)
* rasterio.cpp: Handle >2GB memory arrays on a 64-bit build (2199)

Algorithms:
* Added GDALPolygonize() function
* Added sieve filter
* Add implementation of raster hole filler
* Added proximity algorithm implementation
* Added GDALRasterizeLayers() function to rasterize the all the features in the list of layers rather than individual geometries.
* Added support for point geometries rasterization
* Added line rasterization routine.
* Added GDALCreateGenImgProjTransformer2()

* warper: massive upgrade that fixes number of problems with Cubic Spline and Lanczos resamplers, multiple performance improvements.
* Implement overview building for paletted rasterbands with average resampling by selecting the nearest entry after averaging on R,G,B components (2408)
* Fix destination coordinate system setting logic in GDALReprojectImage (2231)
* Modify GDALChecksum to give it a deterministic behavior 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
* Add options to RPC transformer, use for RPC_HEIGHT offset
* TPS : fix uninitialized variables (2300), fix wrong behavior with negative coordinates (2615)
* gdalgeoloc.cpp : Fix crash in GDALCreateGeoLocTransformer if X_DATASET, etc... cannot be opened (2434)
* warper: Prevent crashes when srcAlphaBand and dstAlphaBand are wrong
* Fix tiling in gdal_grid and output of geotransform when -txe and -tye not specified (2508)
* warper: Wait for the threads to complete before leaving GDALWarpOperation::ChunkAndWarpMulti() (2518)
* warper: When warping an RGBA image whose borders have alpha=0, avoid writing alpha=255 with bilinear, cubic, cubic spline resampling
* warper: Properly set a resample window size for Cubic Spline kernel. (2414)
* gdalsimplewarp.cpp: fix pointer array allocation (2586)

Utilities:
* gdal_lut.py: New for 1.6.0. Sample app applying a greyscale lookup table
* gdal_polygonize.py : New for 1.6.0
* gdal_proximity.py : New for 1.6.0
* gdal_sieve.py: New for 1.6.0
* densify.py: New for 1.6.0. A generic Translator class for ogr2ogr-like operations that can be easily overridden for special translation operations
* 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)
* 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)

* Fix crash in gdalenhance
* Add -nln switch for gdal_contour
* gdalgrid: Fixed zero search radius handling in nearest neighbor interpolation method.
* gdalgrid: Added support for data metrics (minimum, maximum and range) computation.
* gdalgrid: Added spatial filter support applied on the OGR data source
* gdalgrid: Added ability to read values from the attribute field using the "-zfield" option.
* gdalgrid: fix crash on features with NULL geometry or when no point geometry is found on a layer (2424)
* esri2wkt.py: Fix esri2wkt for NG python bindings (2548)
* Build testepsg utility by default when OGR is enabled (Ticket 2554).
* gdaltranslate: new -expand rgb|rgba option to make color table expansion
* gdaltindex: Use correct index variable name
* gdal2tiles.py: Bug fix: switched axes in BoundingBox of tilemapresource.xml.
* gdal2tiles.py: Bug fix: wrong Origin in tilemapresource.xml.
* gdal2tiles.py: New version of GDAL2Tiles (SoC 2008 - GDAL2Tiles Improvements)
* gdal_retile.py: Some minor enhancement optionally storing the georeferencing data of created tiles in a csv file
* gdal_vrtmerge.py: add support for NODATA
* gdalinfo: Don't show RAT if -nomdd is used.
* gdalinfo: Display checksums on overviews when -checksum is specified
* gdalinfo: Display whether the mask band has overviews
* ogr2ogr: reset -gt to 1 with -skipfailures, document -gt (2409)
* ogr2ogr: Output error messages on stderr to be consistent; Make error message about failed reprojection more clearer (hopefully); Advertise the use of -skipfailures in error message (2588)
* nearblack: Add support for scanning from top and bottom as well as from the sides.
* Prevent crash in gdalwarpsimple utility and in GDALSimpleImageWarp() when source dataset has no raster band
* gdal_rasterize: check that coordinates systems match (Ticket 1937)
* gdalwarp: Add cutline support

Various drivers:
* Reports GDAL_DCAP_VIRTUALIO=YES for drivers supporting it (2193)
* Add warnings in CreateCopy() methods for drivers not supporting color tables (1939)
* Simplify and harmonize how ESRI world file extensions are handled for BMP, GIF, JPEG, PNG and GTiff drivers (fix 1734)
* Windows : enable bigtiff by default when using internal libtiff (2257)
* Added plugin building support for ECW, MrSID, HDF5, NetCDF, FITS and SDE drivers.
* fix case of capabilities xml elements to match properly (2322)
* Add ALPHA creation option in the list of creation options

AAIGrid Driver:
* Re-fix nodata test when determining AAIGrid data type (Ticket 2107).
* fix yllcorner computation (1794)
* mark driver as supporting virtualio.
* Fix wrong data type used to read the source band AAIGCreateCopy (2369)
* Add DECIMAL_PRECISION creation option for AAIGRID (2430)

ADRG driver:
* Initialize PAM to avoid creating .aux.xml file when gdalinfo an ADRG dataset
* Prevent opening in update mode && fix reading of blocks in creation mode
* Prevent error message coming from ADRG driver when trying to open in update mode a non-existing dataset
* Avoid error reporting and subsequent failure on some DIGEST files where the last record ends in a non-standard way

BLX Magellan Topo driver:
* New for 1.6.0 (2254 and 2570)

BSB driver:
* Add support for alternate palettes via config option
* 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
* 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

COSAR driver:
* Initialize integral variables to prevent failure of test condition in case file read operation fails; clean signed/unsigned mismatch warning.
* Additional tests to protect against corrupted datasets

DIMAP driver:
* Fix use of static CPL buffers
* Implement GetFileList() and support for opening directory for DIMAP format
* Add metadata at the raster band level by reading the Spectral_Band_Info tag

DODS driver:
* Add using namespace libdap for version 3.8.2 (2404)

DTED driver:
* 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)
* Add support for DTED products strictly following MIL-D-89020 that was buggy
* Fix compilation without CPL
* Improve thread safety

ECW driver:
* Fix memory leaks (2210)
* Be more careful deciding what geotransforms to ignore (1935)
* Rename ecw plugin gdal_ECW_JP2ECW.so/dll (2320)
* Properly set default nPixelSpace and nLineSpace in ECWRasterBand::IRasterIO().
* Added pixel data type checking in ECWCreateCopy() (2593).

EHDR driver:
* Port EHDR driver to large file API (by apetkov) (2580)

EIR (Erdas Imagine Raw format) driver:
* New for 1.6.0

ENVI driver:
* fix problems with old/new state plane zone codes (2227)

ERS driver:
* add support for HeaderOffset keyword (2598)

FAST driver:
* Order the GCP in TL, TR, BR, BL order to benefit from the GDALGCPsToGeoTransform optimization
* Add support for Euromap FAST datasets for IRS-1C/IRS-1D PAN/LISS3/WIFS (2329)
* Fix USGS projection decoding for EOSAT FAST format Rev C (2381)
* Add support for detection of FAST IRS P6 and CARTOSAT-1 band filenames

FITS driver:
* Fix crash in FITS when dataset has metadata; Fix 2 minor Valgrind warnings (2396)
* Fix crash on int32 test case in fits.py for 64-bit GDAL build (2579)

GeoRaster driver:
* New for 1.6.0

GFF driver:
* Close file pointer in dataset destructor

GIF driver:
* Disable opening of large files which hang GDALOpen() (2542)

GRASS driver:
* Fix obvious memory leaks in GRASS driver (2537)
* fix to use G_free() instead of free() (1983)

GRIB driver:
* Moved from spike to trunk: grib now standard, but support --without-grib option

GSAG driver:
* Prevent crash on huge number of rows
* Prevent Valgrind warnings on bogus short GSAG files
* Major update to correct upside problems, removing Create (2224, 1616, 2191)

GS7BG driver:
* Fixed geotransformation matrix calculation (2132)
* Properly read the header on big-endian system.
* Fix bigendian support (2172)

GTiff driver:
* Add support for reading and writing embedded nodata masks of a TIFF file (TIFFTAG_SUBFILETYPE=FILETYPE_MASK)
* Added SUBDATASETS support
* Add the ability to create files with PHOTOMETRIC=PALETTE.
* Add the ability to update palette on existing files (2421)
* Enforce PROFILE properly for Create (1527)
* 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
* Internal libtiff : refresh from upstream libtiff
* Added GTiffSplitBitmapBand to treat one row 1bit files as scanline blocks (2622)
* Don't use GCS if it is less than 1 (2183).
* 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).
* Fix memory leak in gt_wkt_srs.cpp
* Prevent crash in GTiff driver in case we cannot GDALOpen the newly create-copied file
* Fix buffer overflow when calling GTIFDirectoryInfo in GTIFGetOGISDefn (2372)
* add special handling for 24bit data which gets byteswapped by libtiff (2361)
* Replace hard-coded 3 byte increment by iPixelByteSkip in int24 gtiff decoding (2361)
* 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
* Add a ENDIANNESS creation option to GTiff driver for debug purpose mostly
* Fix writing of blocks on TIFF files in non-native endianness (2398)
* Push extra bands of pixel interleaved data into block cache (2435)
* Improve integration with PAM metadata loading and saving (2448)
* Fix potential buffer overflow in GTIFAngleStringToDD (committed in upstream libgeotiff) - 2228
* 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)
* 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
* Prevent crash on tiff_ovr_9 when JPEG-In-TIFF support is not built
* 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)
* Handle more gracefully the case where we open or create a TIFF file with a compression method not built in libtiff (use of TIFFIsCODECConfigured)
* Don't fail when TIFFTAG_JPEGCOLORMODE tag cannot be read
* IPP libjpeg compatibility changes (2606)
* ensure zip/jpeg quality is preserved in crystalize. (2642)
* support handling nodata via pam/aux mechanisms (2505)
* ensure TIFFFlush() is called in FlushCache() (2512)
* Replace Crystalize() by SetDirectory() in GTiffDataset::IBuildOverviews() so that 2 consecutive ds.BuildOverviews() calls work without needing to close and reopen the dataset in between
* Prevent crash when disk is full
* Add detection of big-endian bigtiffs when BIGTIFF_SUPPORT is *NOT* defined
* Add missing ScaleAtCenter parameter for Hotine Oblique Mercator when writing the geotiff keys
* Added logic to pre-clear geotiff tags when updating a file (2546)
* Add ExtraSample tag in overviews too (2572)
* Fix handling of non-degree angular units (601)

GXF driver:
* Add GXFRasterBand::GetNoDataValue (fix 835)
* Avoid crash on bogus GXF file

HDF4 driver:
* add support for projected NRL products (2225)
* make a block consist of several scanlines for SDS case to speed up (2208)
* Add H4ST prefix to names of HDF4SubdatasetType enumeration values. (2296).
* Remove useless and dangerous redefinition of sincos in HDF-EOS (2494)
* Added compatibility definitions for HDF 4.2 library (2609)
* Read HDF raster images containing in HDF-EOS datasets (2656)

HDF5 driver:
* Fix minor memory leaks and one incorrect memory usage in HDF5
* implement support for 1.8+ hdf library versions (2297)

HFA driver:
* Avoid possible uninitialized variable usage in HFAWriteXFormStack()
* Fix BASEDATA count value (preceding pointer) at 1 (2144)
* Incorporate generalization of EPT_f32 reduced precision handling (1000)
* Add missing creation options, fix doc to refer to COMPRESSED instead of COMPRESS (2167)
* remove static buffer to improve thread-safety
* 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)
* add support for writing 1, 2 and 4 bit data (2436)
* 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).
* avoid reducing array sizes if writing them in random order (2427)
* Prevent writing out cached information after the file has been closed. Loosely related to (2524).
* Error out gracefully and early on attempts to write to readonly file (2524)
* Open the dependent file(s) with same permissions as master (2425)
* Fix crash in HFACompress::compressBlock when compressing random data with m_nDataTypeNumBits >= 16 (2525)
* Fix reading of a non-initialized compressed HFA file (2523)
* Add FORCETOPESTRING, and ensure ProjectionX applied to all bands (2243)
* Added support for unique values color tables (2419)

HTTP driver:
* Fix HTTP driver when falling back to /tmp (2363)

IDRISI driver:
* Force min/max calculation on IWriteBlock
* remove conditional from CreateColorRamp() call
* Fix 2444 (lat/long) and 2442 (uppercase file extension)

ILWIS driver:
* 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.
* Fix memory leaks in ILWIS driver
* 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.
* 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.
* Solved unwanted rounding in the pixel size, that resulted in wrong map size calculation.

INGR driver:
* Support splitting bitonal images into scanline blocks too (1959)
* Fix compilation of INGR driver on big-endian target (2613)

ISIS3 driver:
* fix earth model, already in meters, not kilometers! (2321)
* ensure we adjust first tile offset depending on band (2573)

ISO8211 driver:
* corrections to handle double byte attributes better (1526)
* add a -xml option to 8211dump utility; add a 8211createfromxml utility to generate a ISO8211 file from the output of 8211dump -xml
* robustness fixes

JP2KAK driver:
* Add VSI*L reading and writing (vsil_target) (2255)
* Remove KAKADU4 related ifdefs, we now assume at least KAKADU 4.2.
* disable JPIP - not working with modern Kakadu

JPEG driver:
* Added support for reading georeferencing from .tab files. Fixes 682.
* Add support for reading images in CMYK and YCbCrK color spaces (2443)
* make sure bHasDoneJpegStartDecompress is set in Reset() (2535)
* Added fill/flush support compatible with IPP libjpeg (2606)

LCP (FARSITE) driver:
* New for 1.6.0

L1B driver:
* Added support for NOAA-18(N) and METOP-2 datasets; tiny code refactoring.
* L1B : add auto guess of data format when it is 2 spaces or empty string
* The GAC GCPs are not tied to the center of pixel.
* Serious code rewriting in order to read datasets without archive header

MEM driver:
* Avoid failure when doing mem_driver->Create('MEM:::')

MrSID driver:
* Use VSI Virtual File API in MRSID DSDK I/O routines. MrSID reading now
works through the VSI calls as any other GDAL driver.
* Added support for MrSID DSDK 7.x (2410)
* Use int 32 types instead of long types for LTI_METADATA_DATATYPE_UINT32 and LTI_METADATA_DATATYPE_SINT32 metadata (2629)

MSG driver:
* Fixes and improvements to enable compilation with GCC 4.x (Ticket 2168).

NDF driver:
* Support NDF2 files in other than the current directory (2274)
* Added somewhat improved coordinate system support (2623)

NetCDF driver:
* Handle very large attributes properly (2196)
* NETCDF plugin name doesn't correspond to the loader entry name causes an error in AutoLoadDrivers (2464)
* Fix allocation of panBandZLev (2582)
* Fix accidentally too large memory allocation (2591)
* Do not report char variables as subdataset (2599)
* Fix LAEA projection (2584)

NITF driver:
* Add support for RPB and IMD files
* Handle NITF JPEG-compressed image with data mask subheader (IC=M3) multi-blocks (2364)
* Implement SetProjection for NITF (2095)
* Added support for decoding 12 bit images (2532)
* Added support for writing TEXT segments in CreateCopy()
* Added support for writing arbitrary user defined TREs
* Fix 2249 : shift when writing NITF color table with nColors < 256
* Prevent crash with LUT entry count > 256
* Disable unnecessary VSIFFlush() calls that slowdown writing on some systems
* Apply untested RPC00A remapping (2040)
* Fix 2135 by narrowing workaround test made for 1750
* Prevent crash on NITF file without image segment (2362)
* Additional fix for handling 1-bit uncompressed NITF images with NITF_IC=NM (1854)
* Set IREP=RGB implicitly when the first 3 channels of an image are R,G,B (2343)
* Allocate one extra byte for the NULL terminating character when reading TEXT data in NITF file (2366)
* Fix 'adding BLOCKA TRE precludes writing IGEOLO' (2475)
* Add GDAL_DMD_CREATIONOPTIONLIST for NITF
* Prevent crash when using a bad value for TRE creation option
* Fallback to pam info for nodata (2596)

PAUX driver:
* Check for either generated spelling of AuxiliaryTarget (2219)

PCRaster driver:
* Add overview support
* Added support for CSF version 1. Updated nodata values to be equal to gdal's internal ones.

PDS driver:
* Add support for style comments (2176)
* Improve PDS dataset identification & fixes image segment offset (2397)
* Add LSB_SIGNED_INTEGER

PGCHIP driver:
* 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

PNM driver:
* Fix potential buffer overflow in case of bad PNM file
* Fix logical tests in PNM Identify (bug 2190)

RAW drivers:
* manage RawRasterBand NODATA values at PAM level
* RawRasterBand : add extra parameter bOwnsFP to enable the RawRasterBand to take ownership of the fpRaw so as to close it properly in its destructor
* Fix crash in rawdataset.cpp with pixeloffset=0 (2576)

RMF driver:
* Do not forget to swap block size/offset table on big-endian archs. (2169)
* Added support for reading and writing extended header..
* RMF driver can crash / corrupt stack when importing projection from Panorama (2277)
* Fixed error checking code returned by color table read function.
* Added support for reading big endian variant of the RSW files.
* Report units and dataset statistics (2670)

RPFTOC driver:
* Enable external overview building on RPFTOC subdatasets
* Use new proxy API instead of RPFTOCGDALDatasetCache
* Initialize PAM for RPFTocDataset
* Implement GetFileList() for RPFTOCDataset and RPFTOCSubDataset

RS2 driver:
* Added projection reading
* Updates to RADARSAT-2 driver to account for tiled GeoTIFF images.
* Capture all files for GetFileList().
* Support selecting directory as well as product.xml to open the dataset.
* Various other enhancements

SDTS driver:
* Prevent infinite recursion in SDTSRasterReader::GetBlock when CEL0 file is truncated
* SDTS DEM : Read metadata in the IDEN file

SGI driver:
* Implemented SGI write support (always RLE)
* Fix SGI driver that misidentified SRTMHGT files as SGI files (2289)

Terragen Driver:
* Fix overflow in implicit constant conversion (2119)

Terralib driver:
* New for 1.6.0

TSX driver:
* Added support to extract GCPs from XML metadata for TerraSAR-X SSC products.
* Provide an error message if the sceneInfo tag cannot be found in the TerraSAR-X image metadata.
* Fix lat/long inversion (whoops, 2565); expose additional metadata items

USGSDEM driver:
* mark NTS and INTERNALNAME as legal options
* make parser more permissive (2348)
* add missing ZRESOLUTION creation option in GDAL_DMD_CREATIONOPTIONLIST
* USGSDEM: add precisions to creation options documentation; check that source dataset dimensions are at least 2x2 for CreateCopy()
* USGSDEM: fix USGSDEMDecToPackedDMS when input is very close to an integer degree value

VRT driver:
* Use VSIF Large API in VRTDataset::Open to fix 1070
* recover from failure to create transformer (2240)
* Added LUT based transformation support to the VRTComplexSource
* Extend the output of <SimpleSource> in a forward and backward compatible way, and make use of GDALProxyPoolDataset when possible
* Add the <ColorTableComponent> element to <ComplexSource> to do color table expansion in the VRT
* Fix failure when attempting to read a warped VRT made from a 3-band dataset with -dstalpha option (2502)
* 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.
* Allow empty category in VRT rasterband (2562)
* Use nodata in VRTKernelFilteredSource::FilterData (1739)
* Fix VRT average resampling when resampling factor > 100% (1725)

WCS driver:
* Improvements to identify Band field name
* More fiddling with GetCoverage() bounding boxes. Avoid half pixel 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.
* Strip namespaces off DescribeCoverage response (early), and add a bug
workaround for GeoServer WCS 1.1 responses.
* Correct wcs 1.1 band identification logic
* URL encode format and coverage name. Improve error recognition.
* GridOffset should be top left corner of pixel center oriented bounds

WMS driver:
* Add ClampRequests setting (2450)
* 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)
* Add a <Timeout> option (2646)

XPM driver:
* Prevent crash when opening an XPM file with large file API


OGR 1.6.0 - Overview of Changes

General:
* RFC 21: OGR SQL type cast and field name alias (2171)
* Added support for outline color in OGRStyleLabel (2480)
* Added support for symbol outline color in OGR Style Strings (2509)
* Added geometry type merger
* Added SetEquirectangular2()
* Added SetLinearUnitsAndUpdateParameters() to C API
* Add support to translate OGRPolygon to OGRMultiLineString
* 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
* Many performance fixes in OGRGeometryFactory::organizePolygons (1217, 2428, 2589)
* Changed OGRFeature::GetStyleString() to return the value of the OGR_STYLE field if no style string have been specified.
* Ensure OpenShared sharing is only with same thread (2229)
* ogrfeaturestyle : OGRSTBrushAngle parameter should not be georeferenced.
* Strip whitespaces at the start and end of parsed pairs of style elements in OGRStyleTool::Parse(). As per 1413.
* Remove empty linestrings from multilinestring objects
* Allow 'POINT EMPTY' in WKT (bug 1628)
* Fix OGRGeometryCollection::getCoordinateDimension() (2334)
* Make OGRLineString::importFromWkb and OGRPolygon::importFromWkb with EMPTY geometries
* 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
* Reintroduce OFTWideString and OFTWideStringList but mark them as deprecated (2359).
* Fixed segmentation fault in swq_select_finish_summarize when SQL query issued on layer without any attributes like empty shapefile (Ticket 2358).
* Fix crash in OGRDataSource::ExecuteSQL with an empty SQL query (2386)
* Make OGRLayer::FilterGeometry more restrictive in the geometries it selects (2454)
* OGRStyleVector class and related stuff has been removed (2070).

* Fixed OGR SQL to properly escape single quotes in string literals (Ticket 2220).
* Prevent an OGR driver from being registered several times (2544)

Utilities:
* Start on a dissolve utility based on ogr2ogr
* Add --version and --licence options for OGR CLI utilities

OGRSpatialReference:
* RFC 20: Axes methods
* Upgrade to EPSG 6.17
* Added support for "International Map of the World Polyconic" and "Wagner I-VII" projections.
* Add EquidistantCylindricalSphere and GaussLabordeReunion (2134)
* Fix exportToProj() translation for OSGB36 (2160)
* ogr_srs_panorama.cpp : Fixed search in ellipsoid list
* ogr_srs_pci.cpp : List of ellipsoids updated
* Treat spherical mercator 1SP similarly to normal mercator 1sp (proj 9).
* Ensure Clear() clears the bNormInfoSet flag and use Clear() from the various import methods to wipe old state (2533).
* add import/export for MITAB CoordSys
* Added declarations for OSRImportFromMICoordSys()/OSRExportToMICoordSys(); make OSRImportFromPanorama()/OSRExportToPanorama() externally visible again.
* Ensure rectified_grid_angle gets stripped for HOM projections (2575)
* ogr_srs_esri.cpp: Correct test of iRGAChild (2575).
* Recent EPSG releases seem to use PolarLongOrigin instead of ProjCenterLong for the Krovak projection parameters. Handle either (2559).
* Test that input pointer is not NULL in OGRSpatialReference::importFromWkt().

AVC driver:
* Make AVCE00 a distinct driver
* Update from AVCE00 master, includes the fixes for 2495 (GCC warnings)
* Detect compressed E00 input files and refuse to open them instead of crashing (2513)
* Avoid scanning the whole E00 input file in AVCE00ReadOpenE00() if the file does not start with an EXP line (1989)

BNA driver:
* Fix crash when trying to write features with empty geometries
* Add support for Unix End-Of-Line characters on Windows

CSV driver:
* Add support for writing the geometry of features through the new GEOMETRY layer creation option
* Allow to define field width via .csvt text file (bug 2142)
* Handle more gracefully CSV files with an empty column title (2538)

DGN driver:
* add some experimental linkage testing

DODS driver:
* add using namespace libdap for version 3.8.2 (2404)

Geoconcept Export driver:
* New for 1.6.0

GeoJSON driver:
* Fixed GeoJSON driver crash when writing features with null geometry (2212)
* GeoJSON: enabled read/write of 25D geometry types.
* Improved GeoJSON driver to gracefully handle JSON strings that do not encode GeoJSON content.
* Support GeoJSON 1.0 Spec CRS 'link' and 'name' members. (2665)

GPX driver:
* XML Datetime can be expressed without explicit timezone mention
* <extensions> is valid inside <rtept> and <trkpt> too
* Add support for GPX 1.0 reading
* Handle degenerate and NULL geometries in creation mode
* Remove noisy CPL_DEBUG message when GPX driver built without Expat and when the input file doesn't look like GPX (2394)
* Prevent GPX and KML drivers to read too much of a non GPX/KML file (2395)
* GPX writer: Remove leading spaces for a numeric field (2638)

GML driver:
* Support reading GML 3 posList geometry (2311)
* Add logic to potentially track geometry type (mostly for NAS just now)
* Fix 2141 : GML driver recognizes improperly strings as integers
* Do geometry element name test (IsGeometryElement) case sensitive to avoid false positives on property names, and such (2215).
* Fix memory bug in OGRGMLLayer::GetNextFeature() when using attribute filter (2349)

GMT driver :
* Remove spaces from numeric field values before writing to avoid unnecessary quoting.

GRASS driver:
* Call Vect_close() in the OGR GRASS driver (2537)

INGRES driver:
* New for 1.6.0

Interlis 1 driver:
* Support for SURFACE polygons spread over multiple OBJECTs Polygonize on demand. Generation of area layer
* Fix a crash (2201)
* Fix memory leaks & apps/test_ogrsf correctness in OGRILI1 (2203)
* Prevent crash in OGRILI1DataSource::Open with an empty string (2335)
* Fixed column order detection for some Interlis 1 models (2595)

Interlis 2 driver:
* Fix memory usage and leaks in OGRILI2 (bug 2203)
* Fix logic to detect ILI2 datasets (2516)

KML driver:
* Updated KML write driver to support KML v2.2.
* Added support for "SchemaData" - typed KML fields that maintain feature data.
* Support of date types, written out as strings (2264)
* Added automatic coordinate system transformation to WGS84 (the only CS that KML recognizes). (2271)
* Report XML parsing error in KML driver in a similar way it's done in the GPX driver
* Speedup detection of KML documents
* Use VSI Large File API
* Corrected case on schemaUrl attribute and added the id attribute to the schema element. (1897)

MITAB driver:
* Upgraded to current dev version of MITAB - includes a number of TAB StyleString improvements
* Support font point outline color

MySQL Driver:
* Fix memory leaks in MySQL driver
* Fix crash with very long WHERE clause in MySQL driver
* Use assignSpatialReference for read features
* Fix SRS cache in FetchSRS()
* MYSQL: Add backquotes around table and column names to enable the use of reserved keywords (2315)
* Fix reporting of capabilities for OGRMySQLResultLayer
* return proper results for various writing capabilities (2184)

NTF driver:
* Update for new meridian and strategi products (2600)

OCI driver:
* Fixed memory leaks in OCI driver reported by Linda Thompson (2120)
* Support for OCI + VRT to access non spatial data (2202)
* Prevent from calling CPLError when SDO_GEOMETRY is missing (non spatial) (2202)
* Added support for fields of type DATE and TIMESTAMP [WITH [LOCAL] TIME ZONE] as OFTDate and OFTDateTime.
* An extra space is needed for the decimal separator when retrieving the numeric fields (2350)
* Improved OCI driver to query spatial extent of layer using SDO_GEOM_METADATA for better performance (Ticket 543).
* OCI: Filter out MDSYS.CS_SRS entries with NULL value of WKTEXT.
* add compound and stroked-arc read support

PG (Postgres/PostGIS) Driver:
* Add the ability to specify a list of tables to be treated as layers with the 'tables=' connection string option (1699)
* Add SPATIAL_INDEX creation option to create GIST index. Turned ON by default (959)
* Add support for listing and correctly fetching geometry type of inherited spatial tables (2558)
* Add support for Postgis tables with multiple geometry columns (1476)
* Fixes to Postgres binary cursor mode and improvement/fixes to data types handling (2312)
* Implement efficient GetFeatureCount, SetSpatialFilter and GetExtent for OGRPGResultLayer
* Apply spatial filter in OGRPGDataSource::ExecuteSQL()
* Make binary cursor work with non-PostGIS geometry column
* Fix memory leaks
* Fix write outside of allocated buffer in OGR PG driver (2303)
* Use assignSpatialReference for read features
* Fix geometry filter when there is no PostGIS geometry column
* Fix getting the PK of a table with PostgreSQL <= 7.3; Fix CreateFeatureViaCopy when geometry column is not PostGIS geometry
* Use the 'auth_srid' to avoid mismatches between OGR and PostGIS WKTs of EPSG codes (2123)
* Fix reporting of capabilities and handling of spatial and attribute filters by OGRPGResultLayer
* Add PG_USE_POSTGIS to be able to disable PostGIS for debug purpose
* Re-enable PQsetClientEncoding but set it to UNICODE now that the driver advertises OLCStringsAsUTF8
* Replace use of risky sprintf by CPLString to avoid potential buffer overflows
* In non PostGIS mode, skip tables of schema 'information_schema'
* Allow VACUUM through ExecuteSQL() without a transaction (2619).

PGEO driver:
* correct testcapability results (2601)
* treat type 50 geometry as SHPT_ARC (1484)

SDE driver:
* Versioned editing/write support for SDE.

SQLite driver:
* Added support for geometry_columns, and WKB support
* Added preliminary FGF to geometry support
* Added spatial_ref_sys support
* Added preliminary support for spatialite geometries

SHAPE driver:
* CreateField() now works on populated layers (2672)
* Cleanup to remove unused old classification code for multipolygons (2174)
* Fix error class in VSI_SHP_Error (2177)
* Fix crash with polygon with nParts == 0
* Change SHAPE driver to return a NULL geometry instead of an empty OGRMultiPoint, OGRMultiLineString and OGRMultiPolygon (bug 2217)
* Fix crashes on corrupted geometries (2218 and 2610)
* Fix crash when dealing with unhandled field types in shape driver, in DEBUG mode (2309)
* Add case for wkbMultiLineString and 25D in OGRShapeLayer::CreateFeature
* Make SHPWriteOGRObject write a SHPT_NULL object for empty geometries and handle correctly multigeometries with empty geometries inside
* Make sure field type set to OFTDate when OFTDataTime requested (2474)
* Implement OGRShapeDataSource::DeleteLayer() (2561)

S57 driver:
* Ensure SOUNDG in multipoint form is MultiPoint25D not 2D.
* Print out contents of OGR_S57_OPTIONS environment variable if set (for debug
purposes).
* Correct control for applying updates, now done in Ingest method.

VRT driver:
* carry style string through VRT layer
* Pass the envelope of the geometry as the spatial filter in the sub-query (2214)
* Add "shared" attribute on SrcDataSource to control sharing. Default to OFF for SrcLayer layers, and ON for SrcSQL layers. This endeavors to avoid conflicts of layer state. (2229)

XPlane/Flightgear driver:
* New for 1.6.0



SWIG Language Bindings

SWIG General :
* Added GetHistogram
* Added SetLinearUnitsAndUpdateParameters
* Added GetSubDatasets method on Dataset
* Added SetEquirectangular2
* Cast returned value to OGRDriverShadow in GetDriver method instead of OGRLayerShadow
* Make it possible to skip adding the inline C functions into the wrapper
* Fix SWIG ReadRaster_internal and DSReadRaster_internal may crash (2140)
* 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.
* Added SetMetadataItem/GetMetadataItem
* Added gdaltransformer wrapper for RFC 22
* implement the BuildFromEdges function 2380
* Added ComputeProximity
* Added GDALRegenerateOverviews
* Added GetFileList
* Added GRA_Lanczos
* Added gdal.Polygonize()
* expose GDALDestroyDriverManager() to improve leak detection
* Added RasterizeLayer() and SieveFilter()
* If we receive an odd array type in BandWriteArray(), cast the array to float64 which we do support (2285).

SWIG C related changes:
* Implement GDALProgressFunc callback for C (fix for 2122)
* Fixed that passing null as the options parameter of Driver.CreateCopy causes access violation (2185).
* Added GDALCreateCopy sample application
* Support for signing the GDAL C assemblies (2186)
* Added raster specific tests
* Reworked the wrapper implementation
* Added the bandMap parameter to the C Dataset.ReadRaster and Dataset.WriteRaster API.
* Added a C sample to demonstrate the GDALDatasetRasterIO operations.
* Added Band.GetHistogram to the C bindings
* Sample application for Band.GetHistogram.
* Added the GDALAdjustContrast sample to demonstrate the image correction at the C side.
* Added Dataset.GetGCPs, Dataset.SetGCPs and GCPsToGeoTransform in the C bindings (bugs 2426, 1986 and 1677
* Added support for using OGR.Layer in Gdal.Polygonize
* Changed the behavior to use OSR.SpatialReference and OSR.CoordinateTransformation instead of defining the same classes in the OGR namespace
* Changed the scope from internal to public of the required functions

SWIG Python related changes:
* Fix layer __getitem__ bug (2187)
* 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.
* add date/time fetching support to the generic GetField implementation... note this is not real 'datetime' support yet
* a typemap for taking in lists of GDAL objects 2458
* don't always return 0 for OGRErrs 2498
* Added GetDefaultHistogram() with Python implementation
* support for mingw Windows builds
* Link with gdal_i.lib instead of gdal.lib when building with MSVC compiler. (2578)

SWIG Perl
* 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?).
* driver's create method's 2nd parameter, if given, is a listref
* Support Cygwin by adding -lstdc++ to LIBS if OS is cygwin
* Add GetDriver method as an alias to _GetDriver for DataSource. This fixes an unnoticed side-effect of rewrapping GetDriver for root class OGR.
* force name to be a string for _GetLayerByName and make default for name 0
* fix Layer::Schema
* use perl hash also for fields in schema (the new API was not really implemented), add Schema method also for Feature
* croak in Geometry::create unless type, wkt, wkb, or gml given
* 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
* add exception support as for OGR
* 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
* Add wrappers for field types datetime and lists. Do not use the overloaded (field name) versions of the get/set functions.
* 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.
* Support HEXWKB in Geo::OGR::Geometry::create.
* As* methods for Geometry as aliases for ExportTo; SpatialReference->create constructor
* made needed links from parameters to typemaps to make Get- and SetDefaultHistogram methods work in Perl
* support for mingw Windows builds

SWIG Java:
* removed colortable from java bindings for now (2231)

1.5.0

Not secure
Core:
* Enable Persistent Auxiliary Metadata (.aux.xml) by default.
* Support for "pam proxies" for files in read-only locations.
* Create and !CreateCopy pre-Delete output existing dataset.
* Added Identify() method on drivers (per RFC 11: Fast Format Identify)
* Implement !GetFileList() on datasets (per RFC 12).
* Implement Delete(), Rename(), Copy() based on !GetFileList() (per RFC 12).
* vrtdataset.h, memdataset.h and rawdataset.h are now considered part of
the public GDAL API, and will be installed along with gdal.h, etc.
* Support nodata/validity masks per RFC 14: Band Masks.
* Plugin drivers test for ABI compatibility at load time.
* Creation flags can now be validated (this is used by gdal_translate)
* Default block cache size changed to 40MB from 10MB.

Algorithms / Utilities:
* gdal_grid: New utility to interpolate point data to a grid.
* gdal2tiles.py is new for 1.5.0.
* gdaltransform: stdin/stdout point transformer similar to PROJ.4 cs2cs.
* gdalwarp: Several fixes related to destination "nodata" handling and
nodata mixing in resampling kernels.
* gdalwarp: Added Lanczos Windows Sinc resampling.
* gdal_rasterize: added -i flag to rasterize all areas outside geometry.
* gdalenhance: new utility for applying histogram equalization enhancements.
* gdalmanage: Utility for managing datasets (identify, delete, copy, rename)
* nearblack: Utility for fixing lossy compressed nodata collars.

Intergraph Raster Driver:
* New for 1.5.0.

COSAR (TerraSAR-X) Driver:
* New for 1.5.0.
* SAR Format.

COASP Driver:
* New for 1.5.0
* SAR format produced by DRDC CASP SAR Processor.

GFF Driver:
* New for 1.5.0

GENBIN (Generic Binary) Driver:
* New for 1.5.0.

ISIS3 Driver:
* New for 1.5.0.
* Also PDS and ISIS2 driver improved substantially and all moved to frmts/pds

WMS Driver:
* New for 1.5.0.

SDE Raster Driver:
* New for 1.5.0.

SRTMHGT Driver:
* New for 1.5.0.

PALSAR Driver:
* New for 1.5.0.
* SAR format.

ERS Driver:
* New for 1.5.0.
* ERMapper ASCII Header

HTTP Driver:
* New for 1.5.0.
* Fetches file by http and then GDALOpen()s.

GSG Driver:
* New for 1.5.0.
* Golden Software Surfer Grid.

GS7 Driver:
* New for 1.5.0.
* Golden Software Surfer 7 Binary Grid.

Spot DIMAP Driver:
* New for 1.5.0.

RPFTOC Driver:
* New for 1.5.0.

ADRG Driver:
* New for 1.5.0.

NITF Driver:
* Added support for writing JPEG compressed (IC=C3).
* Added support for reading text segments and TREs as metadata.
* Added support for 1bit images.
* Added support for GeoSDE TRE for georeferencing.
* Support PAM for subdatasets.
* Improved NSIF support.
* Support C1 (FAX3) compression.
* Improved CADRG support (913, 1750, 1751, 1754)

ENVI Driver:
* Many improvements, particularly to coordinate system handling and metadata.

JP2KAK (Kakadu JPEG2000) Driver:
* Now builds with libtool enabled.

GTIFF (GeoTIFF) Driver:
* Now supports BigTIFF (read and write) with libtiff4 (internal copy ok).
* Upgraded to include libtiff 4.0 (alpha2) as the internal option.
* Support AVERAGE_BIT2GRAYSCALE overviews.
* Produce pixel interleaved files instead of band interleaved by default.
* Support TIFF files with odd numbers of bits (1-8, 11, etc).
* Add ZLEVEL creation option to specify level of compression for DEFLATE method

GIF Driver:
* Nodata/transparency support added.

JPEG Driver:
* Support in-file masks.

AIGrid Driver:
* Supports reading associated info table as a Raster Attribute Table.

HFA Driver:
* Support MapInformation/xform nodes for read and write.
* Support AVERAGE_BIT2GRAYSCALE overviews.
* Support Signed Byte pixel type.
* Support 1/2/4 bit pixel types.
* Support PE_STRING coordinate system definitions.
* Support nodata values (1567)

WCS Driver:
* Support WCS 1.1.0

DTED Driver:
* Can now perform checksum verification.
* Better datum detection.

HDF4 Driver:
* Support PAM for subdatasets.

Leveller Driver:
* Added write support.
* Added v7 (Leveller 2.6) support.

OGR 1.5.0 - Overview of Changes

General:
* Plugin drivers test for ABI compatibility at load time.
* SFCOM/OLEDB stuff all removed (moved to /spike in subversion).
* Various thread safety improvements made.
* Added PointOnSurface implementation for OGRPolygon.
* Added C API interface to OGR Feature Style classes (RFC 18).

Utilities:
* All moved to gdal/apps.

OGRSpatialReference:
* Supports URL SRS type.
* Upgraded to EPSG 6.13.
* Operating much better in odd numeric locales.

BNA Driver:
* New for 1.5.0.

GPX Driver:
* New for 1.5.0.

GeoJSON Driver:
* New for 1.5.0.

GMT ASCII Driver:
* New for 1.5.0.

KML Driver:
* Preliminary read support added.

DXF / DWG Driver:
* Removed due to licensing issues with some of the source code. Still
available in subversion from under /spike if needed.

PG (Postgres/PostGIS) Driver:
* Added support for recognising primary keys other than OGR_FID to use as FID.
* Improved schema support.
* Performance improvements related to enabling SEQSCAN and large cursor pages

Shapefile Driver:
* Do not keep .shx open in read only mode (better file handle management).
* Use GEOS to classify rings into polygons with holes and multipolygons if it is available.
* Support dbf files larger than 2GB.

MySQL Driver:
* Added support for BLOB fields.

MITAB (MapInfo) Driver:
* Upgraded to MITAB 1.6.4.

Interlis Drivers:
* Support datasources without imported Interlis TID
* Remove ili2c.jar (available from http://home.gdal.org/dl/ili2c.jar
* Support for inner rings in Surface geometries.
* Support spatial and attribute filters.

SWIG Language Bindings

* The "Next Generation" Python SWIG bindings are now the default.
* Python utility and sample scripts migrated to swig/python/scripts and
swig/python/samples.
* Added Raster Attribute Tables to swig bindings.
* Added Geometry.ExportToKML
* Added CreateGeometryFromJson
* Added Geometry.ExportToJson

SWIG C related changes:
* Support for the enumerated types of the C interface
* C namespace names and module names follows the .NET framework naming guidelines
* Changed the names of the Windows builds for a better match with the GNU/Linux/OSX builds
* The gdalconst assembly is now deprecated
* GDAL C libtool build support
* !CreateFromWkb support
* Dataset.!ReadRaster, Dataset.!WriteRaster support
* Added support for Dataset.!BuildOverviews
* More examples added

SWIG Python related changes:
* Progress function callback support added. You can use a Python function, or the standard GDALTermProgress variant
* Sugar, sweet, sweet sugar.
* ogr.Feature.geometry()
* ogr.Feature.items()
* ogr.Feature.keys()
* doxygen-generated docstrings for ogr.py
* geometry pickling
* setuptools support
* !PyPi http://pypi.python.org/pypi/GDAL/
* setup.cfg for configuring major significant items (libs, includes, location of gdal-config0
* support building the bindings from *outside* the GDAL source tree

SWIG Java:
* SWIG Java bindings are orphaned and believed to be broken at this time.


GDAL/OGR 1.4.0 - General Changes

Perl Bindings:
- Added doxygen based documentation.

NG Python Bindings:
- Implemented numpy support.

CSharp Bindings:
- Now mostly operational.

WinCE Porting:
- CPL
- base OGR, OSR and mitab and shape drivers.
- GDAL, including GeoTIFF, DTED, AAIGrid drivers
- Added test suite (gdalautotest/cpp)

Mac OSX Port:
- Added framework support (--with-macosx-framework)

1.4.0

WCS Driver:
- New

PDS (Planetary Data Set) Driver:
- New

ISIS (Mars Qubes) Driver:
- New

HFA (.img) Driver:
- Support reading ProjectionX PE strings.
- Support producing .aux files with statistics.
- Fix serious bugs with u1, u2 and u4 compressed data.

NITF Driver:
- Added BLOCKA reading support.
- Added ICORDS='D'
- Added jpeg compression support (readonly)
- Support multiple images as subdatasets.
- Support CGM data (as metadata)

AIGrid Driver:
- Use VSI*L API (large files, in memory, etc)
- Support upper case filenames.
- Support .clr file above coverage.

HDF4 Driver:
- Added support for access to geolocation arrays (see RFC 4).
- External raw raster bands supported.

PCIDSK (.pix) Driver:
- Support METER/FEET as LOCAL_CS.
- Fix serious byte swapping error on creation.

BMP Driver:
- Various fixes, including 16bit combinations, and non-intel byte swapping.

GeoTIFF Driver:
- Fixed in place update for LZW and Deflated compressed images.

JP2KAK (JPEG2000) Driver:
- Added support for reading and writing gmljp2 headers.
- Read xml boxes as metadata.
- Accelerate YCbCr handling.

JP2MrSID (JPEG2000) Driver:
- Added support for reading gmljp2 headers.

EHDR (ESRI BIL) Driver:
- Support 1-7 bit data.
- Added statistics support.

OGR 1.4.0 - Overview of Changes

OGR SQL:
- RFC 6: Added support for SQL/attribute filter access to geometry, and
style strings.

OGRSpatialReference:
- Support for OGC SRS URNs.
- Support for +wktext/EXTENSION stuff for preserving PROJ.4 string in WKT.
- Added Two Point Equidistant projection.
- Added Krovak projection.
- Updated support files to EPSG 6.11.

OGRCoordinateTransformation:
- Support source and destination longitude wrapping control.

OGRFeatureStyle:
- Various extensions and improvements.

INFORMIX Driver:
- New

KML Driver:
- New (write only)

E00 Driver:
- New (read only)
- Polygon (PAL) likely not working properly.

Postgres/PostGIS Driver:
- Updated to support new EWKB results (PostGIS 1.1?)
- Fixed serious bug with writing SRSes.
- Added schema support.

GML Driver:
- Strip namespaces off field names.
- Handle very large geometries gracefully.

ODBC Driver:
- Added support for spatial_ref_sys table.

SDE Driver:
- Added logic to speed things up while actually detecting layer geometry types

PGeo Driver:
- Added support for MDB Tools ODBC driver on linux/unix.

VRT Driver:
- Added useSpatialSubquery support.


GDAL/OGR 1.3.2 - General Changes

WinCE Porting:
- Support for MS WinCE new for this release.

Java SWIG Bindings:
- Preliminary support implemented.

1.3.2

Locale:
- Force numeric locale to "C" at a few strategic points.

Idrisi Driver:
- New for 1.3.2.
- Includes reading and writing.
- Limited coordinate system support.

DIPEx Driver:
- New for GDAL 1.3.2 (related to ELAS format).

Leveller Driver:
- New for GDAL 1.3.2.

NetCDF Driver:
- Improved autoidentification of x, y dimensions.
- Improved CF support.

JPEG2000 (JasPer) Driver:
- Use GDALJP2Metadata to support various kinds of georeferencing.

JPEG2000 (JP2KAK) Driver:
- Support writing tiles outputs so that very large images can be written.

GeoTIFF Driver:
- Report error when attempting to create >4GB uncompressed file.
- Updated to latest libtiff, now supports "old jpeg" fairly well.
- Improved support for subsampled YCbCr images.

Imagine (HFA) Driver:
- Support reading affine polynomial transforms as geotransform.
- Support overviews of different type than base band.
- Support reading RDO style "nodata" indicator.

PCI Aux Driver:
- Support projections requiring parameters.

MrSID Driver;
- Fixed problem with writing files other than 1 or 3 bands.
- Support ESDK 6.x.

BMP Driver:
- Added support for 32bit images with bitfields compression.

DODS Driver:
- Upgraded to support libdap 3.6.x.
- Upgraded to support [-x][-y] to flip image.

gdal_rasterize Utility:
- New for GDAL 1.3.2.
- Rasterize OGR polygons into a raster.

OGR 1.3.2 - Overview of Changes

OGRFeature:
- Added support for OFTDate, OFTTime and OFTDateTime field types.
- Also applied to a few drivers (shapefile, mysql, postgres)

OGRLayer:
- GetFIDColumn() and GetGeometryColumn() added.

Generic OGR SQL:
- Proper support for spatial and attribute filters installed on
OGR SQL resultsets.

OGRSpatialReference:
- Upgraded data files to EPSG 6.9

PostGIS Driver:
- Include proj4text in new spatial_ref_sys entries.
- Fixed support for very large queries.
- Fixed DeleteLayer() implementation.
- Added COPY support for accelerated loading.

MySQL Driver:
- Added read and write support for Spatial types.
- Support spatial_ref_sys and geometry_columns tables.
- Various other improvements (dates, smallint, tinyint, etc)
- More robust auto-detection of column types for layers
created from SQL statements

ArcSDE Driver:
- New for 1.3.2.
- Read-only support for all geometry types.
- Supports coordinate systems.
- Requires SDE C API from ESRI.

Shapefile Driver:
- Avoid posting errors when .dbf's without .shps are opened.
- Added pseudo-SQL REPACK command after deleting features.
- Implement DeleteFeature()

S-57 Driver:
- Added support for Arcs.
- Added special DSID_DSSI feature class to capture header info.

DGN Driver:
- Support writing geometry collections.

DWG/DXF Driver:
- New for OGR 1.3.2
- Only supports writing DWG and DXF.
- Depends on DWGdirect library.

Page 6 of 9

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.