Commit f628922f authored by Bas Couwenberg's avatar Bas Couwenberg

New upstream version 7.4.1

parent e9264975
...@@ -17,7 +17,7 @@ include(CheckCSourceCompiles) ...@@ -17,7 +17,7 @@ include(CheckCSourceCompiles)
set (MapServer_VERSION_MAJOR 7) set (MapServer_VERSION_MAJOR 7)
set (MapServer_VERSION_MINOR 4) set (MapServer_VERSION_MINOR 4)
set (MapServer_VERSION_REVISION 0) set (MapServer_VERSION_REVISION 1)
set (MapServer_VERSION_SUFFIX "") set (MapServer_VERSION_SUFFIX "")
set(TARGET_VERSION_MAJOR ${MapServer_VERSION_MAJOR}) set(TARGET_VERSION_MAJOR ${MapServer_VERSION_MAJOR})
......
...@@ -12,6 +12,11 @@ For a complete change history, please see the Git log comments. For more ...@@ -12,6 +12,11 @@ For a complete change history, please see the Git log comments. For more
details about recent point releases, please see the online changelog at: details about recent point releases, please see the online changelog at:
http://mapserver.org/development/changelog/ http://mapserver.org/development/changelog/
7.4.1 release (2019-7-12)
-------------------------
- No major changes, see detailed changelog for bug fixes
7.4.0 release (2019-5-14) 7.4.0 release (2019-5-14)
------------------------- -------------------------
......
...@@ -37,7 +37,7 @@ if(DEFINED ENV{ORACLE_HOME}) ...@@ -37,7 +37,7 @@ if(DEFINED ENV{ORACLE_HOME})
${ORACLE_HOME}/OCI/include) # Oracle XE on Windows ${ORACLE_HOME}/OCI/include) # Oracle XE on Windows
set(ORACLE_OCI_NAMES clntsh libclntsh oci) set(ORACLE_OCI_NAMES clntsh libclntsh oci)
set(ORACLE_NNZ_NAMES nnz10 libnnz10 nnz11 libnnz11 nnz12 libnnz12 ociw32) set(ORACLE_NNZ_NAMES nnz10 libnnz10 nnz11 libnnz11 nnz12 libnnz12 nnz18 libnnz18 ociw32)
set(ORACLE_OCCI_NAMES libocci occi oraocci10 oraocci11 oraocci12) set(ORACLE_OCCI_NAMES libocci occi oraocci10 oraocci11 oraocci12)
set(ORACLE_LIB_DIR set(ORACLE_LIB_DIR
......
...@@ -1680,7 +1680,7 @@ int msLayerApplyPlainFilterToLayer(FilterEncodingNode *psNode, mapObj *map, int ...@@ -1680,7 +1680,7 @@ int msLayerApplyPlainFilterToLayer(FilterEncodingNode *psNode, mapObj *map, int
int msLayerSupportsSorting(layerObj *layer) int msLayerSupportsSorting(layerObj *layer)
{ {
if (layer && ( if (layer && (
(layer->connectiontype == MS_OGR) || (layer->connectiontype == MS_POSTGIS) || (layer->connectiontype == MS_ORACLESPATIAL) || ((layer->connectiontype == MS_PLUGIN) && (strstr(layer->plugin_library,"msplugin_oracle") != NULL)) (layer->connectiontype == MS_OGR) || (layer->connectiontype == MS_POSTGIS) || (layer->connectiontype == MS_ORACLESPATIAL) || ((layer->connectiontype == MS_PLUGIN) && (strstr(layer->plugin_library,"msplugin_oracle") != NULL)) || ((layer->connectiontype == MS_PLUGIN) && (strstr(layer->plugin_library,"msplugin_mssql2008") != NULL))
) )
) )
return MS_TRUE; return MS_TRUE;
......
...@@ -1506,8 +1506,21 @@ static int prepare_database(layerObj *layer, rectObj rect, char **query_string) ...@@ -1506,8 +1506,21 @@ static int prepare_database(layerObj *layer, rectObj rect, char **query_string)
query = msStringConcatenate(query, box3d); query = msStringConcatenate(query, box3d);
query = msStringConcatenate(query, ") = 1 "); query = msStringConcatenate(query, ") = 1 ");
if (layerinfo->sort_spec) if (layerinfo->sort_spec) {
query = msStringConcatenate(query, layerinfo->sort_spec); query = msStringConcatenate(query, layerinfo->sort_spec);
}
/* Add extra sort by */
if( layer->sortBy.nProperties > 0 ) {
char* pszTmp = msLayerBuildSQLOrderBy(layer);
if (layerinfo->sort_spec)
query = msStringConcatenate(query, ", ");
else
query = msStringConcatenate(query, " ORDER BY ");
query = msStringConcatenate(query, pszTmp);
msFree(pszTmp);
}
if (layer->debug) { if (layer->debug) {
msDebug("query:%s\n", query); msDebug("query:%s\n", query);
......
...@@ -93,7 +93,7 @@ char *FLTGetIsLikeComparisonCommonExpression(FilterEncodingNode *psFilterNode) ...@@ -93,7 +93,7 @@ char *FLTGetIsLikeComparisonCommonExpression(FilterEncodingNode *psFilterNode)
pszValue = psFilterNode->psRightNode->pszValue; pszValue = psFilterNode->psRightNode->pszValue;
nLength = strlen(pszValue); nLength = strlen(pszValue);
/* The 4 factor is in case of \. See below */ /* The 4 factor is in case of \. See below */
if( 1 + 4 * nLength + 1 + 1 >= sizeof(szTmp) ) if( 1 + 4 * nLength + 1 + 1 + 1 >= sizeof(szTmp) )
return NULL; return NULL;
iTmp =0; iTmp =0;
...@@ -163,6 +163,10 @@ char *FLTGetIsLikeComparisonCommonExpression(FilterEncodingNode *psFilterNode) ...@@ -163,6 +163,10 @@ char *FLTGetIsLikeComparisonCommonExpression(FilterEncodingNode *psFilterNode)
szTmp[iTmp] = '\0'; szTmp[iTmp] = '\0';
} }
} }
if (nLength > 0) {
szTmp[iTmp]= '$';
iTmp++;
}
szTmp[iTmp] = '"'; szTmp[iTmp] = '"';
szTmp[++iTmp] = '\0'; szTmp[++iTmp] = '\0';
#if 0 #if 0
......
...@@ -1934,12 +1934,14 @@ char *msOGRGetToken(layerObj* layer, tokenListNodeObjPtr *node) { ...@@ -1934,12 +1934,14 @@ char *msOGRGetToken(layerObj* layer, tokenListNodeObjPtr *node) {
} }
else if (c == '.') else if (c == '.')
c = wild_one; c = wild_one;
else if (i == 0 && c == '^') {
if (i == 0 && c == '^') {
i++; i++;
continue; continue;
} }
else if( c == '$' && c_next == 0 ) {
break;
}
re[j++] = c; re[j++] = c;
i++; i++;
...@@ -3643,6 +3645,8 @@ static std::string msOGRTranslatePartialInternal(layerObj* layer, ...@@ -3643,6 +3645,8 @@ static std::string msOGRTranslatePartialInternal(layerObj* layer,
{ {
if( i == 0 && expr->m_aoChildren[1]->m_osVal[i] == '^' ) if( i == 0 && expr->m_aoChildren[1]->m_osVal[i] == '^' )
continue; continue;
if( i == nSize-1 && expr->m_aoChildren[1]->m_osVal[i] == '$' )
break;
if( expr->m_aoChildren[1]->m_osVal[i] == '.' ) if( expr->m_aoChildren[1]->m_osVal[i] == '.' )
{ {
if( i+1<nSize && if( i+1<nSize &&
......
find_package(SWIG REQUIRED)
include(${SWIG_USE_FILE})
if(WIN32 AND (${CMAKE_VERSION} EQUAL "3.12.0") OR (${CMAKE_VERSION} EQUAL "3.12.1") OR (${CMAKE_VERSION} EQUAL "3.12.2") OR (${CMAKE_VERSION} EQUAL "3.12.3")) if(WIN32 AND (${CMAKE_VERSION} EQUAL "3.12.0") OR (${CMAKE_VERSION} EQUAL "3.12.1") OR (${CMAKE_VERSION} EQUAL "3.12.2") OR (${CMAKE_VERSION} EQUAL "3.12.3"))
message(FATAL_ERROR "Building with CMAKE ${CMAKE_VERSION} will not work. Please downgrade to 3.11.x or update to a higher version than 3.12.3") message(FATAL_ERROR "Building with CMAKE ${CMAKE_VERSION} will not work. Please downgrade to 3.11.x or update to a higher version than 3.12.3")
endif() endif()
......
Python MapScript for MapServer 7.2.1 README Python MapScript for MapServer 7.4.0 README
=========================================== ===========================================
:Author: MapServer Team :Author: MapServer Team
:Last Updated: 2018-11-28 :Last Updated: 2019-06-04
Introduction Introduction
------------ ------------
...@@ -36,8 +36,8 @@ Advantages of ready-made wheels on PyPI include: ...@@ -36,8 +36,8 @@ Advantages of ready-made wheels on PyPI include:
Currently the following wheels are built: Currently the following wheels are built:
+ Python 2.7 x64 for MapServer 7.2 + Python 2.7 x64 for MapServer 7.4.0
+ Python 3.6 x64 for MapServer 7.2 + Python 3.6 x64 for MapServer 7.4.0
The mapscript wheels have been compiled using Visual Studio 2017 version 15.3 (``MSVC++ 14.11 _MSC_VER == 1911``). The mapscript wheels have been compiled using Visual Studio 2017 version 15.3 (``MSVC++ 14.11 _MSC_VER == 1911``).
Linux wheels are also planned, using the `manylinux <https://github.com/pypa/manylinux>`_ project. Linux wheels are also planned, using the `manylinux <https://github.com/pypa/manylinux>`_ project.
...@@ -62,8 +62,8 @@ On Windows you can use the following, replacing ``C:\MapServer\bin`` with the lo ...@@ -62,8 +62,8 @@ On Windows you can use the following, replacing ``C:\MapServer\bin`` with the lo
SET PATH=C:\MapServer\bin;%PATH% SET PATH=C:\MapServer\bin;%PATH%
Windows binary packages can be downloaded from `GIS Internals <https://www.gisinternals.com/stable.php>`_. Windows binary packages can be downloaded from `GIS Internals <https://www.gisinternals.com/stable.php>`_.
To ensure compatibility with the wheels, please use identical release packages, e.g. ``release-1911-x64-gdal-2-3-mapserver-7-2`` To ensure compatibility with the wheels, please use identical release packages, e.g. ``release-1911-x64-gdal-2-3-mapserver-7-4``
for mapscript 7.2. for mapscript 7.4.
When using these packages the MapServer path will be similar to ``C:\release-1911-x64-gdal-2-3-mapserver-7-2\bin``. When using these packages the MapServer path will be similar to ``C:\release-1911-x64-gdal-2-3-mapserver-7-2\bin``.
...@@ -90,7 +90,7 @@ Now you should be able to import mapscript: ...@@ -90,7 +90,7 @@ Now you should be able to import mapscript:
.. code-block:: python .. code-block:: python
python -c "import mapscript;print(mapscript.msGetVersion())" python -c "import mapscript;print(mapscript.msGetVersion())"
MapServer version 7.2.0 OUTPUT=PNG OUTPUT=JPEG OUTPUT=KML SUPPORTS=PROJ SUPPORTS=AGG SUPPORTS=FREETYPE SUPPORTS=CAIRO SUPPORTS=SVG_SYMBOLS SUPPORTS=SVGCAIRO SUPPORTS=ICONV SUPPORTS=FRIBIDI SUPPORTS=WMS_SERVER SUPPORTS=WMS_CLIENT SUPPORTS=WFS_SERVER SUPPORTS=WFS_CLIENT SUPPORTS=WCS_SERVER SUPPORTS=SOS_SERVER SUPPORTS=FASTCGI SUPPORTS=THREADS SUPPORTS=GEOS SUPPORTS=PBF INPUT=JPEG INPUT=POSTGIS INPUT=OGR INPUT=GDAL INPUT=SHAPEFILE MapServer version 7.4.0 OUTPUT=PNG OUTPUT=JPEG OUTPUT=KML SUPPORTS=PROJ SUPPORTS=AGG SUPPORTS=FREETYPE SUPPORTS=CAIRO SUPPORTS=SVG_SYMBOLS SUPPORTS=SVGCAIRO SUPPORTS=ICONV SUPPORTS=FRIBIDI SUPPORTS=WMS_SERVER SUPPORTS=WMS_CLIENT SUPPORTS=WFS_SERVER SUPPORTS=WFS_CLIENT SUPPORTS=WCS_SERVER SUPPORTS=SOS_SERVER SUPPORTS=FASTCGI SUPPORTS=THREADS SUPPORTS=GEOS SUPPORTS=PBF INPUT=JPEG INPUT=POSTGIS INPUT=OGR INPUT=GDAL INPUT=SHAPEFILE
If you failed to add the MapServer binaries to your system path you may see one of the following errors: If you failed to add the MapServer binaries to your system path you may see one of the following errors:
...@@ -232,8 +232,8 @@ Make sure the MapServer binaries are on the system path, and that the PROJ_LIB v ...@@ -232,8 +232,8 @@ Make sure the MapServer binaries are on the system path, and that the PROJ_LIB v
.. code-block:: bat .. code-block:: bat
SET PATH=C:\release-1911-x64-gdal-2-3-mapserver-7-2\bin;%PATH% SET PATH=C:\release-1911-x64-gdal-2-3-mapserver-7-4\bin;%PATH%
SET PROJ_LIB=C:\release-1911-x64-gdal-2-3-mapserver-7-2\bin\proj\SHARE SET PROJ_LIB=C:\release-1911-x64-gdal-2-3-mapserver-7-4\bin\proj\SHARE
Finally run the command below to run the test suite: Finally run the command below to run the test suite:
...@@ -254,4 +254,4 @@ Credits ...@@ -254,4 +254,4 @@ Credits
+ Thomas Bonfort (developer) + Thomas Bonfort (developer)
+ Even Rouault (developer) + Even Rouault (developer)
+ Seth Girvin (Python3 migration, documentation and builds) + Seth Girvin (Python3 migration, documentation and builds)
+ Claude Paroz (Python3 migration) + Claude Paroz (Python3 migration)
\ No newline at end of file
...@@ -290,15 +290,21 @@ class MapSizeTestCase(MapTestCase): ...@@ -290,15 +290,21 @@ class MapSizeTestCase(MapTestCase):
class MapSetWKTTestCase(MapTestCase): class MapSetWKTTestCase(MapTestCase):
def testOGCWKT(self): def testOGCWKT(self):
self.map.setWKTProjection('PROJCS["unnamed", PROJECTION["Albers_Conic_Equal_Area"], ' self.map.setWKTProjection('''PROJCS["unnamed",GEOGCS["WGS 84",DATUM["WGS_1984",
'PARAMETER["standard_parallel_1", 65], PARAMETER["standard_parallel_2", 55], ' SPHEROID["WGS 84",6378137,298.257223563]],
'PARAMETER["latitude_of_center", 0], PARAMETER["longitude_of_center", -153], ' PRIMEM["Greenwich",0],
'PARAMETER["false_easting", -4943910.68], PARAMETER["false_northing", 0]]') UNIT["Degree",0.0174532925199433]],
PROJECTION["Albers_Conic_Equal_Area"],
PARAMETER["standard_parallel_1", 65], PARAMETER["standard_parallel_2", 55],
PARAMETER["latitude_of_center", 0], PARAMETER["longitude_of_center", -153],
PARAMETER["false_easting", -4943910.68], PARAMETER["false_northing", 0],
UNIT["metre",1.0]
]''')
proj4 = self.map.getProjection() proj4 = self.map.getProjection()
assert proj4.find('+proj=aea') != -1 assert proj4.find('+proj=aea') != -1
assert proj4.find('+ellps=WGS84') != -1 assert proj4.find('+datum=WGS84') != -1
assert (mapscript.projectionObj(proj4)).getUnits() != mapscript.MS_DD assert mapscript.projectionObj(proj4).getUnits() != mapscript.MS_DD
def testESRIWKT(self): def testESRIWKT(self):
self.map.setWKTProjection('ESRI::PROJCS["Pulkovo_1995_GK_Zone_2", GEOGCS["GCS_Pulkovo_1995", ' self.map.setWKTProjection('ESRI::PROJCS["Pulkovo_1995_GK_Zone_2", GEOGCS["GCS_Pulkovo_1995", '
......
//set version statement to avoid warnings thrown in protobuf >= 3
syntax = "proto2";
package vector_tile; package vector_tile;
option optimize_for = LITE_RUNTIME; option optimize_for = LITE_RUNTIME;
......
...@@ -6,7 +6,8 @@ export DEBIAN_FRONTEND=noninteractive ...@@ -6,7 +6,8 @@ export DEBIAN_FRONTEND=noninteractive
apt-get update apt-get update
apt-get install -y python-software-properties apt-get install -y python-software-properties
add-apt-repository -y ppa:ubuntugis/ubuntugis-unstable add-apt-repository -y ppa:ubuntugis/ppa
add-apt-repository -y ppa:ubuntugis/ubuntugis-testing
apt-get update apt-get update
apt-get -y upgrade apt-get -y upgrade
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment