MapServer 7.4 Changelog

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

Changes from 7.4.4 to 7.4.5

  • CVE-2021-32062: Address flaw in CGI mapfile loading that makes it possible to bypass security controls ( #6313 ) ( #6314 ) (Steve Lime) : d611782

  • Use CPLSetConfigOption/CPLGetConfigOption for some CGI/FastCGI-related env vars ( #6305 ) (Seth G) : f19c8b7

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

Changes from 7.4.3 to 7.4.4

  • Security release for CVE-2020-10872,CVE-2020-10873 handle phpmapscript vulnerability in error handling ( #6014 ) (Jeff McKenna) : 69b06cf

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

  • Initialize status variable for cached WFS results ( #5974 ) (Seth G) : 006d4ba

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

  • CONNECTIONTYPE WFS: support very long typenames (fixes #5958 ) (Even Rouault) : 5f89b67

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

  • Count SYMBOLSET blocks to match to their END (Alexandre Brault) : d60cd8c

Changes from 7.4.2 to 7.4.3

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

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

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

  • PostGIS backend: translate insensitive equality comparison as Postgre SQL lower(foo::text) = lower(‚bar‘). (Even Rouault) : e0559ba

  • [Backport] Include mserror.i and call msSetup() for PHP7 Swig mapscript #5946 by @bragef (Jeff McKenna) : 208d3d9

  • [Backport] pull request #5926 from main. (Steve Lime) : 54ae78c

  • [Backport] Add PHP typemap for gdBuffer, fixed by @bragef (Jeff McKenna) : d841ce9

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

  • 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) : 40fd76f

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

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

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

Changes from 7.4.1 to 7.4.2

  • 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) : 007dd56

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

  • Expression parser: fix memory leak on tostring() function (Even Rouault) : 5f505e0

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

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

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

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

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

  • OGR GPKG: fix potential SELECT ambiguity for ‚id‘ column (fixes #5858 ) (Even Rouault) : a471b45

  • Remove MakeValid() calls as these disable spatial indexes ( #5859 ) (backporting[bot]) : e6f82e9

  • Fix Undefined symbols compile error on macOS. (offroad-bis) : 5be2764

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

Changes from 7.4.0 to 7.4.1

  • [Backport branch-7-4] Allow sorting in MSSQL with WFS ( #5835 ) (backporting[bot]) : 4202783

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

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

  • FLTGetIsLikeComparisonCommonExpression(): add terminating ‚$‘ at end of regular expression (fixes #5825 ) (Even Rouault) : 6f0885e

  • Issue #5796 - Latest OCI library files not found (Brian Mulcahy) : e4c75fb

  • Backport proj WKT fix (Seth G) : af2f4fb

  • Update README version numbers and date (Seth G) : 14095ae

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

  • Fixing Vagrant and Travis-CI builds. (Steve Lime) : 5e91b9e

  • add SWIG test to PHPNG cmake (greenwoodmap) : 391bd6c

Changes from 7.4.0-rc1 to 7.4.0-rc2

Bemerkung

7.4.0-rc2 was released as the final 7.4.0 release.

  • Update expected output from several tests (Erik Ravhed) : 04d0a73

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

Changes from 7.4.0-beta2 to 7.4.0-rc1

  • Clean-up PHPNG MapScript build process (sethg) : f627a7c

  • GML:Name is now encoded in WMS GetFeatureInfo (fixes #5361 ) (Erik Ravhed) : 74e373a

Changes from 7.4.0-beta1 to 7.4.0-beta2

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

  • image error checking, enable msIO_getAndStripStdoutBufferMimeHeaders, new tests (andy) : bfcce38

  • Removed redundant code (Erik Ravhed) : 3ef811a

  • PHP bindings: remove unused php_proj.c which uses removed projects.h PROJ API (Even Rouault) : 1d0d0e0

  • Another small workaround to all PHP/MapScript to compile against Proj 1.6.0. (Steve Lime) : b4b680d

  • fix perl examples (andy) : 37815bb

  • set PERL5LIB, fix paths (andy) : 774bc1d

  • Update SWIG to 3.0.12 (sethg) : 380f5a2

  • need a dash (andy) : a10dce2

  • add perl to travis, run some tests (andy) : e7a42a6

  • Improve the layer extent calculation of the MSSQL driver ( #5781 ) (Tamas Szekeres) : 866773b

  • Feature names with dots are now supported for feature id filtering (fixes #5741 ) (Erik Ravhed) : b8139f2

  • Add sampling along diagonal for rectangle as polygon reprojection (Erik Ravhed) : a84b676

  • Update SWIG to 3.0.12 (sethg) : 7131547

  • Fix variables set by find_package(PHP). (Bas Couwenberg) : c6d5851

  • Add shebang to Python MapScript example scripts. (Bas Couwenberg) : b972c46

  • Fix spelling errors (Bas Couwenberg) : 879da3a

  • Install PHP MapScript. (Bas Couwenberg) : b1f00f8

Changes from 7.2.2 to 7.4.0-beta1

  • Implemented workaround suggested in #5766 for compiling against Proj 6.x. (Steve Lime) : ddc026a

  • Update venv paths (sethg) : e8bc45c

  • Fix WORKING_DIRECTORY path for Linux (sethg) : 4476497

  • Clean up redundant CMake commands, and run examples alongside test suite (sethg) : a188e0f

  • Rewrite existing examples to be py3 compatible (sethg) : 1bb1414

  • Remove geocode_addresses.py as it requires an external library and web service (sethg) : c5cfd1d

  • Add test CSV file and refactor project_csv.py example (sethg) : 16dbde8

  • Move wxs script to examples folder and refactor as a runnable script (sethg) : fed48ca

  • Add check for NULL msGMLGetItems (Seth G) : f6d40c8

  • Remove duplicate .h (Seth G) : 8f6dd81

  • Update point geojson expected test output (sethg) : fac0a52

  • Update tests to check field types (sethg) : 8c2e5ec

  • Return the item GML type as a string rather than object (sethg) : 3e69819

  • Roll back adding mapows.h to SWIG interface (sethg) : e91f174

  • Add SWIG guards to only expose the relevant struct and function in mapows.h (sethg) : 1388143

  • Add new getItemDefinition to layerObj SWIG bindings and include tests (sethg) : 2ac55ea

  • Include mapows.h in SWIG and export the required functions (sethg) : 0260296

  • Add geo_interface to shape and geometry classes with tests (sethg) : 0abe369

  • Fix crash on corrupt qix files ( #2362 ) (Tamas Szekeres) : 7774a79

  • Clean up SWIG file and add new __geo_interface__ protocol and tests (geographika) : 3ed8857

  • Standardise tabs and spaces (geographika) : fecac40

  • Run Travis CI for PHP 7.3 (ejn) : 189dbe9

  • [mapscript/php] Fix build problems for PHP 7.3 (ejn) : f1a579a

  • Add layer name to the error message of the missing fields in msOGRLayerInitItemInfo ( #5755 ) (Tamas Szekeres) : 9ab8955

  • Added explicit conversion for long attributes. (Steve Lime) : a05d92d

  • WMS: apply FILTER (RFC 118) vendor parameter after the CRS parameter is taken into account to avoid extent inconsistencies (found during refs #5658 investigation) (Even Rouault) : 3ab3322

  • Check for MSVC rather than WIN32 when setting compiler flags (geographika) : b559849

  • Travis setup to compile mapscript_csharp for linux (R) : a7f6436

  • mapscript_csharp compilable on Linux (Rui Lima) : fd5641d

  • mapscript_csharp compilable on linux (R) : f46ecbb

  • Remove redundant doc files (geographika) : ac73ca7

  • Add PHP doc links (geographika) : aaaa432

  • Add note about v8 folder (geographika) : 9108a2e

  • Update README text (geographika) : c848463

  • Change to .rst for GitHub formatting (geographika) : 14f63d9

  • Change setup.py parameters (geographika) : 4fffd15

  • Switch module name to fix #5708 (geographika) : eaedd0b

  • Add Unix build notes (geographika) : c126c32

  • Update install process to use custom variables (geographika) : 9356a5b

  • Switch module name order (geographika) : 4e2f989

  • Use DESTDIR and CMAKE_INSTALL_PREFIX when available (geographika) : 3ea010a

  • Install to site-packages (geographika) : f2dd4a0

  • Add custom CMake function to check for Python module (geographika) : 5a8ad7f

  • Change module naming for phpng (geographika) : 4bfd0c5

  • Install Python mapscript using setup.py (geographika) : ed187ac

  • Hide level3/4 compiler warnings (geographika) : 8228f6e

  • removed associated comment with unused function (Sunveer Singh) : 65a479c

  • No need of msWrapText according to issue #5609 (Sunveer Singh) : 9c5cf7e

  • Merge FindPHP7.cmake and FindPHP5.cmake into FindPHP.cmake (Alexander Gabriel) : 7f847ac

  • Fix building-issues for PHP/Mapscript (native) in thread-safe environments and windows (Alexander Gabriel) : 368d711

  • Moving function void mapscript_create_grid (Björn Boldt) : 04a11bf

  • Moving function mapscript_create_legend (Björn Boldt) : 8990708

  • Add PHP7.x-support (bjoernboldt) : 461f827

  • Change URL to OpenLayers to be protocol relative (enables using built-in OpenLayers over https) (Alexander Gabriel) : 95deed6

  • Fix RST errors and add PROJ_LIB note (geographika) : 6a38e27

  • README.rst updates (geographika) : 72e4423

  • Fix YAML (geographika) : 47f7f18

  • Disable numpoints test (geographika) : 7f963ea

  • Add fast fail for Appveyor (geographika) : f22129b

  • Change assertRaises logic as it fails on Appveyor (geographika) : b400e28

  • Run tests on Python3 (geographika) : 8dec121

  • Turn off print statements (geographika) : bec21e6

  • Re-add outstanding tests with linting (geographika) : 2f380a7

  • Add a py2/py3 check and use the appropriate argument for writing to binary files (geographika) : 9622306

  • Replace tabs with spaces causing compiler warnings (geographika) : e7fc3ca

  • Lint fixes (geographika) : 53e5d1c

  • Update query API to fix tests (geographika) : b635997

  • Update assertRaises syntax to fix test (geographika) : 52bd312

  • Update zoom tests to reflect new rect extents (geographika) : d799002

  • Linting fix (geographika) : a64ef13

  • Remove broken custom Python imageObj constructor code (geographika) : 275b91f

  • Fix broken symbol tests, remove GD as default renderer (geographika) : f3edb87

  • Use new query API for style test (geographika) : ce97bc8

  • hashTableObj extensions moved to pyextend (geographika) : 693ac0f

  • Move hashTableObj extension to pyextend, fix image writing for py3, and fix regex deprecation warnings (geographika) : 3ca427c

  • Add version revision number to package version (geographika) : 45e5c9a

  • Update API for testGetShape test and change assert_ to assertTrue (geographika) : c4f37d2

  • Update README.WIN32 for PHP-Mapscript-NG (Alexander Gabriel) : b105eaa

  • Corrected Error in CMakeLists.txt (Alexander Gabriel) : 1fa689b

  • Build PHPNG-Mapscript on systems with correct CMake and SWIG Version (Alexander Gabriel) : 1f50e61

  • travis: only build with supported php versions (Alexander Gabriel) : 8e4b0f0

  • Make Travis stop building with PHP-5.5 (not supported any more. see http://php.net/supported-versions.php) (Alexander Gabriel) : caa1ecc

  • don’t install phpng on windows (Alexander Gabriel) : 96e66d3

  • add install target for phpng mapscript extension (Tobias Wawryniuk) : 0c1b000

  • add module version info; for phpinfo() etc. (Tobias Wawryniuk) : cd32df8

  • Add Support for PHP-NG MapScript (via SWIG) but don’t yet build with AppVeyor (Alexander Gabriel) : 7de2cd9

  • Add in missing namespaces (geographika) : 85019ea

  • Update SWIG to 3.0.12 (geographika) : 6734fb2

  • Move zipping to after_test (geographika) : b6d28b5

  • Correct zip path (geographika) : 3a2a38d

  • Remove tabs from appveyor (geographika) : f1182b8

  • Save built output to a downloadable zip to check output (geographika) : 55d2242

  • Fix namespaces and double definition of mapscriptPINVOKE (geographika) : 70ba392

  • Make flake8 a separate custom command (geographika) : d392122

  • Add pip caching to speed up builds (geographika) : 969ed53

  • Add flake8 to virtual environment and run linting on test cases (geographika) : aa2844e

  • Add .NET namespaces (geographika) : c07a1c8

  • Update Python code to meet flake8 linting standards, remove custom test runner code, and rename files to match pytest naming conventions (geographika) : 2ccbe0d

  • Remove FLTGetMapserverExpression() and subroutines that are not used in code base. FLTGetCommonExpression() does the same (Even Rouault) : 7beddff

  • mapscript/python/CMakeLists.txt: fix for appveyor and travis (Even Rouault) : d50430b

  • Update README.rst with notes about testing and new build process (geographika) : 52c41df

  • Use correct virtualenv location (geographika) : d9d916a

  • Use CMAKE_BUILD_TYPE for MSCV subfolder (geographika) : beab44d

  • Remove incorrect variable (geographika) : 3f20197

  • Check for Release subfolder for MSVC (geographika) : 4739211

  • Add wheel building to Appveyor (geographika) : 8bef6c9

  • Rename all test files to be picked up by pytest (geographika) : 5dcc5d1

  • Rename test file to be picked up by pytest (geographika) : ecf8db4

  • pytest.ini no longer required (geographika) : 4ec9323

  • Use test data from within the mapscript package (geographika) : 832c0a1

  • Ensure latest versions on setuptools and wheel are installed (geographika) : 5ac111f

  • Update build process to create a virtual environment and install and test the wheel in this (geographika) : 660808f

  • Add tests and test data to package (geographika) : c144dd0

  • Fix incorrect CMake comment (Seth G) : 3d28cac

  • Updated README (geographika) : 421b0cb

  • Only add build type to path for Windows (geographika) : b17ad61

  • Don’t specify release target for CMake (geographika) : d22d57e

  • Run wheel build as a separate command (geographika) : 9c92062

  • Add Python wheel builds to Makefile with tests (geographika) : cb6a785

  • Update date and compatibility notes (geographika) : 5a48d73

  • Add Python3 SWIG build flag, and new Python wheel target (geographika) : fc780d8

  • Ensure wheels include platform names (geographika) : 10ef05b

  • Credit updates and further explanations (geographika) : 4e6b96e

  • Use relative imports for Python3 (geographika) : a4985ad

  • Update wheel commands (geographika) : 6af78dd

  • Use io module to open file (geographika) : db22ea3

  • Remove old setup.py (geographika) : 37877c7

  • Copy README.rst to build folder (geographika) : 98ed5d2

  • Format credits list (geographika) : 267dc94

  • Update ReadMe in RST format (geographika) : ab73320

  • greater should be all UPPERCASE (geographika) : fbd7dd2

  • Check class name directly (geographika) : e2e1432

  • Allow SWIG modules to be built with old or new versions of CMake (geographika) : 609db8c

  • Update tests to check class names and not fully qualified names (allows direct import and install via a Wheel) (geographika) : bab65ad

  • Images are now RGB rather than 8-bit when tested using Pillow (geographika) : 6ec6085

  • Run tests from root of build folder to avoid adding empty mapscript module from working directory (geographika) : 38d2699

  • Add pillow as dependency for tests (geographika) : 7553209

  • Create template setup.py (geographika) : 320ef1c

  • Add init files so modules are found (geographika) : e4789e3

  • setup.cfg no longer required (geographika) : 0f7366a

  • Update CMakeLists.txt to place copy files required to build a wheel (geographika) : 893db54

  • Replace %CD% with APPVEYOR_BUILD_FOLDER (Seth G) : 0ac75fd

  • Replace backslashes in APPVEYOR_BUILD_FOLDER with forwardslashes (Seth G) : e574ee6

  • Replace backslashes with forward slashes (Seth G) : 2662ff7

  • Fix mssql filter string limitation ( #5602 ) (Tamas Szekeres) : 59f82a1

  • msPostGISBuildSQLWhere: quote the geo column name (Clemens Ladisch) : 52b724e