MapServer 7.6 Changelog

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

Changes from 7.6.6 to 7.6.7

  • tostring() expression function: validate format string, and make sure buffer is large enough (Even Rouault) : 31bf282

Changes from 7.6.5 to 7.6.6

  • mapregex.c: fix invalid mapping of MS_REG_NOSUB and MS_REG_NEWLINE with GNU regex (Even Rouault) : 7b4f1b0

  • OGR output format: avoid potential stack buffer overflow on too long filename (Even Rouault) : 63ad0ab

  • update license year (Jeff McKenna) : 3bfaddb

  • minor update for Travis (Jeff McKenna) : 227a11c

  • upgrade Travis to Focal (Jeff McKenna) : a22ec51

  • upgrade Travis to Focal (Jeff McKenna) : 50e4536

Changes from 7.6.4 to 7.6.5

  • mapfile parser: fix double-free when included file doesn’t exist (Even Rouault) : 7643fb8

  • Fix build error (Even Rouault) : 9e7578d

  • Collection of backports from the 8.0 development work. ( #6818 ) (Steve Lime) : 3891125

  • msLoadMapContext(): add validation of filename against MS_CONTEXTFILE_PATTERN, which defaults to .xml extension (Even Rouault) : f49a01d

  • msLoadMapContextGeneral(): fix memory leaks (Even Rouault) : ffb4c72

  • msGetMapContextFileText(): add sanity check on file size (refs #6779 ) (Even Rouault) : 7589699

  • msautotest: add a test for CONTEXT= loading (refs #6779 ) (Even Rouault) : 1c2b6f8

  • msCGILoadMap(): do not load file pointed by CONTEXT= unless it validates new MS_CONTEXT_PATTERN configuration option (and doesn’t validate MS_CONTEXT_BAD_PATTERN) (fixes #6779 ) (Even Rouault) : 1ab19e7

  • Fix usage of FILE* and VSILFILE* (Even Rouault) : c1ec025

  • loadLayer(): fix memory leak in case of repeated CLUSTER (Even Rouault) : 57b0200

  • freeLabelLeader(): fix memleak (including in nominal code path) (Even Rouault) : 65210a5

  • loadLayer(): fix memory leak in error code path (Even Rouault) : 8a6f067

  • loadGrid(): fix memleak on LABELFORMAT DD (Even Rouault) : faa697b

  • loadProjection(): fix memleak in error code path (Even Rouault) : 00a3cbc

  • Make sure a POINT block doesn’t contain too many points. (Steve Lime) : 3ce5407

  • loadLeader(): fix memleak in error code path (Even Rouault) : 8f0e2b7

  • msOGRShapeFromWKT(): fix memory leak in error code path (Even Rouault) : a23fee7

  • maplexer.l: fix heap-buffer-overflow issues with NUL characters (Even Rouault) : 10e0587

  • loadSymbol(): fix potential memory leak (Even Rouault) : c2311a0

  • msIsAxisInverted(): avoid undefined-shift on invalid code (Even Rouault) : f928d00

  • loadProjection(): fix memleak in case of repeated PROJECTION block (Even Rouault) : 907cd5d

  • msOGRShapeFromWKT(): fix memleak in error code path (Even Rouault) : ee04ff3

  • msSHPReadShape(): avoid integer overflow (Even Rouault) : a3b638d

  • maplexer.l: avoid non-null terminated msyystring_buffer that can cause read heap-buffer-overflow (Even Rouault) : d944923

  • _msProcessAutoProjection(): fix memleak in error code path (Even Rouault) : da428d3

  • msLoadFontSet(): fix memleak in error code path ( #6675 ) (github-actions[bot]) : e6afa64

  • msLoadMap(): fix memleak in error code path related to symbol loading ( #6672 ) (github-actions[bot]) : 575ca34

  • mapshape.c: avoid “undefined-shift” issue with SWAP_FOUR_BYTES() macro ( #6671 ) (github-actions[bot]) : 98944a3

  • msLoadMap(): fix nullptr dereference when using LATLON keyword (Even Rouault) : 8bcd196

  • msLoadFontSet(): fix null pointer dereference (Even Rouault) : 4c423d3

  • msLoadMap(): fix memleak in error code path related to style loading (Even Rouault) : 5152f14

  • mapfile.c: fix very likely memory leaks in error code paths after call to msGrowXXXX() functions (Even Rouault) : 67ec093

  • loadClass(): better fix for class->styles[] mem-leak (Even Rouault) : f071dca

  • msLoadMap(): fix double-free related to labels ( #6659 ) (github-actions[bot]) : 7f2d651

  • loadHashTable(): fix memory leak in error code path ( #6661 ) (github-actions[bot]) : 8a0b2cd

  • Fix memory leak related to styles on invalid mapfile (Even Rouault) : 3e57367

  • loadProjection(): avoid write heap-bufer-overflow on invalid PROJECTION block (Even Rouault) : 2c763f4

  • Redact password= content in msError() and msDebug() messages ( #6621 ) (Even Rouault) : 8c6df8a

  • add security file to branch-7-6 (Jeff McKenna) : eea8eba

  • Fix shapefile driver crash in msSHPLayerNextShape ( #6524 ) (Tamas Szekeres) : 6ceabc2

  • Handle null shapes in msShapefileWhichShapes ( #6521 ) (Tamas Szekeres) : e4b2765

  • Fix some CMake warnings (sethg) : 2fa5f4a

  • Labeling lines with zero lengths may cause the application to crash ( #6493 ) ( #6495 ) (github-actions[bot]) : e816d4c

  • check for PROJ6 (Jeff McKenna) : 93d4b69

  • handle PROJ6 invalid coordinate message through DEBUG levels (Jeff McKenna) : 6eeff73

  • handle PROJ6 invalid coordinate message through DEBUG levels (Jeff McKenna) : 5482592

  • msautotest: add test for #6478 (Even Rouault) : 011f39b

  • msProjectRect(): workaround for issue of #6478 for PROJ >= 6 and < 9 (fixes #6478 ) (Even Rouault) : 25171a4

  • msProjectRect(): fix to deal with +over added, assuming https://github.com/OSGeo/PROJ/pull/3055 applied (PROJ 9) (fixes #6478 ) (Even Rouault) : f119db1

  • EnablePaging methods: check return of Open() method to avoid assertions (Even Rouault) : 6076739

  • minor fix for writing PostgreSQL JOIN through mapscript (Jeff McKenna) : b077376

  • mapshape: check for negative sizes in msSHPReadAllocateBuffer() (Max Kellermann) : 01ca438

  • msSHPReadAllocateBuffer(): use correct realloc() pattern and validate size (CID 1503560) (Even Rouault) : b08cf2d

  • mapshape: check msSHPReadBounds() return value, fix endless loop (Max Kellermann) : 434164f

  • mapshape: fix double free bug after error in msSHPReadShape() (Max Kellermann) : 6fa2243

  • mapshape: fix buffer overflow in msSHPReadShape() (Max Kellermann) : 89b4448

  • mapstring: optimize msStringToUpper(), msStringToLower() (Max Kellermann) : 78d9fe2

  • mapmetadata: disable if compile-time features are missing (Max Kellermann) : d82a348

  • mapdraw, …: simplify pointObj initializers (Max Kellermann) : 59c6c03

  • mapogcfilter: disable several functions if they are not used (Max Kellermann) : 334ffee

  • textlayout: declare variables when they are used (Max Kellermann) : edc7783

  • mapserver.h: check _WIN32 instead of WIN32 (Max Kellermann) : ecb47d4

  • MVT generation: fix writing of point/multipoint geometries (Even Rouault) : b21ab27

Changes from 7.6.3 to 7.6.4

  • PostGIS: fix ST_Intersects() with collections with PostGIS < 2.5. Fixes https://github.com/MapServer/MapServer/pull/6355#issuecomment-877290417 (Even Rouault) : 3e42e35

  • Check if sizeunits is not set to pixels (Patrik Sylve) : 3688004

  • Change legend symbol scale factor when SIZEUNITS is set to METERS (Patrik Sylve) : 39a4ead

  • spatialindex for sqlite sources in filter (Wouter Visscher) : 955d14e

  • Make sure requested class with mode=legendicon is not negative. ( #6357 ) (Steve Lime) : 0901b57

  • Updates to CONTRIBUTING.md (Jeff McKenna) : ee6297a

  • PostGIS: fix ST_Intersects() with bounding box that is a point (follow-up of fixes #6181 , fixes #6230 ) (fixes https://github.com/MapServer/MapServer/pull/6347#issuecomment-870002856) (Even Rouault) : 44d5d9c

  • WMS: make attribute color binding work with FILTER vendor parameter (fixes #6200 ) (Even Rouault) : 1a98ac7

  • msQueryByFeatures(): avoid potential segfault when reslut set is empty (Even Rouault) : 98ad83a

  • PostGIS: use ST_Intersects instead of && for bounding box (fixes #6181 , fixes #6230 ) (Even Rouault) : e2ef155

  • check_single_font(): use quotation mark when msGetGlyphIndex() fails to retrieve the glyph (Even Rouault) : 53ee29e

  • msGetGlyphByIndex() / msGetGlyphOutline(): tweak debug/error messages (Even Rouault) : 0bbf943

  • When a font is missing a glyph we try to fallback to using a question mark (Krister Wicksell) : cf4756e

  • WFS: fix paging with GPKG/Spatialite datasources and non-point geometries (fixes #6325 ) (Even Rouault) : ce8dc4d

  • Fix querymap failure for polygon layers with labels only (no styles) ( #6262 ) (Tamas Szekeres) : 782ee8b

  • mapxbase: validate nHeadLen (Max Kellermann) : ee5d5de

  • mapshape, mapxbase: fix several memory leaks in error code paths (Max Kellermann) : 5e4c504

  • mapshape: validate numshapes (Max Kellermann) : b5c0e29

  • mapshape: remove useless null terminator (Max Kellermann) : 9755395

Changes from 7.6.2 to 7.6.3

  • CVE-2021-32062: Address flaw in CGI mapfile loading that makes it possible to bypass security controls ( #6313 ) ( #6314 ) ( #6315 ) (Even Rouault) : 927ac97

  • Fix most of remaining Coverity scan warnings with high priority ( #6307 ) (Even Rouault) : f89e386

  • Use CPLSetConfigOption/CPLGetConfigOption for some CGI/FastCGI-related env vars. ( #6304 ) (Steve Lime) : b128dac

  • Require url-based symbol values to be pre-defined. ( #6301 ) (Steve Lime) : 3c1a5c6

  • Improved initial check on generating reference maps, avoid crash with label styles (symbol errors), removed dead code. ( #6298 ) (Steve Lime) : 6d06cfa

  • Fix resource leak and pointObj initialization errors. ( #6296 ) (Steve Lime) : e864683

  • Fetch get-pip.py for Python 2.7 since Python 2 support was dropped in get-pip.py for pip 21.0 release (Daniel Morissette) : d3997d1

  • FindProj.cmake: allow finding PROJ 8 that has no longer proj_api.h (fixes #6249 ) (Even Rouault) : 3c6f3f0

  • Fixed rounding error in WMS client (Even Rouault) : 39eed02

  • fix writeStyle(…) for «GEOMTRANSFORM CENTROID» (ahermange) : 3cc59a5

  • PROJ >= 6 reprojection: fix use of freed memory when input and output projections are the same (Even Rouault) : 306164a

  • updates for main/master default branch naming change (Jeff McKenna) : 8d2dc67

  • update license copyright year (Jeff McKenna) : 7f79135

  • docs: fix simple typo (timgates42) : d053796

Changes from 7.6.1 to 7.6.2

  • remove USE_PROJ check for mode=tile (Jeff McKenna) : 335e8a0

  • [msautotest] switch to https for demo.mapserver.org (Jeff McKenna) : 2c5f88f

  • Update minimum CMake version required in README (Jeff McKenna) : 6bc8253

  • Contour layer: take into account nodata value from GDAL raster (fixes #6182 ) (Even Rouault) : c6da2de

  • FindOracle.cmake: complementary fix to find OCI 19 (Even Rouault) : 5235489

  • Remove reference to the missing nmake.opt (Tamas Szekeres) : 2a23d53

  • change to unix-style LineFeeds in all files (Jeff McKenna) : 85badb6

  • [WMS] Don’t remove all memory files before creating a new temporary file in memory. (Krister Wicksell) : 57aba20

  • Changes to locking with USE_THREAD (Anders Samuelsson) : 2039bca

  • Apply CONFIG PROJ_LIB to GDAL/OGR PROJ settings (Even Rouault) : a8e9a24

  • FindOracle.cmake: add support for OCI 19 (Even Rouault) : 636d506

  • WCS 1.1 and 2.0: fix support of netCDF output (complementary fix to refs #5968 ) (Even Rouault) : 4da50ee

  • add favicon to OL template (Jeff McKenna) : 05a60e5

  • add content encoding to OL template (Jeff McKenna) : 9236ef6

Changes from 7.6.0 to 7.6.1

  • Add a bounding box filter to requests passed down to OGR whenever possible (copierrj) : d4facd1

  • Don’t use CIRCULARSTRING when fetching geography data from SQL Server. (botulf2000) : d001ac6

  • Build error if USE_LIBXML2, USE_WMS_SVR, USE_WFS_SVR not defined ( #6119 ) (Tamas Szekeres) : 1094e81

  • Fix memory corruption when GEOMTRANSFORM and SHADOWCOLOR is used in label simultaneously #6114 (Tamas Szekeres) : 3d2af94

  • Hide some SWIG Java warnings ( #6112 ) (sethg) : 676691a

  • Fix 2 warnings raised by gcc 7.5 (Even Rouault) : d08e128

  • Add py37 MapScript build and testing ( #6107 ) (sethg) : 79652b1

  • install PHPNG required file “mapscript.php” (Jeff McKenna) : 610a8b6

  • Fix eol of mapscript python examples to LF instead of CRLF (tigerfoot) : 16eb9de

  • WFS server: add support for <gml:Envelope> in <fes:Intersects> (Even Rouault) : d4dc036

  • Enable relative URL on SLD ExternalGraphic (jbo-ads) : 015bfc5

  • Fix issue #5529 about GEOS error with offset on MULTILINESTRING (jbo-ads) : c894eda

  • msMSSQL2008LayerGetExtent doesn’t consider NATIVE_FILTER or translated filter ( #6076 ) (Tamas Szekeres) : 886398e

  • Fix wrong result on “404 Not Found” symbol URL (jbo-ads) : 8934254

  • Remove submodule name from mapscript package (sethg) : 98f6457

Changes from 7.6.0-rc4 to 7.6.0

  • for essential WMS layers set EXCEPTIONS to XML by default (Jeff McKenna & Even Rouault) : 8063aae

Changes from 7.6.0-rc3 to 7.6.0-rc4

  • add handling of essential WMS layers (Ulrich Meier) : 65aafea

  • mappostgis: restore case insensitive comparisons for “using unique” in DATA, which was accidentaly removed (fixes #6060 ) (Even Rouault) : edf6c5d

Changes from 7.6.0-rc2 to 7.6.0-rc3

  • add attribute support for ALIGN and OFFSET in LABEL (Andrea Borghi) : 89dc335

  • getRotation should be exposed to mapscript ( #6048 ) ( #6053 ) (Tamas Szekeres) : a2bf075

  • zoomScale and zoomPoint doesn’t consider map rotation ( #6046 ) (Tamas Szekeres) : a283a63

  • Use GDAL large file API (UTF-8) compatible in a number of places (Even Rouault) : 82750e4

Changes from 7.6.0-rc1 to 7.6.0-rc2

  • Fix memory corruption in msGEOSGetCentroid ( #6041 ) (Tamas Szekeres) : a5af7f7

Changes from 7.6.0-beta2 to 7.6.0-rc1

  • Fix alpha value for hex colors ( #6023 ) (ravhed) : 1e30f54

Changes from 7.6.0-beta1 to 7.6.0-beta2

  • Fix memory leak (jbo-ads) : 0fa41a9

  • Fix rendering bug when both RENDERMODE=ALL_MATCHING_CLASSES and GEOMTRANSFORM «centroid» are used (jbo-ads) : f9f13d8

  • handle gnu_source definition for SWIG mapscript (issue mapserver #6015 ) (Jeff McKenna) : f503498

Changes from 7.4.4 to 7.6.0-beta1

  • CVE-2020-10872 & CVE-2020-10873: handle phpmapscript vulnerability in error handling ( #6014 ) (Jeff McKenna) : 095ad64

  • Add automated Wheel builds pushed to pypi (sethg) : 2ecb9d8

  • Allow both <LineSymbolizer> and <PolygonSymbolizer> in same Rule (jbo-ads) : 9167d8a

  • Add a Python test for checking the OFFSET is output correctly ( #5715 ) (Seth G) : b79ced1

  • Remove files related to old build process (sethg) : 0381207

  • Add missing expression test ( #6000 ) (Seth G) : 9881e24

  • Add rendering of <Mark> and <ExternalGraphic> in <LineSymbolizer> (jbo-ads) : e2dc145

  • WMS: avoid wfs_use_default_extent_for_getfeature=false setting to override the BBOX parameter when a vendor-specific FILTER is set (Even Rouault) : e108174

  • Fix memory leaks on shape->values (jbo-ads) : bf8458a

  • Add RENDERMODE PROCESSING directive to use SLD rendering in Mapfiles (jbo-ads) : 857a138

  • Extend wfs_use_default_extent_for_getfeature false to msWFSRunBasicGetFeature() for mssql2008 by creating a helper function (Even Rouault) : d007716

  • mapmssql2008.c: honour «wfs_use_default_extent_for_getfeature» «false» LAYER.METADATA (fixes #5994 ) (Even Rouault) : f9ca113

  • Travis: enable MSSQL2008 (Even Rouault) : c0c3988

  • mapmssql2008.c: fix warnings when building for Linux (Even Rouault) : 3d2502b

  • mappostgis.c: fix compiler warning (Even Rouault) : d1d600c

  • Adding processing option to classify 16bit rasters using scaled values instead of raw values. ( #5834 ) (Steve Lime) : e83819b

  • Bug fix (jbo-ads) : 3444f51

  • Implement SLD «painter’s model» (jbo-ads) : 85fcbdd

  • Remove duplicated line (sethg) : f56b120

  • Refactoring towards SLD «painter’s model» implementation (jbo-ads) : 2b80a45

  • Add tests for SLD «painters model» implementation (jbo-ads) : 48cfca5

  • Remove debugging (sethg) : fbc6f88

  • Use [RESULT_DEMIME] (sethg) : cb0e720

  • Use [RESULT_DEVERSION] (sethg) : 93cc276

  • Update ORDER BY test (sethg) : 657e41c

  • Allow debugging (sethg) : 5945ab2

  • Test result updates (sethg) : 1425ac2

  • Fix connection (sethg) : f4cc5e9

  • Add basic WFS tests for MSSQL driver (sethg) : a6fca41

  • Fix ORDER BY typo (sethg) : e7cdc19

  • Use correct projection for cities.shp (sethg) : 03d677c

  • Add CPG file to set DBF encoding (sethg) : 772023f

  • Fix double ORDER BY (sethg) : 0046a5a

  • FindProj.cmake: ban PROJ 6.3.0 (Even Rouault) : 2847e41

  • Use MS_FALSE and MS_TRUE (sethg) : f64d1ab

  • Fix compiler warnings in mapmssql2008.c (sethg) : dd90bae

  • Clean up debug statements (sethg) : 91ef9a6

  • Test MSSQL with Appveyor ( #2 ) (Seth G) : cb2f603

  • Python3 typemap fix ( #5989 ) (Seth G) : 9acb200

  • Updates to build MapScript with SWIG 4.0.1 ( #5983 ) (Seth G) : edafd27

  • mappostgis.c: factor out and apply bind values substitution in missing spots (Even Rouault) : 95ad0ca

  • README.rst: add coveralls badget (Even Rouault) : f681af9

  • Fix Vagrant (Even Rouault) : fd5e8ee

  • Use Case Insensitive Filters for SLD Output ( #5980 ) (Seth G) : 8427420

  • vagrant: fixes to make it work (Even Rouault) : cca2744

  • ci/travis/after_success.sh: exclude directories from coveralls report (Even Rouault) : 318b1aa

  • ci/travis/before_install.sh: use mainstream coveralls (Even Rouault) : e4aa2a5

  • CMakeLists.txt: activate warning flags for Clang as well (Even Rouault) : fdad948

  • Remove unused variables and functions (Even Rouault) : b6fec8b

  • mapscript/php/map.c: use labs() to fix compiler warning (Even Rouault) : a763545

  • AGG headers: remove use of deprecated register keyword, that is forbidden in C++17 (Even Rouault) : 5158178

  • CMakeLists.txt: add /EHsc for MSVC. appveyor.yml: turn warnings as errors (Even Rouault) : 37fd997

  • Fix MSVC warnings in programs and Python mapscript (Even Rouault) : 113e847

  • MSSQL: Implement server side paging support ( #5842 ) (Tamas Szekeres) : 8ef65a2

  • Add /w14701 flag (sethg) : 5a48283

  • Fix “C4701: potentially uninitialized local variable” occurences (refs #5976 ) (Even Rouault) : ccc3a81

  • WCS output / msSaveImageGDAL(): fix support of netCDF output ( #5968 ) (Even Rouault) : f7482ad

  • Add test for MapScript point.draw method ( #5964 ) (Seth G) : b97cf48

  • Initialize status variable for cached WFS results ( #5974 ) (Seth G) : 9f6b5ba

  • msProjectShapeLine(): take into account antimeridian when reprojecting lines from Polar Stereographic to geographic / WebMercator (Even Rouault) : 9ad9824

  • msProjectShapeLine(): take into account potential geotransform on output projection to decide when to apply dateline wrapping (Even Rouault) : 44dde80

  • Test: add one with wfs_query_cache mechanism and geojson output (Even Rouault) : 6d4ba6e

  • msRasterQueryByRectLow(): use msProjectPointEx() for better performance (Even Rouault) : 59eeafe

  • GetFeatureInfo: fix for layers using a lon_wrap PROJECTION and requested in the wrapped part of the raster (Even Rouault) : ead62a6

  • Contour layer: add GetFeatureInfo support (Even Rouault) : ed1d778

  • update copyright year (Jeff McKenna) : 3943014

  • UVRaster: add support for query mode / WMS GetFeatureInfo (Even Rouault) : 70aeb86

  • dummy commit to indicate previous commit regarding “CONNECTIONTYPE WFS: support very long typenames” actually fixes #5959 (Even Rouault) : 91782df

  • CONNECTIONTYPE WFS: support very long typenames (fixes #5958 ) (Even Rouault) : 935da72

  • msTransformMapToSource(): extra fixes to handle lon_wrap=180 and source dataset whose longitude range is larger than 360 deg (Even Rouault) : 6a3000d

  • Add support for filters on group layers in WMS requests (fixes #5919 ) (charles-plante) : ba27152

  • Add sanity checks to avoid segfaults in Mapscript pointObj::draw() (updated) (Brage Førland) : 5bb0ba4

  • maproject.c: restrict a compatibility hack to PROJ < 6.2 (Even Rouault) : d945c8b

  • Add sanity checks to avoid segfaults in Mapscript pointObj::draw() (Brage Førland) : 8ff7bb2

  • CMakeLists.txt: remove -Wdeclaration-after-statement for C files now that we allow C99 (Even Rouault) : e1da545

  • Add msSetup()/msCleanup() to SWIG PHP Mapscript (Brage Førland) : 730e2cc

  • Include mserror.i for PHP7 Swig mapscript builds (Brage Førland) : a64b324

  • WFS: fix WFS 2.0 numberMatched computation, by opening temporary new connection(s) (Even Rouault) : cf64661

  • Add PHP typemap for gdBuffer. This patch adds a SWIG typemap to return gdBuffer as a string in PHP, similar to the Python Mapscript behaviour (ref. RFC-16). This fixes the bug reported in #5798 , where PHP Mapscript msIO_getStdoutBufferBytes() returns a resource handle instead of the actual buffer. (Brage Førland) : 0ff3d79

  • Add setSymbolByName test ( #5937 ) (Seth G) : 55a653d

  • CMakeLists.txt: require C++11 and C99; bump CMake min to 3.0 (Even Rouault) : 50d44d2

  • Partial cplusplus’ification of mapogcfiltercommon (Even Rouault) : 3bfbc6c

  • Make numlabels and labelLeaderObj immutable (sethg) : 1712440

  • Revert «.gitattributes: force LF line endings ( #5934 )» (Even Rouault) : 2b51273

  • Assert our addiction to GDAL and PROJ, and make them required dependencies (Even Rouault) : af67552

  • .gitattributes: force LF line endings ( #5934 ) (Seth G) : 008b38c

  • Revert «Make numlabels and labelLeaderObj immutable ( #5929 )» due to line ending changes (sethg) : 1c6e938

  • Make numlabels and labelLeaderObj immutable ( #5929 ) (Seth G) : 5a06fc8

  • Add some basic clusterObj tests ( #5927 ) (Seth G) : d48070c

  • Add docstrings to SWIG objects ( #5930 ) (Seth G) : b85122d

  • Add getter/setter tests for classObj ( #5928 ) (Seth G) : 528f36d

  • PostGIS backend: translate insensitive equality comparison as Postgre SQL lower(foo::text) = lower(“bar”). (Even Rouault) : 7f3cebc

  • Legendicon 500 error ( #5926 ) (Steve Lime) : 0af5737

  • msGetThreadId(): fix for Windows (Even Rouault) : 5a9fe95

  • WMS Client - Fixes GetLegendGraphic in WMS 1.3.0 (Erik Ravhed) : e88939a

  • Move WMS filter execution (GetMap) to the end of the parameter processing function - after styles are processed. (Steve Lime) : 0b0d4de

  • Add more memory for vagrant vm. (Steve Lime) : ee52c48

  • #5922 - Support rotation of TrueType symbol in UTFGrid (Charles Plante) : f57a971

  • Handle line styles with outline colors differently when setting a hilite color. (Steve Lime) : 11c332d

  • 5901 utf grid support for true type symbols ( #5918 ) (charles-plante) : 8f2de5b

  • Ticket #5917 Dont fail when rendering UTFGrid with outline (Charles Plante) : e1a3b57

  • Bring msDrawQueryLayer() in line with msDrawVectorLayer() - addresses #5744 . (Steve Lime) : b1c4bd5

  • Add test case for OGR GPKG/SQLite startIndex fix (Even Rouault) : ae2c650

  • Added check for Contains to force a Join on the rtree table for large Spatiallite/Geopackage DB’s and improves the lookup performance significantly. (Rutjes, Dennis) : 2ceadc9

  • gml_[item]_type: modify Date semantics, and add Time and DateTime (Even Rouault) : e91a4e5

  • mapscript: add an optional version parameter for map.generateSLD() (Even Rouault) : 1681765

  • SLD generation: write UserStyle.Name from CLASS.GROUP (one UserStyle per class that share the same CLASS.GROUP) and UserStyle.IsDefault from LAYER.CLASSGROUP (Even Rouault) : 6dbece4

  • msSLDGenerateSLDLayer(): tidy-up. no functional change (Even Rouault) : 2107829

  • Add a msStringBuffer API to offer more efficient string concatenation (Even Rouault) : 9bb3797

  • SLD parsing: handle several UserStyle per NamedLayer, honour UserStyle.Name to set the CLASS.GROUP value, and honour UserStyle.IsDefault to set LAYER.CLASSGROUP (Even Rouault) : d89ac1f

  • msSLDParseXXXX(): use a LOOP_ON_CHILD_ELEMENT() macro to simplify code when iterating over XML elements. No major functional change, except that it should be slightly more robust to the present of XML comments in some cases (Even Rouault) : 72f61b8

  • msSLDParseNamedLayer(): move UserStyle parsing to a dedicated function. No functional change (Even Rouault) : a02eb6a

  • msSLDApplySLD(): tidy up code by moving layer duplication to a dedicated function. No functional change (Even Rouault) : f5509ac

  • msSLDApplySLD(): tidy-up code. No functional change (Even Rouault) : 420dcb1

  • initialise the variable (Charles Plante) : 66cd9d4

  • Update mapstring.c (Seth G) : 72b729e

  • Whitespace fix (Seth G) : d25b761

  • Formatting (Seth G) : 00c4655

  • Add layer back (Seth G) : bb9d106

  • Fix indentation (Seth G) : 63d4526

  • Update new layer title (Seth G) : f03d11c

  • Add missing layer to test (geographika) : 1c390ca

  • Add case-insensitive check for default (geographika) : e5939f6

  • Fix typos (geographika) : 2b52e99

  • Use strncasecmp rather than strncmp to check for default (geographika) : 3b6ef36

  • Add LAYER.CONNECTIONOPTIONS keyword to specify open options to GDAL and OGR drivers (Even Rouault) : 942d71f

  • Add a new “padding” template format option ( #5890 ) (Seth G) : 84e0ce8

  • WCS 1.0.0 server: Skip broken layers instead of a complete failure. (Māris Nartišs) : f9ca86e

  • PROJ6: add alternative result for wcs_20_getcov_bands_name_new_reproject.dat. The envelope in the GDAL TIFF file defers to micrometer depending on the exact PROJ transformation path (Even Rouault) : 51e6e6b

  • PROJ6: workaround reprojection bugs fixed in PROJ 6.2 (Even Rouault) : c61abcb

  • Travis / Vagrant: use PROJ 6.1.1 for PROJ.4 API testing as well (Even Rouault) : 84bc541

  • PROJ6: make sure that the projection context is reused by all FastCGI/MapScript requests of the same thread (Even Rouault) : f595e91

  • Better detect situations where no reprojection is needed (apply to both PROJ 4 and PROJ 6) (Even Rouault) : aed7223

  • PROJ6: msOGRSpatialRef2ProjectionObj: avoid going through potentially lossy PROJ4 strings (Even Rouault) : 75860fd

  • PROJ6: more context sharing (Even Rouault) : b22b085

  • Vagrant: add a PROJ6 build (Even Rouault) : 6327340

  • PROJ6: more uses of reprojectionObj to improve performance (Even Rouault) : cce4556

  • SOS: fix very likely wrong reprojection in msSOSAddMemberNode() (not PROJ6 related) (Even Rouault) : 528ceec

  • PROJ6: redirect PROJ error/debug messages to msDebug() (Even Rouault) : 9f799df

  • PROJ6: do more projection context sharing (Even Rouault) : 5f6ebab

  • PROJ6: more uses of reprojectionObj to improve performance (Even Rouault) : 1ca010b

  • .travis.yml: test PROJ6 build on PHP 7.3 config (Even Rouault) : b73b82b

  • PROJ 6: add a per-context cache for (in_crs, out_crs) -> PJ (Even Rouault) : 6e6a912

  • PROJ6: improve performance of msOWSPrintBoundingBox() with context sharing (Even Rouault) : d2dda2c

  • More uses of msProjectShapeEx() (Even Rouault) : c3afefd

  • Initial port to PROJ 6 API (Even Rouault) : 680e7e0

  • Added -1 to the OFFSET in the query generated for OGR (Gerwin Hulsteijn) : 9b2e7e8

  • CleanVSIDir: make it actually work (memory usage and perf fix) (Even Rouault) : 4c59b22

  • msCleanup(): fixes so that calling it twice in non-USE_THREAD mode works (Even Rouault) : 6619408

  • Fix constness of msGetPath() argument (Even Rouault) : f3c7fa6

  • Mapscript python: fix “ISO C90 forbids mixed declarations and code” warning, and convert line endings to Unix style (Even Rouault) : 9c7ca89

  • Don’t set Python debug lib on Windows (sethg) : 1781cca

  • mapscript/php: Fix segfault in ms_newprojectionobj in PHP7.3 (Edward Nash) : 5c5b7bd

  • Add runsub MapScript functions ( #5857 ) (Seth G) : 95ddad7

  • Cache SWIG 3.0.12 ( #5876 ) (Seth G) : 9defa2b

  • Fix MSVC compiler warnings (Even Rouault) : ba3d172

  • .travis.yml: run PHP 7.2 target under -fsanitize=memory (Even Rouault) : 8d0c7d5

  • .travis.yml: move before_install, script and after_success sections to their own scripts (Even Rouault) : ee77e17

  • wcs_20_getcov_gtiff_compress_deflate_predictor.tif test: switch to PREDICTOR=Horizontal, which is more appropriate here anyway, to avoid memleak with some GDAL versions (Even Rouault) : 2e222e8

  • Avoid triggering memory leak in GPX driver (now fixed in GDAL per https://github.com/OSGeo/gdal/commit/6c20fa95d33fd0452329067f766b2d71a5ebd87f) (Even Rouault) : 2df6c3d

  • Expression parser: fix memory leak on tostring() function (Even Rouault) : 36872c0

  • Free all GDAL and OGR resources when both are used (Even Rouault) : 271078a

  • Fix various memory leaks found when running msautotest (Even Rouault) : 836b4a7

  • maplexer.l: avoid warning about isatty() on Windows (Even Rouault) : ce4cb98

  • Fixes WMS layer crash (Erik Ravhed) : 0457bea

  • Fix memory leak in msINLINELayerNextShape() and null pointer dereference in maplexer when rerunning it after msCleanup() (fixes #5558 ) (Even Rouault) : acaf81c

  • OGR GPKG: fix potential SELECT ambiguity for “id” column (fixes #5858 ) (Even Rouault) : e3c6d47

  • Remove MakeValid() calls as these disable spatial indexes ( #5856 ) (Seth G) : 0f31eda

  • Add vector tiles output to Appveyor build ( #5843 ) (Seth G) : bbbfd82

  • Fix compiler warnings raised by gcc (Even Rouault) : 41b9be3

  • Fix compiler warnings with clang (Even Rouault) : 0d1c6db

  • Fix memory leaks found when running msautotest/sld tests (Even Rouault) : c70425d

  • msGDALCleanup(): call GDALDestroy() with GDAL >= 2.4 (Even Rouault) : 14a6fb9

  • Assorted set of compiler warning fixes, and remove need for DEBUG 3 (Even Rouault) : 58bbb51

  • SLD: Add support to arithmetic expressions ( #5831 ) (Jérome Boué) : 4fbd7ae

  • valgrind-suppressions.txt: add extra for newer mongoDB (Even Rouault) : dd8ae3e

  • Update mapaxisorder.h/.csv to EPSG 9.7.0 database (Even Rouault) : f4846fa

  • Fix Undefined symbols compile error on macOS. (offroad-bis) : 02b6aa3

  • MSSQL2008: deal with termination “$” at end of regular expression. Follow-up of eea166a5157d4742b617cd7561c62cd2df5c8f5c (refs #5825 ) ( #5841 ) (Even Rouault) : d2e0517

  • GeoJSON output: automatically add a numberMatched property for WFS 2.0 GetFeature responses when wfs_compute_number_matched=true (Even Rouault) : 2b66c35

  • Allow sorting in MSSQL with WFS ( #5833 ) (Seth G) : f42d7d1

  • .travis.yml / appveyor.yml: do not build temporary backport branches (but only the pull requests). Like done in GDAL / PROJ (Even Rouault) : b66cfb8

  • .travis.yml: add ccache to speed up builds (Even Rouault) : efce4a3

  • FLTGetIsLikeComparisonCommonExpression(): add terminating “$” at end of regular expression (fixes #5825 ) (Even Rouault) : eea166a

  • Revert «Revert «Reduce log clutter from non-errors»» (Jeff McKenna) : bc2fc29

  • Revert «Reduce log clutter from non-errors» (Jeff McKenna) : 9f9680e

  • Shorten line and cleanup assert (Seth G) : 04a9711

  • Add UNIT param and check datum (Seth G) : ace3970

  • Update projection WKT string (Seth G) : 63eadf3

  • Exclude failing projection test (sethg) : cde432c

  • Update Python README.rst with latest version (sethg) : 30dd517

  • set required syntax statement for protobuf 3 ( #5376 ) (Jeff McKenna) : 2137922

  • set required syntax statement for protobuf 3 ( #5376 ) (Jeff McKenna) : 9f7a709

  • Fix reference to TEMPPATH in SLD error message (Dan Baston) : 72b3052

  • Fix potential XSS issue with [layers] tag. (Steve Lime) : 28c8dae

  • Updated main to reflect this is now version 7.5 with a 7.6 release target. (Steve Lime) : 56a9c7d

  • Change DWITH_POINT_Z_M to be ON by default - see #5456 (sethg) : 4f2a7db

  • Update mapquery.c (Dave Pearson) : 978b0d6

  • Reduce log clutter from non-errors (Dave Pearson) : bf63d3d

  • Correct wrong pointers (tlaczy) : 50385f1

  • Fix white-space handling on mappostgis.c (tlaczy) : 48f6559