| Home | Products | Issue Tracker | Service Providers | FAQ | Twitter | Download

# MapServer 7.0 Changelog

The summary of major changes for this release can be found in the HISTORY.TXT file from the source directory.

## Changes from 7.0.6 to 7.0.7

- Commented out vtable entries for msOracleSpatialEscapePropertyName. By that we don’t need the additional logic described below anymore (Martin.Icking) : d190791

- Added the option to set a default value for variable substitution in the map’s WEB section. To do that there is a new method applyHashTableDefaultSubstitutions that is being called in msApplyDefaultSubstitutions with the map’s WEB section as the hash table to work on (Martin.Icking) : 572bd76

- WCS 2.0 RectifiedGrid: use ‘lon lat’ and ‘x y’ labels even with CRS with ‘inverted axis’ order (Even Rouault) : 3be5442

- WCS 2.0 DescribeCoverage result: fix RectifiedGrid.origin.Point to correspond to the coordinate of the pixel center (fixes #5511 ) (Even Rouault) : 31c25df

- UVRaster: fix reprojection issue of map extent to layer projection (fixes #5501 ) (Even Rouault) : 2a990dc

- Fix regression introduced by latest commit 8f85f8db46e65a3a4e8d3ec245ea90a56b6d794c ( #5502 ) (Even Rouault) : 1ee7e0e

- UVRaster: support layers with lon_wrap=180 projection ( #5502 ) (Even Rouault) : 8f85f8d

- msSOSGetCapabilities(): use proper layer when generating the gml:name from sos_offering_name metadata (patch by wdc-rsat, fixes #5506 ) (Even Rouault) : c7a1e51

- WCS 1.1 DescribeCoverage response: honour EPSG axis order for GridOrigin and GridOffsets ( #5504 ) (Even Rouault) : 4f75206

- msSLDApplySLD(): fix wrong index use (patch by wdc-rsat, fixes #5505 ) (Even Rouault) : 91fafe4

- Fix kerneldensity layer not to loose connection type on reopen ( #5497 ) (Tamas Szekeres) : 38f3cae

- WFS client layer: fix wrong BBOX argument in WFS 1.1 with EPSG code with non-axis inversion (patch by richie21, fixes #5496 ) (Even Rouault) : 7ca0c1c

- JPEG output: add compatibility with libjpeg-turbo 1.5.2 (https://github.com/libjpeg-turbo/libjpeg-turbo/issues/162) (Even Rouault) : 04d3a61

- msProjectionsDiffer(): restrict attempts normalization with proj.4 (Even Rouault) : 581ec9f

- msExtentsOverlap(): optimize when layer and map projections are the same (Even Rouault) : 8501873

- msLayerIsVisible(): speed it up by doing layer vs map scale comparisons before extent comparison (Even Rouault) : 6a5cad3

- msDrawMap(): optimize pre-processing of WMS/WFS layers (Even Rouault) : 226d19a

- msDrawTextSymbol(): fix compiler warning about unused return value (Even Rouault) : 35b82b9

- Fix ANGLE AUTO in STYLE during mapObj.clone() #5483 (Bernard Bielecki) : 08780c2

- Fix MSVC2015+ builds ( #5274 ) (Tamas Szekeres) : 6c09697

- Fix label of scalebar and legend set with SWIG mapscript #5470 (Tamas Szekeres) : 870e027

- Fix potential memory corruption caused by freeSVGCache ( #5471 ) (Tamas Szekeres) : 8a5e0f3

- OGR output: fix “ESRI Shapefile” output with FORMATOPTION “STORAGE=memory” (Even Rouault) : 2c1e5c5

- Fix error to support Oracle compound elements for GTYPE 2007 (multipolygon) and not only for GTYPE 2003 (polygon) (Martin.Icking) : be21bcf

- Enclose the sortby property in double quotes by putting the result of msLayerEscapePropertyName into double quotes (Martin.Icking) : d5f89a3

- Allow using double quoted aliases for Oracle column aliases (Martin Icking) : 608a118

- Enabled WFS sortby for Oracle plugin, quoted sortby parameter to enable non-capitalized column names (Martin.Icking) : c08e349

- Allow for build path name with spaces [in csharp mapscript] (Martin.Icking) : d7abbc6

- This fix allows to have an out-of-source build on any location - previously it was assumed that the mapscript csharp sources had a fixed path relative to the build (Martin Icking) : 8f475c6

- Removed bug that caused MapServer only to use the Oracle TranslateFilter method at the first call e.g. in an FCGI environment (Martin Icking) : 3e8c9c8

- Repeat transformation if extent is extreme (David Shorthouse) : bbfa866

## Changes from 7.0.5 to 7.0.6

- [OGR] Correctly extract BBOX from an Intersects() filter. Complementary fix to f53fd782 (Even Rouault) : aae74ff

- WFS: complementary fix for “wfs_use_default_extent_for_getfeature” “yes” layers (Even Rouault) : 1df03be

- msResampleGDALToMap(): restrict fix done for #1715 , to avoid regressions like #5445 (Even Rouault) : 3e262f4

- Suppress GEOS error in offsetcurve and fall back to the original behavior ( #5442 ) (Tamas Szekeres) : 70cbb55

- Fix rendering label shadow ( #5438 ) (Tamas Szekeres) : f495c48

- Add MSSQL support for PropertyIsLike ( #5428 ) (Tamas Szekeres) : d644c84

- Restore error reporting for invalid attribute filters ( #5427 ) (Tamas Szekeres) : c549798

## Changes from 7.0.4 to 7.0.5

- Shape tileindex: fix issues (crash and invalid result) related with interactions between msTiledSHPNextShape() and msTiledSHPGetShape() (Even Rouault) : 1aea33a

- [PostGIS] Format literal number in filter as integer when possible to avoid performance issues (Even Rouault) : b814f93

- Forming the tag <OnlineResource> in the sld-file from the SYMBOL type MS_SYMBOL_SVG (Sergey Morev) : 48de40e

- msResampleGDALToMap(): restrict full size acquisition in weird reprojection cases to raster of ‘modest’ size ( #5402 ) (Even Rouault) : bd9ff63

- msResampleGDALToMap(): amend e0a3448f3f42d20a0d271709c8629a5b40d13951 to fix regression of #5402 (Even Rouault) : 3d9f71a

- Allow paging for msQueryByFilter(). (Steve Lime) : 761a73a

- msProjectRect(): fix when reprojecting from north polar stereographic to WGS84. (Even Rouault) : 14243fa

- msTransformMapToSource(), msNearestRasterResampler(), msBilinearRasterResampler(): fixes for lon_wrap=180 (Even Rouault) : 4c2aeb4

- Fix memory leaks ( #5397 ) (Tamas Szekeres) : f1857d4

- Fix crash if the prj cannot be opened ( #5395 ) (Tamas Szekeres) : e85f8e3

- Legend icon for label layers should not rotate ( #5391 ) (Tamas Szekeres) : f125a13

- GRID layer: fix label positioning when requesting WGS84 graticule in EPSG:3857 (Even Rouault) : fc36c0a

- Declare nLayerOrder where it’s used. ( #5387 ) (Landry Breuil) : 1326958

- Oracle Spatial: Include mapows.h ( #5373 ) (Martin Icking) : 027f421

- Fix Character type handling in WMS dimension filters ( #5374 ) (Tamas Szekeres) : e075ccb

- [OGR] Translate as much as possible MapServer expressions to OGR SQL attribute and spatial filters (Even Rouault) : f53fd78

- msResampleGDALToMap(): fix inappropriate cellsize computation when loading (well beyond) full source raster. (Even Rouault) : e0a3448

- msResampleGDALToMap(): fix issue that cause line pattern in image mosaic ( #1715 ) (Even Rouault) : 026847b

- Oracle - fixing memory handling error (Pierre Mauduit) : bbe23e8

- Add msIO_getAndStripStdoutBufferMimeHeaders to deal with all MIME headers. (Even Rouault) : 10fe3d7

- Use include paths from php-config when include path not found. (Bas Couwenberg) : 8fd1c73

## Changes from 7.0.3 to 7.0.4

- Security release for CVE-2017-5522

- For GPKG datasources with Spatialite support, translate mapserver expressions to SQL (Even Rouault) : 60fd6de

- Optimize msDrawRasterGDAL_16BitClassification() runtime. (Even Rouault) : adf3383

- Legend: draw icon for raster gradient classes ( #1305 ) (Even Rouault) : 19d77c5

- Fix cluster filter propagation to the source layer ( #5364 ) (Tamas Szekeres) : 7dc87fe

- Update copyright date (Jeff McKenna) : 940ae5e

- Fix cluster with WMS dimension issue ( #5364 ) (Tamas Szekeres) : 1a65c62

- msTransformMapToSource(): fix behaviour at lon_wrap +/- 180 deg (Even Rouault) : 722716c

- WFS: avoid ‘eating’ the last character of WFS 2.0 stored queries stored in an external file (Even Rouault) : b5c02b4

- WFS: fix taking into account of wfs_use_default_extent_for_getfeature. Logic added in 7.0.3 was inverted… (Even Rouault) : 6beab5e

- Update README.WIN32 for MapServer and PHP/MapScript ( #5357 ) (Alexander Gabriel) : 1534710

## Changes from 7.0.2 to 7.0.3

- Security release for CVE-2016-9839

- Free expression tokens, which may store an index to an iteminfo, when iteminfo is freed. ( #5161 ) (Martin Kofahl) : 7413952

- cmake/FindICONV.cmake did not find iconv on windows ( #5346 ) (Alexander Gabriel) : 14ce312

- fix issues when compiling PHP-MapScript with VS2012 Express ( #5346 ) (Alexander Gabriel) : 54d645c

- Fix variable declaration compilation error on Windows ( #5346 ) (Alexander Gabriel) : 2f240de

- Fix LNK2019 build error on windows ( #5346 ) (Alexander Gabriel) : bcf7e7e

- Fix utfgrid text encoding to work with Windows ( #5342 ) (geographika) : 2ab0dc0

- Allow FEATURE->ITEMS to be set by URL ( #5335 ) (Thomas Bonfort) : 93cc1ed

- Fix glyph orientation when switching from cairo to AGG ( #5338 ) (Thomas Bonfort) : 82ec23b

- Fix build issue with php >= 5.6.25 ( #5318 ) (Thomas Bonfort) : d5cc584

- Backport #4928 and #5356 (Thomas Bonfort) : 022d24b

- OGR Spatialite: do not be case sensitive if DATA is a SELECT … FROM table_name (Even Rouault) : 491397c

- OGR: add a “wfs_use_default_extent_for_getfeature” “yes” LAYER.METADATA (Even Rouault) : 45037eb

- add msautotest script for windows (Jeff McKenna) : 2934c6e

- change default max mapsize to 4096 (fixes #5349 ) (Jeff McKenna) : 1e8266b

- OGR Spatialite: avoid useless CAST() in filter, and use join for spatial filtering. (Even Rouault) : 22dc081

- Don’t return verbose OGR error messages to clients ( #5356 ) (Thomas Bonfort) : 3d52307

- Fix segfault on WFS filters with empty literals (PostGIS + Spatialite). Implement PropertyIsNull for those layers ( #5347 ) (Even Rouault) : 4cb057c

- Reorder spatial operator arguments for mssql ( #5352 ) (Tamas Szekeres) : 51415f7

- Filters: add whitespace between and and next part (relates to #5352 ) (Even Rouault) : 5b6ccd0

- update copyright (Jeff McKenna) : b695d28

- update win32 binaries link (Jeff McKenna) : af77d43

- Add c# typemap for setLayerDrawingOrder ( #5336 ) (Tamas Szekeres) : 4a988fe

- Remove msCleanupOnSignal log messages ( #5254 ) (Thomas Bonfort) : 51fef1b

- Fix timestamp handling in the MSSQL driver ( #5334 ) (Tamas Szekeres) : 6dbbd3b

## Changes from 7.0.1 to 7.0.2

- Fix memory/locking errors on kerneldensity layers ( #5330 ) (Sander Jansen) : 3493927

- Don’t apply layer scalefactor to legend text ( #5268 ) (Thomas Bonfort) : d7a47e6

- Apply legend label offset if set ( #5267 ) (Thomas Bonfort) : d7b5df7

- Fix clipped SVG symbol when rotated ( #5264 ) (Oliver Tonnhofer) : b1604a7

- Fix memory leaks ( #5329 ) (Sander Jansen) : 28991f4

- Fix segfault on offsetted labels with multiple styles ( #5326 ) (Thomas Bonfort) : 8301131

- Fix position of rendered offsetted labelpnt marker ( #5326 ) (Thomas Bonfort) : 370a81c

- Fix position of labelpoly on offsetted labels ( #5326 ) (Thomas Bonfort) : cd70b0f

- Add support for the csharp debug builds in cmake (Tamas Szekeres) : b4f41cc

- Fix ANCHORPOINT not being written for TRUETYPE and PIXMAP symbols ( #5073 ) (Tamas Szekeres) : 81ef223

- Fix memory leak on hashTableSubstituteString ( #5325 ) (Thomas Bonfort) : fd55fd3

- Fix wording of mssql2008 and postgis error messages #5324 (Bas Couwenberg) : 66309ee

- Fix typo on PERCENTAGES in mapfile writer (Thomas Bonfort) : a0437f8

- Fix behaviour for inner ring touching its outer ring in msGetInnerList() ( #5299 ) (Even Rouault) : f8e104e

- Do not install spatial filter on a layer without geometry to avoid a OGR error to be triggered at msOGRFileNextShape() time (typical of a SQLite/Spatialite/GPKG SQL select layer that returns zero records) ( #5317 ) (Even Rouault) : 9b8a907

- Update comments in utfgrid code (Seth Girvin) : 2f547e1

- Propagate LIMIT to spatialite spatial filter sub-query, when possible (Even Rouault) : e3ff20a

- Fix msOGRGetPaging() (Even Rouault) : e6b66a6

- Fix build when USE_OGR is not defined (Even Rouault) : 892deaf

- Enable translation for maxfeatures/startindex to SQL LIMIT/OFFSET in Spatialite case (Even Rouault) : 8ae17b3

- Move all logic to detect if we can use Spatialite dialect to msOGRFileOpen(). No functional change (Even Rouault) : 2a6ad64

- Fix compound polygon rendering in PostGIS ( #5012 ) (Thomas Bonfort) : 0152e04

- MSSQL driver: Get feature attributes as UTF8 strings ( #5308 ) (Tamas Szekeres) : dd336bc

- Potential fix for SELECT … FROM a Spatialite view (probably fix #5218 ) (Even Rouault) : 375a7ae

- Add support for DescribeFeatureType with gml_types=auto for the MSSQL driver ( #5305 ) (Tamas Szekeres) : 59650f2

- Fix support for Spatialite views (Even Rouault) : 58ce9c4

- Improve performance when DATA of a Spatialite DB is a simple ‘SELECT … FROM tablename’ to for example select from multiple geometry columns (Even Rouault) : b39fd15

- Fix wrong mapping of field indexes when SQL layer is composed, e.g. with a WMS request on a Spatialite DB. (Even Rouault) : 5c8f201

- msOGRFileWhichShapes(): fix case where there is no items (Even Rouault) : b007fdb

- Fix WMS blank for classified raster with NaN #5289 (Radim Blazek) : c3a5759

- Fix slow filter BBOX evaluation with tileindex of shapefile ( #5291 ) (Even Rouault) : 9f1ef95

- Fix compilation error with OGR support disabled (Thomas Bonfort) : a56815b

- Add support to get raw image data in csharp ( #5293 ) (Tamas Szekeres) : 3dc88f7

- Implement expression conversion to Spatialite SQL (Ari Jolma) : 3cf682d

- Recalculate scale factor in drawLegendIcon from mapscript ( #5287 ) (Tamas Szekeres) : 7121ac7

- Allow to specify empty color in mapscript ( #5286 ) (Tamas Szekeres) : f2b0310

- Fix layer compositer issues ( #5283 ) (Tamas Szekeres) : f60648e

- Fix crash in drawQuery for layers with labelitem ( #5281 ) (Tamas Szekeres) : 5870da4

- Add UTF8 marshaler to MapScript C# ( #5275 ) (Tamas Szekeres) : 8771b59

- Fix Cluster Layers Filter Translation ( #5205 ) (Tamas Szekeres) : cc03cee

- Fix issue of GetCapabilities request is extremely slow when OWS_LAYER_GROUP is used (Anuruddha Abhayasinghe) : 55558b3

- Fix absence of XML escaping in GetCapabilities response (Even Rouault) : 1058774

- Add encoding property to PHP mapscript source (Jeff McKenna) : abd3493

- Fix filter of MS_TOKEN_LITERAL_TIME in PostGIS #5265 (Emanuele Di Giacomo) : 7295312

- Fix surface size when rastering rotated SVG symbols (Oliver Tonnhofer) : dc091b2

- Update to new ODBC types SQLLEN and SQLULEN to fix issue #5172 (Seth Girvin) : 075519a

- Avoid calling msProjectionsDiffer over and over again ( #5259 ) (Thomas Bonfort) : 6acfaf4

- msOGRWriteFromQuery(): use OSRRelease() instead of OSRDestroySpatialReference() (Even Rouault) : 40c8ffd

- Make utfgrid driver use msIO output ( #5260 ) (Thomas Bonfort) : fb73a05

- Output fid if requested in OGR-output ( #5207 ) (Thomas Bonfort) : 4af7028

## Changes from 7.0.0 to 7.0.1

- Oraclespatial: remove filteritem (RFC91) ( #5229 ) (Michael Smith) : b1604a7

- Apply dimension filter to tileindex also if present ( #5209 ) (Emanuele Di Giacomo) : 7daec58

- Contour layer: support tileindex and WMS time ( #5212 ) (Even Rouault) : a752e70

- Change url encoding of spaces from + to %20 ( #5232 ) (Thomas Bonfort) : b6fb921

- Fix memory leak when loading FORMATOPTIONS ( #5149 ) (Thomas Bonfort) : 4df5f9f

- Fix compiler warning (Thomas Bonfort) : b290c44

- Fix handling of empty labels when not using labelcache ( #5142 ) (Thomas Bonfort) : 6102a7a

- Fix labels on mapscript-set postlabelcache layers ( #5142 ) (Thomas Bonfort) : 9523495

- Ignore eventual leading UTF8 BOM ( #5194 ) (Thomas Bonfort) : e50c067

- Fix orientation of “vertex” geomtransform ( #5213 ) (Daniel Morissette) : 9b93019

- Allow empty items in inline features ( #5182 ) (Thomas Bonfort) : f404adf

- Support GDAL 2.0 64bit integer fields (Even Rouault) : 4238420

- Correct calls to MAX/MIN to MS_MAX/MS_MIN ( #5251 ) (Sam Jorna) : f0dedb6

- Fix mapscript saving of numbers in exp format ( #5014 ) (Thomas Bonfort) : ed7d3f6

- OGR output: emit layers with no results ( #5208 ) (Thomas Bonfort) : 1ad47f6

- Fixed case when drawing legend shapes with style geomtransforms. ( #5193 ) (Steve Lime) : 4f7d463

- Fix format-security errors with swig and java and ruby ( #5253 ) (Julien Enselme) : 90f00f7

- Fixed label placement computation issue with thin polygons. ( #5234 ) (Steve Lime) : 078a6a3

- Fix compilation error when libxml2 disabled ( #5249 ) (Sam Jorna) : ab96f8a

- Fix list expression handling logic ( #5245 ) (Thomas Bonfort) : 0d71c41

- Fix handling of non-labelcached empty labels ( #5241 ) (Thomas Bonfort) : 9ade01a

- Fix handling of empty labels through mapscript ( #5240 ) (Thomas Bonfort) : 5a83df5

- Fix label rendering from mapscript with labelcache disabled ( #5239 ) (Thomas Bonfort) : 2f3e195

- Discard labels outside image extent when using masks ( #5237 ) (Thomas Bonfort) : 4196ac3

- Contour layer: support tileindex and WMS time ( #5212 ) (Even Rouault) : 946c210

- Fix ‘shoud’ typo, replace with ‘should’ ( #5228 ) (Bas Couwenberg) : 84c9d79

- Don’t export mapserver target for static libmapserver. ( #5170 ) (Bas Couwenberg) : d26278d

- Fix type inconsistencies. (Bas Couwenberg) : 278a280

- Fix segfault on legend rendering with nested layers ( #4713 ) (Thomas Bonfort) : d02e6fb

- iconv feature attributes before applying filtering ( #5215 ) (Thomas Bonfort) : 100e6af

- Contour layer: report error when DATA isn’t defined ( #5212 ) (Even Rouault) : f8ec673

- Cleaning up conditional directives that split up parts of statements. (Flavio Medeiros) : 93b80c9

- Fix hang while rendering text on degenerate polygons ( #4908 ) (Thomas Bonfort) : 3dfc920

- Fix build issues with OGR disabled (Thomas Bonfort) : ab2a612

- Fix build without iconv ( #5195 ) (Thomas Bonfort) : e47e642

- msValidateTimeValue(): reject strings with single quote character to avoid potential SQL injections ( #3907 ) (Even Rouault) : 463d31f

- Fix PHP ms_newGridObj ( #5159 ) (Tamas Szekeres) : 4dacec0

- Added status check after msLayerWhichItems() is called in msDrawVectorLayer(). ( #5188 ) (Steve Lime) : 55f7fc8

- Mark pixman support as experimental ( #5181 ) (Thomas Bonfort) : ad25f15

- Make pthread return compatible with 64bits checks ( #5137 ) (Bruno Friedmann) : 1d3eb7e

- Fix java mapscript to be compatible with newer swig ( #5174 ) (Bruno Friedmann) : 8399145

- Update mapaxisorder.h/.csv to EPSG 8.6 database ( #5168 ) (Even Rouault) : f10f24d

- Avoid infinite loop during labeling with empty text ( #5167 ) (Martin Kofahl) : c00e84a

- Backport master appveyor.yml (Even Rouault) : effcd44

- Don’t install mapserver target twice. (Bas Couwenberg) : 3c10ad1

- SLD: support LayerFeatureConstraints/FeatureTypeConstraint/Filter ( #4025 ) (Even Rouault) : c391b86

- Install headers and export cmake package for external projects ( #5119 ) (Bas Couwenberg) : 2549b43

- Correctly initialize “scalebar” utility ( #5141 ) (Thomas Bonfort) : e5f8b61

- Fix xmlmapfile xsd bug for label->scaledenoms ( #5129 ) (Jürgen Weichand) : f916cad

- Fix missing fcloses on failures ( #5143 ) (Sander Jansen) : de2869b

- Fix memory AGG and OGR leaks on error ( #5145 ) (Sander Jansen) : 75d092a

- Fix memory leaks/errors in mapuvraster.c ( #5148 ) (Sander Jansen) : d6d3432

- fix memory leak in mapproject.c ( #5150 ) (Sander Jansen) : 433428e

- Fix a couple of forgotten msFreeShape in msDrawVectorLayer ( #5151 ) (Sander Jansen) : 8cf63dc

- Fix leak in msWMSPrepareNestedGroups ( #5152 ) (Sander Jansen) : 1b08236

- remove stray debugging message ( #5139 ) (Thomas Bonfort) : 8b44188

- Fixed a bug (see #5157 ) where converting points from pixel to image coordinates with the shpxy tag was happening twice. (Steve Lime) : aad6de3

- Fixed a bug (see #5157 ) where converting points from pixel to image coordinates with the shpxy tag was happening twice. (Steve Lime) : c8f813d

- WFS OGR output: fix creation of .zip with MIF files ( #5155 ) (Even Rouault) : 901499d

- Update SetRGB arguments in csharp sample (Tamas Szekeres) : 6ec760c

- Fix compilation with gif_lib 5.1 (Sander Jansen) : 3e76491

- WCS: GeoTIFF creation option is TILED, not TILING (Even Rouault) : bff33fb

- handle the case where include_dirs is set in distutils.cfg (Tomasz Pajor) : f6805a1

## Changes from 7.0.0-beta2 to 7.0.0

- Oraclespatial: Fix IEQ expression translation ( #5124 ) (Michael Smith) : f67fbaf

- fix compiler warnings ( #5122 ) (Thomas Bonfort) : 960a9b1

- Refactor changes in Mapscript colorObj to optional arguments (ejn) : d7c26bc

- MapScript colorObj SWIG/PHP alignment and methods with alpha (ejn) : 025ffe1

- Allow access to layer [metadata_*] tags in legacy headers & footers (ejn) : e945d25

- Typo in fribidi description ( #5091 ) (Thomas Bonfort) : 9cf3889

- Bump SOVERSION to 2 to account for removed symbols since 6.4. (Bas Couwenberg) : 5154eb8

- fix incorrect rounding/casting when scaling label outlinewidth ( #5107 ) (Thomas Bonfort) : 135997a

- Fix handling time literals in msMSSQL2008LayerTranslateFilter (Tamas Szekeres) : 982f3e6

- Avoid including header files inside an extern C block ( #5117 ) (Thomas Bonfort) : 1754752

- Fix ‘Unkown’ typo, replace with ‘Unknown’. (Bas Couwenberg) : bf8c0f7

- Fix ‘consistant’ typo, replace with ‘consistent’. (Bas Couwenberg) : 5f3554c

## Changes from 7.0.0-beta1 to 7.0.0-beta2

- Prevent XML external entities from being fetched with libxml2 < 2.9.0 (Even Rouault) : 6600f47

- Avoid potential recursion problem in msSHPLayerNextShape(). ( #5108 ) (Steve Lime) : 7efdf9c

- FLTGetIsBetweenComparisonCommonExpresssion(): use appropriate backquote escaping for Date fields ( #5104 ) (Even Rouault) : b1b97aa

- FLTIsNumeric(): fix so that values like 2004-12-01 aren’t recognized as numeric on Linux ( #5104 ) (Even Rouault) : a2d862d

- Use explicit PROCESSING FORCE_DRAW_LABEL_CACHE=FLUSH to keep room for future options ( #5100 ) (Daniel Morissette) : e39aae5

- Add PROCESSING FORCE_DRAW_LABEL_CACHE layer-level option (Daniel Morissette) : 729fa9c

- Fix memory error + leak in fontface cache ( #4794 ) (Thomas Bonfort) : 6b982bb

- MSSQL: Update time filter vtable function (Tamas Szekeres) : 61592a7

- Fix handling time literals in msMSSQL2008LayerTranslateFilter (Tamas Szekeres) : 2020c2c

- Implement msMSSQL2008LayerTranslateFilter ( #4974 ) (Tamas Szekeres) : ad0aa44

- Fix copyVirtualTable to copy all vtable elements (Tamas Szekeres) : c613db0

- Cleanup. (Fabian Schindler) : b5feb64

- Addressing #5047 : the coverages CRS is now the default subsettingCrs rather than imageCRS. (Fabian Schindler) : bb63909

- FLTGetBinaryComparisonCommonExpression(): escape date literals with backquote ( #5104 ) (Even Rouault) : b7a7339

- Applied patch for #5099 … (Steve Lime) : 933c1f5

- Fix segfault in PHP MapScript implementation of saveQuery with results parameter set. (Martin Kofahl) : eb9e5a4

- This patch is to fix the issue “GetCapabilities request is extremely slow when “OWS_LAYER_GROUP” is used” (aabhayas) : 134fcf7

- Prevent buffer overflow with raster queries with more than 4 bands (Daniel Morissette) : 02dacd9

- Fix segfault on TTF symbols smaller than 1 pixel ( #5086 ) (Thomas Bonfort) : 29bbefa

- Removed double free in WFS layer ( #5085 ) (Martin Kofahl) : 9da77c1

- Correct scaling of label outline ( #4942 ) (Thomas Bonfort) : d0043f2

- Fix bounds calculation for the MSSQL driver ( #5082 ) (Tamas Szekeres) : 3e7ecf7

- Removing GD-COPYING since the GD dependency has been removed. ( #5080 ) (Steve Lime) : 890808f

- fix ANCHORPOINT not written on map->save ( #5073 ) (Thomas Bonfort) : a5ce205

- Removing gd from installed packages. (Stephan Meissl) : cba7ccf

- Add support for outlinewidth in legend icons ( #5064 ) (Daniel Morissette) : 537b40f

## Changes from 6.4 to 7.0.0-beta1

- Remove the ArcSDE C API driver from MapServer ( #5067 ) (Howard Butler) : 936518bac

- fix typo and undeclared functions related to RFC113 ( #5071 ) (Thomas Bonfort) : 2ec8d06

- Correcting and harmonizing exceptionCode and locator usage in WCS ( #4388 ). (Stephan Meissl) : c37b3bc

- Add support for RFC91 processing option NATIVE_FILTER to oracle driver ( #5001 ) (Michael Smith) : 1842327

- Implement RFC-113 Layer Compositing Framework ( #5071 ) (Thomas Bonfort) : 29db335

- Reduce UTF grid size by removing unused entries ( #5002 ) (Francois Blackburn) : f152773

- When WFS changes the map->projection, also project the default map->extent ( #5065 ) (Michael Smith) : cf065f3

- Fix NULL pointer dereference in mapdraw.c ( #5069 ) (aeichner) : 1fdcb04

- RFC109: allow substitutions from env vars and in processing entries ( #4877 ) (Thomas Bonfort) : 65bce48

- Removed unused function… (Steve Lime) : 6d4c425

- jsonp support (Andreas Eichner) : 76c8c66

- Add missing max/minScaleDenom to xld/t files (Abdelkader Boudih) : f79aacc

- Evaluate a possibly set environment variable PROJ_LIB ( #4930 ). (Martin Kofahl) : e17e69b

- Adding missing implemented RFCs to HISTORY.TXT (Stephan Meissl) : 6c72159

- Move filter translation into msLayerWhichShapes() and out of the draw/query functions. (Steve Lime) : a42c38a

- OGR cannot handle common filters directly, return MS_FALSE… (sdlime) : f9e5d1f

- Ignore the return status from filter translation. Let MapServer handle cases where translation fails. (sdlime) : 2e3fce1

- Updated OGR driver for ticket #5001 . Quite a large change actually… (Steve Lime) : 0a48731

- remove too verbose error messages in oracle and postgis drivers ( #4928 ) (Thomas Bonfort) : 9f7f14f

- Updated SDE driver for issue #5001 . (Steve Lime) : 0866a76

- Updated MS SQLServer driver to work off the NATIVE_FILTER processing key ( #5001 ). (Steve Lime) : b16b23d

- Fixed last of the known RFC 91 issues. Had to remove end-of-line regex anchors in time format patterns. (Steve Lime) : 0c110a1

- Update symbol references in labelcache when removing a symbol ( #4656 ) (Tamas Szekeres) : 8ffb75c

- Convert OGR curve geometry to linear geometry (GDAL >= 2.0) (Even Rouault) : 92289a7

- Fix builds with Visual Studio 2013 ( #5059 ) (Tamas Szekeres) : 0efde12

- Fix builds with Visual Studio 2013 ( #5059 ) (Tamas Szekeres) : 1e5e76d

- Fix security exception for the MSVC2010+ compilers ( #3438 ) (Tamas Szekeres) : ae6806f

- Fix security exception for the MSVC2010+ compilers ( #3438 ) (Tamas Szekeres) : c951bd6

- Add support for Oracle Spatial 12.1 ( #4901 ) (Tamas Szekeres) : d6baeb5

- Add support for Oracle Spatial 12.1 ( #4901 ) (Tamas Szekeres) : 624eded

- Return list of supported versions in WCS GetCapabilities. Fixes #5046 . (Stephan Meissl) : bf27d13

- Added a check to msFreeCharArray() to bail if the array itself is NULL. (Steve Lime) : 1985e2b

- Added a check to msFreeCharArray() to bail if the array itself is NULL. (Steve Lime) : 278f347

- JPEG output: enable optimized coding (Even Rouault) : 9b6b7db

- Correct issue #4992 : DATARANGE serialization type invalid (geonux) : b3801c4

- msResampleGDALToMap(): optimizations for tiled queries (Even Rouault) : 5a22ae7

- msProjectionsDiffer(): use proj4 string normalization (Even Rouault) : eeb1e78

- msWCSSetFormatParams20(): correctly pair msFree() with msMalloc() (Even Rouault) : 6f1b34a

- correct floating point format for SLD Gap/InitialGap (Thomas Bonfort) : 8c3dc41

- Add Gap/InitialGap to SLD GraphicStroke (Thomas Bonfort) : a616107

- Added : as a permissible character in URL variable strings ( #5039 ) (Steve Lime) : 20f4c13

- Implement order by option for the mssql driver ( #5008 ) (Tamas Szekeres) : e653b9b

- Addressed ticket #5032 by forcing code that writes a range to produce a MapServer expression only… (Steve Lime) : fa230a6

- Fix for the OGR autostyle unit calculation ( #5028 ) (Tamas Szekeres) : e5eb628

- msLayoutTextSymbol(): fix memory corruption in case of failed iconv() ( #5025 ) (Even Rouault) : 5b2c46a

- Fix wrong use of iconv() that caused encoded_text pointer to be moved and corrupted ( #5025 ) (Even Rouault) : 084be4d

- Remove default translation behavior that sets filter->native_string since filters are MapServer expressions only. (sdlime) : d330457

- Simplified msQueryByFilter() since FILTERs can only be MapServer expressions. ( #5001 ) (sdlime) : c11e13a

- Removed translation check for native SQL. (sdlime) : b1c383b

- Added support for NATIVE_FILTER processing key to PostGIS driver. (sdlime) : 1451ed4

- Fix crash on CONNECTIONTYPE kerneldensity on Windows ( #5019 ) (Even Rouault) : b762546

- Remove atexit() call on Win32 code path that cause crashes on mapserv (Even Rouault) : 403f110

- Fix crash when copying a map with label leaders (Paul Spencer) : 2f200c0

- Added default outputformats which fixes missing default formats when only the ServiceMetadata section is requested. (Fabian Schindler) : 8dab0b6

- Add missing dll export (Tamas Szekeres) : 77fe033

- Add comment to mention that MS_ENABLE_CGI_CL_DEBUG_ARGS is disabled because of security concerns (Even Rouault) : 8e1e90a

- Extend default message displayed when launching mapserv without argument, to advertize –help (Even Rouault) : 95bc4e2

- Add -h/–help option to mapserv binary to display help message (Even Rouault) : 592f3eb

- Remove MS_HTTP_HEADER hack to use mapserv -nh existing mechanism (Even Rouault) : a10b31b

- Improve previous commit when msIO_setHeader() is called before any call to msIO_Initialize() (Even Rouault) : e262f0e

- For debugging: add env. variable MS_HTTP_HEADER that can be set to NO in the non-MOD_WMS_ENABLED mode to avoid emitting HTTP headers (Even Rouault) : fba3bec

- add missing entries to label copies (Thomas Bonfort) : 41067b4

- OGR style: handle multiple combined tool and support ‘l’ (priority level) ( #4982 , #4983 ) (Even Rouault) : 8ea07be

- msOGRUpdateStyle(): split it in 4 subfunctions. No functional change (Even Rouault) : 5ffa2f2

- OGR style: support more options for Pen and Brush ( #4982 , #4983 ) (Even Rouault) : 18ef92d

- writeMap(): Adding ANGLE to directives saved (Pierre Mauduit) : 6ab6088

- Fix segfault when no overlap in kerneldensity layers ( #4857 ) (Thomas Bonfort) : 5bfaf9b

- Fix post RFC91 issues in mapogcsld.c ( #4974 ) (Even Rouault) : eeaf85b

- msContourLayerGenerateContour(): fix crash with GDAL trunk (Even Rouault) : 28d8be3

- Fix regression of previous commit in ogr_multi_defer.png and ogr_attrfilter.png ( #4974 , #4999 ) (Even Rouault) : 6a4d00e

- msOGRFileWhichShapes(): fix taking into account of filters ( #4974 ) (Even Rouault) : 6902603

- FLTGetSpatialComparisonCommonExpression(): use polygon instead of rectangle ( #4974 ) (Even Rouault) : 6bde3f8

- msPostGISLayerTranslateFilter: fix memory leak (Even Rouault) : 50ce97c

- don’t evaluate filter expression before geometry has been setup ( #4974 , #4995 ) (Thomas Bonfort) : fcda97a

- Follow simple equality and range work done pre-7.0/RFC 91. (sdlime) : edbbf0f

- RFC91/postgis explicitly cast string bindings to text ( #4974 ) (Thomas Bonfort) : 648ec49

- Adjusted call to misspelled time API function name. (sdlime) : 2e99414

- Changed date/time patterns to have end-of-line anchors ($). Fixed a misspelling in one of the time API function names. (sdlime) : 0cc47e3

- Use bounding-box specific reprojection code ( #4974 ) (Thomas Bonfort) : 2d312c5

- Fix wrong un-premultiplication with bilinear resampler with non-opaque input ( #4993 ) (Even Rouault) : 1e94cc0

- Avoid explicit casts on date/time columns. (sdlime) : 8f149eb

- WFS: take correctly into account XML comments in filters ( #4986 ) (Even Rouault) : 26f5630

- Fixed PostGIS translation for time-only date/time handling (fixes wms_time_pattern_12_13_test_postgis.map tests). (sdlime) : e386d0b

- WFS: fix parsing of filters with parenthesis ( #4986 ) (Even Rouault) : f2a817c

- Fixing the unresolved reference for the oracle plugin build ( #4985 ) (Tamas Szekeres) : 43597da

- For data sources with inconsistent row numbers, queryByIndex should not set a resultindex. #4926 #4076 (Martin Kofahl) : 500860a

- Added a few comments to clarify projection handling. (sdlime) : 6508b7e

- Added filter translation check to msQueryByRect(). (sdlime) : 54b5169

- Add <ogc:PropertyName></ogc:PropertyName> tags in SLD label ( #4921 ) (Yves Jacolin) : d2867f7

- Use X-FORWARDED-* headers when constructing onlineresource ( #4955 ) (Thomas Bonfort) : 3241921

- Better support of the simple features profile (Stéphane Brunner) : 5d433c6

- Fixed hour and minute translation templates. (sdlime) : 69e62e4

- RFC91: Support for Oracle Spatial filtering ( #4974 ) (Michael Smith) : d4fe121

- Implement RFC91 Layer Filter Normalization ( #4974 ) (Steve Lime) : 9991eed

- Update CMakeLists.txt (Jackey Cheung) : f6c6230

- Force going through the resampler in client WMS receiving a clipped BBOX ( #4931 ) (Thomas Bonfort) : 529e26e

- use execute_process instead of exec_program in FindAPACHE.cmake ( #4948 ) (Ezequiel Lara Gómez) : 644d750

- Don’t treat OGR autostyle’d text as a mapserver expression ( #4965 ) (Thomas Bonfort) : e841969

- fix segfault when computing degenerate line lengths ( #4972 ) (Thomas Bonfort) : e5c2e65

- Fix overflow in integer calculations ( #4970 ) (Tamas Szekeres) : fcd7cf3

- Fixed the typo in resetClassStyle ( #4971 ) (Tamas Szekeres) : ac1bc49

- Fix an issue with the complex polygon in oracle (dufop) : 46849f4

- Fix issue in error count ( #4960 ) (Tamas Szekeres) : cc9625e

- Adding a more descriptive message in case of multiple error occurrence ( #4960 ) (Tamas Szekeres) : 2a3ec0a

- Break potential infinite loop in msProjectSegment ( #4961 ) (Tamas Szekeres) : 54dda8c

- Hiding large number of errors in msSetError ( #4960 ) (Tamas Szekeres) : 8d8f22f

- Python mapscript : fix setting pattern on mapscript.styleObj ( #4943 ) (Even Rouault) : 3e8aa5a

- Fix illegal use of stack-allocated objects in maprendering (Pierre Mauduit) : f7772c3

- #define GEOS_USE_ONLY_R_API to avoid accidental use of non reentrant GEOS API (Even Rouault) : 0c573e4

- OGR output: add wfs_additional_files_in_output layer/web metadata item ( #4884 ) (Even Rouault) : cd83f45

- OGR output (zip form): when we have FORMATOPTION “FILENAME=basename.ext.zip”, use basename.ext as the name of the OGR datasource ( #4933 ) (Even Rouault) : 0ba8257

- PostGIS input: fix regression introduced by 62d3e61 when dealing with 2D-only PostGIS 1.X geometries ( #4941 ) (Even Rouault) : f2acfb4

- GML output: export XYZ when USE_POINT_Z_M is defined and gml_geomtype is set to Point25D/LineString25D/etc.. (same syntax as 2.5D OGR output) (Even Rouault) : 5e6489e

- OGR output: fix export of line geometry as MultiPoint (Even Rouault) : edc64a6

- PostGIS input: add 2.5D support when USE_POINT_Z_M is defined (Even Rouault) : 62d3e61

- OGR input: add 2.5D support when USE_POINT_Z_M is defined (Even Rouault) : 4630612

- Fix undeclared symbols in maputil.c (Paul Spencer) : 8e85fce

- Fix syntax error (Paul Spencer) : 4f6eb6c

- Update mapwfs.c (mathieudugal) : 7a5c1d6

- Support xs:int for WFS feature properties. (mathieudugal) : 5a3d2b4

- Fix previous commit with GDAL version < 1.10 ( #4858 ) (Even Rouault) : 5beb10e

- Make ‘stream’ OGR output compatible with FCGI with GDAL >= 2.0 ( #4858 ) (Even Rouault) : 2c5aad9

- WFS: Make GetFeature with a FEATUREID/RESOURCEID parameter work if the layer name contains a dot ( #4925 ) (Even Rouault) : ad68998

- Modify the graticule layer to store settings in a custom object instead of layerinfo ( #4913 ) (Tamas Szekeres) : a5348b8

- Use php://input instead of raw_post_data to support PHP 5.6. (Bas Couwenberg) : fc99472

- Fix failing repeated FOLLOW labels when maxoverlap is triggered ( #4910 ) (Thomas Bonfort) : 793bd36

- tweak installed packages (Thomas Bonfort) : cc34484

- Fix segfault when setting a utfitem not present ( #4904 ) (Even Rouault) : eef2a3d

- Implement WCS20 Extensions ( #4898 ) (Fabian Schindler) : d246a0b

- add missing check for #4899 (Thomas Bonfort) : 75a5408

- Fix failed assertion with non-existant svg symbols ( #4899 ) (Francois Blackburn) : 83e4ee8

- Allow AGG images bigger than 2 GB ( #4421 ) (Even Rouault) : 344e7de

- Don’t apply scalefactor on legend keyimage ( #4885 ) (Thomas Bonfort) : 7b86158

- Fix dateline wrapping logic for bounding boxes ( #4896 ) (Thomas Bonfort) : 46a4fea

- mapfile.c: don’t redefine _GNU_SOURCE (Max Kellermann) : 079f816

- remove NULL checks before free() (Max Kellermann) : 9b4b819

- simplify SfRealloc() (Max Kellermann) : 3e2964c

- mapxbase: make DBFIsValueNULL() static (Max Kellermann) : e151854

- const-correctness (Max Kellermann) : c69d113

- 99c0e8b is not needed ( #4758 ) (Thomas Bonfort) : 77313de

- add RFC103 layer encoding setter/getter to swig ( #4758 ) (Thomas Bonfort) : 99c0e8b

- Rename predefined field names for cluster and union layers ( #4082 ) (Tamas Szekeres) : 794cdcc

- Fix SDE plugin build ( #4887 ) (Tamas Szekeres) : a78ef93

- Require Validation of SLD ExternalGraphic OnlineResource ( #4883 ) (Luigi Pirelli) : e184249

- fixups after coverity merge (Thomas Bonfort) : 35b226c

- Fixing a large number of programming errors found by static analysis (Thomas Bonfort) : 55a5688

- UTFGRID: implement escaping of item and data values (Even Rouault) : 673ad22

- WFS 2.0: generate correct MetadataURL element, and add optional wfs_metadataurl_about layer metadata item ( #4886 ) (Even Rouault) : f4b969d

- avoid numerous error messages for failed runtime substitutions ( #4877 ) (Thomas Bonfort) : 09598ea

- RFC109: fix infinite loop on metadata substitutions ( #4877 ) (Thomas Bonfort) : 99db0ee

- add forgotten class substitutions of rfc019 ( #4877 ) (Thomas Bonfort) : f0e0117

- add missing map reference to image (Zak James) : 814286d

- Switch off ogr-output streaming mode for non default io contexts ( #4858 ) (Thomas Bonfort) : 3d174b4

- Restore lexer file pointer on INCLUDE error ( #4871 ) (Thomas Bonfort) : 74f9382

- RFC109: Refactor Application of Runtime Substitutions ( #4877 ) (Thomas Bonfort) : c4542bc

- WFS SortBy support for OGR layers: include WHERE clause (when available) to speed-up queries since OGR SQLite driver does not yet support fast attribute filter on SELECT result layers ( #4878 ) (Even Rouault) : 1c30b21

- Fix WFS SortBy support for OGR layers ( #4878 ) (Even Rouault) : 05c1a77

- Fix blending of semi-opaque pixels in average and bilinear resamplers ( #4875 ) (Thomas Bonfort) : fa29db4

- Require validation for CGI queryfile parameter ( #4874 ). (Steve Lime) : 88ec351

- Allow map->projection inheritance for layers referenced by connection ( #4873 ) (Thomas Bonfort) : 05ff84f

- msOGRFileClose: drop useless OGR mutex that could cause a dead-lock with tileindex ( #4869 ) (Even Rouault) : 51f98b0

- msOGRFileClose: drop useless OGR mutex that could cause a dead-lock with tileindex ( #4869 ) (Even Rouault) : bab4738

- Implement RFC108 heatmap support ( #4857 ) (Thomas Bonfort) : 6676cea

- Adjusting INSPIRE WMS 1.1.1 capabilities. Fixes #4861 . (Stephan Meissl) : b49c847

- Escape backslashes in the mapfile string writer ( #4747 ) (Tamas Szekeres) : 94ca8b7

- Fix non-default harfbuzz configuration logic ( #4848 ) (Thomas Bonfort) : ff83a55

- WFS 1.1/2.0: fix warning message when layer name is invalid to expand ‘%s’ to layer name (Even Rouault) : 7035017

- add SVG_INCLUDE_DIR so that svg.h is found (cnieman) : baef2ec

- Fix angle follow calculation on vertical or horizontal lines ( #4839 ) (Thomas Bonfort) : a9dce78

- avoid erroneous error condition on too short lines ( #4838 ) (Thomas Bonfort) : 036f18a

- Fix non-labelcache’d drawing of line and polygon labels ( #4837 ) (Thomas Bonfort) : e52b4b5

- Don’t clear the original feature attributes for the clustered shapes ( #4666 ) (Tamas Szekeres) : 898ab8b

- WFS-2 specific fixes for postgis time sql injections ( #4834 , #4815 ) (Thomas Bonfort) : bb574ee

- Fix potential SQL Injection with postgis TIME filters ( #4834 ) (Even Rouault) : 3a10f6b

- Add .bundle suffix to Ruby module on Mac ( #4826 ) (Larry Shaffer) : 5f0a88f

- Update cmake modules for Mac (Larry Shaffer) : 30621f8

- fix parser when V8 mapscript disabled ( #4827 ) (Thomas Bonfort) : f9cfa79

- revert commit of a generated file ( #4827 ) (Thomas Bonfort) : 4b7565e

- Fixing segfault when coverage rendering failed. (Fabian Schindler) : c39c276

- Added shape type constants (Alan Boudreault) : 0bca059

- Implement msPostGISLayerGetExtent ( #3585 ) (Tamas Szekeres) : ebae992

- Clustering enhancements ( #4822 ) (Tamas Szekeres) : 02d9b44

- Added missing include directory for v8 mapscript (root) : e8063b9

- Updated lexer and parser (Alan Boudreault) : f8e1d89

- Update INSTALL.CMAKE (Tom Kralidis) : 1e6ef43

- revert change (Tom Kralidis) : da7b523

- Update INSTALL.CMAKE (Tom Kralidis) : ffb7874

- Update INSTALL.CMAKE (Tom Kralidis) : 3ed5486

- Fix error report when we call a function (Alan Boudreault) : 5c14d51

- Implementation of RFC 106: Support of Geomtransform JavaScript Plugin (Alan Boudreault) : c465f6c

- Applied (backport) patch for #4810 to mapfile.c. (Steve Lime) : 21d8aed

- Allows floating point NoData/NULLVALUEs for floating point images. (George Chang) : 339e007

- WFS: fix LIKE with backslash as escape character, with Postgis backend (Even Rouault) : 9696348

- WFS: Make parsing of gml_optional_items and gml_mandatory_items symmetrical (Even Rouault) : 275ecce

- WFS: make WFS 2.0 GetFeature on multiple layers compliant with 11.3.3.5 (one FeatureCollection for each layer as a wfs:member of the main FeatureCollection) (Even Rouault) : 9edae04

- Allows floating point NoData/NULLVALUEs for floating point images. (George Chang) : b7cb571

- fix segfault on legends with keyimage ( #4808 ) (Thomas Bonfort) : bdaf0cc

- WFS: ask for 1 extra feature (when possible) to be able to know if there are next features (Even Rouault) : a95dc04

- WFS: fix PropertyIsNull on gml:boundedBy (Even Rouault) : 7c97d94

- WFS: make CITE WFS 2.0-r11 pass by making PropertyIsNil work on gml:boundedBy (Even Rouault) : 0b5aae8

- Update mapfile.c (takinwang) : 75f548e

- WFS: fix PropertyIsNull on gml:name (Even Rouault) : d67bdb3

- WFS 2.0: various fixes and enhancements to pass wfs-2.0-r12-SNAPSHOT CITE tests (Simple WFS and Basic WFS conformance levels) (Even Rouault) : 346268e

- WFS: implements SortBy (Even Rouault) : df08e5b

- WFS: add support for During time filtering (Even Rouault) : 796f951

- WFS: deal with multiple <Query> in a stored query (Even Rouault) : 3b092a3

- WFS: use ‘srsname’ locator instead of ‘typename’ when issuing an exception about the SRSNAME parameter (Even Rouault) : f8bc861

- Centralize OWS exceptionCode values as #define and use them in WFS server implementaton (Even Rouault) : ae61d9c

- Filter: support BBOX without PropertyName, as allowed since FE 1.1.0 (Even Rouault) : 2d6042e

- WFS: fix segfault when issuing GetFeature on a layer that can’t be opened (Even Rouault) : dc7f35c

- Fix compilation and warning problems when disabling libxml2 and/or OGR (Even Rouault) : 6a5935d

- WFS 2.0: implement stored queries; also fix maximum feature count support for GetFeature involving filters or featureid (Even Rouault) : 68be3a0

- use version specific postgis force2d function ( #4803 ) (Thomas Bonfort) : d4d3e22

- use st_force2d instead of deprecated st_force_2d ( #4803 ) (Thomas Bonfort) : 3a6fa42

- Fix segfault when GetFeature on a invalid typename on a multi-layer map (Even Rouault) : fb393d6

- Make label expressions consistent with class expressions by allowing them to work off an item (labelitem). (Steve Lime) : 92a1cac

- Make label expressions consistent with class expressions by allowing them to work off an item (labelitem). (Steve Lime) : a93fa60

- WFS: add support for PropertyName/ValueReference/Filter parameters in gml_groups (Even Rouault) : 7c7fdcf

- WFS 2.0: implement GetPropertyValue request (Even Rouault) : 598e223

- WFS: fix #3319 (optional/mandatory attributes by introducing gml_optional_items, gml_mandatory_items and gml_default_items) and #3563 (PropertyName should check gml_include_items/gml_exclude_items) (Even Rouault) : b511b24

- Add support for FE 2.0, and sanitize filter support, particularly related to SRS handling (Even Rouault) : 9e04abb

- Implement Inspire extensions for WFS 2.0 (Even Rouault) : 9fd134b

- Fix SLD PerpendicularOffset for lines and labels ( #4801 ) (Thomas Bonfort) : 1d8b68a

- Fix ms cmake build (Tamas Szekeres) : be590fa

- Fix csharp builds for MSVC71 (Tamas Szekeres) : 996fc9d

- Install python-lxml (Even Rouault) : 1333c5b

- Initial wfs2 commit with GetCapabilities, DescribeFeatureType and GetFeature/GML3.2 support (Even Rouault) : 562796a

- WFS: use correct XSD datatypes in DescribeFeatureType response ( #4800 ) (Even Rouault) : dd059f5

- WFS: use correct XSD datatypes in DescribeFeatureType response ( #4800 ) (Even Rouault) : ffe3aec

- update cmake options and documentation ( #4784 ) (Thomas Bonfort) : ee905b5

- fixups for master of #4789 (Thomas Bonfort) : f3d8234

- Fix csharp build issues when doing out-of-source builds (Tamas Szekeres) : 5f1d2b5

- use lib64 instead of lib for installing on select linux systems ( #4789 ) (Thomas Bonfort) : 7de296e

- Don’t allow in-source builds, they are a source of confusion (Thomas Bonfort) : 4794f3e

- Fix crash on legends with sizeunits ( #4785 ) (Thomas Bonfort) : 33996f1

- restore mixed positions/anglemode enum (was causing backwards incompatibilities in mapscripts) (Thomas Bonfort) : 7399024

- Fix crash on legend icon with offset generation ( #4790 ) (Thomas Bonfort) : c217944

- Fix memory corruption on empty raster query ( #4778 ) (Thomas Bonfort) : e83a0cb

- avoid erroneous hittest results for clipped shapes (Thomas Bonfort) : eb1971b

- fix rendering of legendicons with 0-length name ( #4782 ) (Thomas Bonfort) : cea8520

- Fix ISO C90’ism that causes MSVC compilation error (Even Rouault) : a7ac6f7

- Fix ISO C90’ism that causes MSVC compilation error (Even Rouault) : b52908c

- fix segfault on label with failed scale check ( #4781 ) (Thomas Bonfort) : 8250fdf

- update for rfc104 (Thomas Bonfort) : 1b4b59a

- Fix bug with empty geometrycollections ( #4751 ) (Thomas Bonfort) : 475e420

- avoid segfault on erroneous mask references ( #4779 ) (Thomas Bonfort) : 8a32f71

- fix segfault on UVRASTER layers with mask set ( #4779 ) (Thomas Bonfort) : 942e1d7

- Fix OGR output to make it work with KML, GPX ( #4776 ) (Even Rouault) : 9521529

- Declare msStringInitCap() and msStringFirstCap(), and add doc (Even Rouault) : 051e2aa

- Update mapowscommon.h (Tom Kralidis) : a6dac28

- Update maplibxml2.h (Tom Kralidis) : 4e91ef7

- Update maplibxml2.c (Tom Kralidis) : 4910928

- Update mapowscommon.c (Tom Kralidis) : 31a229b

- Implement upper/lower/initcap/firstcap functions in the expression parser ( #4255 ) (Tamas Szekeres) : f75cf22

- skip legend rendering for empty class name/title (Thomas Bonfort) : 6f0606b

- avoid failure on capabilities legend size with empty class name (Thomas Bonfort) : 53c58d8

- RFC104: remove support for bitmap fonts, use embedded ttf instead ( #4759 ) (Thomas Bonfort) : 531c0d6

- Trying to fix the build issue when allocating dynamic size array ( #4765 ) (Tamas Szekeres) : 4eebb1a

- Fixes for UTFGrid merge into master, tests added ( #4765 ) (Thomas Bonfort) : e208e84

- RFC93: UTFGrid Implementation ( #4765 ) (fdesj) : f0a45de

- Add support for multiple LABEL per CLASS (Mark Thomas) : 0b8c9ab

- Add support for expressions in labels to XML mapfile XSD and XSL (Mark Thomas) : 8b767ff

- fix build when v8 is disabled (rfc 102) (Thomas Bonfort) : a09f2ae

- Implementation of RFC 102: Styleitem Javascript with v8 engine (Alan Boudreault) : a966c1c

- Fix A layer using a mask and a label with repeatdistance can crash ( #4764 ) (Alan Boudreault) : f82d6c8

- Allow setting gamma at the layer level ( #4763 ) (Thomas Bonfort) : 5a7b14c

- Fix issue with mindistance labels containing no text ( #4673 ) (Thomas Bonfort) : 5db3342

- Fix builds for MSVC 2003 ( #4761 ) (Tamas Szekeres) : 1dc4125

- Remove unconditional dependency to harfbuzz (Tamas Szekeres) : e9e306a

- add harfbuzz to cmake status message (Thomas Bonfort) : be17788

- cmake: use pg_config supplied locations if available on PATH (Thomas Bonfort) : 6c29ba6

- update HISTORY.TXT for major 7.0 features (Thomas Bonfort) : af1419b

- add RFC103 layer->encoding implementation ( #4758 ) (Thomas Bonfort) : 78916c2

- implement RFC98 ( #4673 ) and RFC99 ( #4704 ) (Thomas Bonfort) : 18b51c4

- Install Ruby mapscript in sitearchdir instead of archdir ( #4754 ) (Bas Couwenberg) : a70d192

- Install Ruby mapscript in sitearchdir instead of archdir. (Bas Couwenberg) : c38b3b0