MapServer 4.10.0-beta1 Released
dmorissette at MAPGEARS.COM
Fri Aug 18 15:31:45 EDT 2006
Time has come for a MapServer 4.10 release, the development team has
just started the release process and the plan is to have a final release
at the end of September. For those interested the complete plan is
It is expected that this will be the last 4.x release and the next
release should be version 5.0 likely sometimes in the first months of 2007.
Today we are pleased to announce the availability of MapServer
4.10.0-beta1. The source package can be downloaded from
MapServer 4.10 introduces the following new features (and much more):
- MS RFC 9: Item tag for query templates
- MS RFC 11: Support for Curved Labels
- MS RFC 13: SOS support
- MS RFC 14: Relative Coordinates for INLINE features
- MS RFC 16: MapScript WxS Services
- MS RFC 18: Encryption of passwords in mapfilesCurved Labels
- Web Map Context (WMC) 1.1 support
- SLD support in Web Map Context
- Mapfile includes
- GEOS rewrite to use C API and new methods exposed
- GEOS methods ported to PHP MapScript (only in SWIG MapScript before)
The complete RFC documents are available at
Of course, this release also brings a large number of small enhancements
and bug fixes that didn't deserve their own RFC and aren't listed above.
We have included a copy of the list of changes/fixes from the
HISTORY.TXT at the end of this message.
We would like to invite all experienced users to test the betas in their
respective environment and to report any issue they may find either via
bugzilla or via the users list (complete bug reports in bugzilla are
always better). Your feedback is important in order to get the best
possible quality release.
We are also trying to get a number of volounteers to help by pre-testing
the betas before we make them available to the public. If you are
interested to help on that front, please see the QA/Tests Checklist
section in the release plan at
Finally, we would like to thank all the developers, doc/website
maintainers and other contributors who help make those releases
possible, and special thanks to the new guys who just joined for their
hard work: Tamas, Umberto, and Benj whose contribution of the curved
labels is pretty cool. Not very often someone drops a feature like that
in your lap. Also thanks for all the help to Sean who decided to take a
smaller role in MapServer in June after being a very active contributor
since the MapServer 3.7 days (2002?), including leading the efforts on
Python and SWIG MapScript.
Steve Lime and Daniel Morissette
Version 4.10.0-beta1 (2006-08-17)
- Marking the following SWIG object members immutable (bug 1803)
layerObj.metadata, classObj.label, classObj.metadata,
fontSetObj.fonts, legendObj.label, mapObj.symbolset,
mapObj.fontset, mapObj.labelcache, mapObj.reference,
mapObj.scalebar, mapObj.legend, mapObj.querymap
mapObj.web, mapObj.configoptions, webObj.metadata,
imageObj.format, classObj.layer, legendObj.map,
labelPathObj was made completely hidden (according to Steve's suggestion)
- Fixed problem with PHP MapScript's saveWebImage() filename collisions
when mapscript was loaded in php.ini with PHP as an Apache DSO (bug 1322)
- Produce warning in WFS GetFeature output if ???_featureid is specified
but corresponding item is not found in layer (bug 1781). Also produce
a warning in GetCapabilities if ???_featureid not set (bug 1782)
- Removed the default preallocation of 4 values causing memory leaks.
(related to bug 1801) Added initValues to achieve the similar
functionality if needed.
- Fixed error in msAddImageSymbol() where a symbol's imagepath was not
set (bug 1832).
- Added INCLUDE capability in mapfile parser (bug 279)
- Revert changes to mapzoom.i that swapped miny and maxy (Bug 1817).
- MapScript (swig) creation of an outputFormatObj will now set the inmapfile
flag so that it gets written out to saved maps by default (Bug 1816).
- Converted GEOS support to use the GEOS C-API (versiopn 2.2.2 and higher).
Wrapped remaining relevant GEOS functionality and exposed via SWIG-based
- If a layer has wms_timedefault metadata, make sure it is applied even
if there is no TIME= item in the url. (Bug 1810)
- Support for GEOS/ICONV/XML2 use flags in Java Makefile.in (related to
- Missing GEOS support caused heap corruption using shapeObj C# on linux
- Fix time filter propogation for raster layers to their tileindex layers.
New code in maprasterquery.c (bug 1809)
- Added logic to collect LD_SHARED even if PHP not requested in configure.
- Fix problems with msio/rfc16 stuff on windows. Don't depend on comparing
function pointers or "stdio" handles. (mapio.c, mapio.h, msio.i)
- Support WMC Min/Max scale in write mode (bug 1581)
- Fixed leak of shapefile handles (shp/shx/dbf) on tiled layers (bug 1802)
- Added webObj constructor and destructor to swig interface with
calls to initWeb and freeWeb (bug 1798).
- mapows.c: ensure msOWSDispatch() is always available even if there are
no services to dispatch. This makes mapscript binding easier.
- FLTAddToLayerResultCache wasn't properly closing the layer after it
was done with it.
- Added ability to encrypt tokens (passwords, etc.) in database connection
strings (MS-RFC-18, bug 1792)
- Fixed zoomRectangle in mapscript: miny and maxy were swapped, making it
impossible to zoom by rect; also the error message was referring to the
wrong rect. There were no open issues on bugzilla. Reverted because
- Implementation of RFC 16 mapio services (bug 1788).
- Use lp->layerinfo for OGR connections (instead of ogrlayerinfo) (bug 331)
- Support treating POLYGONZ as MS_SHAPE_POLYGON. (bug 1784)
- Complete support for international languages in Java Mapscript
- Output feature id as @fid instead of @gml:id in WFS 1.0.0 / GML 2.1.2
GetFeature requests (bug 1759)
- Allow use of wms/ows_include_items and wms/ows_exclude_items to control
which items to output in text/plain GetFeatureInfo. Making the behavior
of this INFO_FORMAT consistent with the new behavior of GML
output introduced in v4.8. (bug 1761)
IMPORTANT NOTE: With this change if the *_include_items metadata
is not specified for a given layer then no items are output for that
(previous behavior was to always all items by default in text/plain)
- Make sure mappostgis.c closes MYCURSOR in layer close function so that
CLOSE_CONNECTION=DEFER works properly. (bug 1757)
- Support large (>2GB) raster files relative to SHAPEPATH. (bug 1748)
- Set User-Agent in HTTP headers of client WMS/WFS connections (bug 1749)
- Detection of os-dependent Java headers for Java mapscript (bug 1209)
- Preventing to take ownership of the memory when constructing objects
with parent objects using C# mapscript (causing nullreference
exception, Bug 1743)
- [SWF] Adding format option to turn off loading movies automatically
- Fixed FP exception in mapgd.c when pixmap symbol 'sizey' not set (bug
- Added config file for mapping the library file so the DllImport
is looking for to its unix equivalent (Bug 1596) Thanks to Scott
- Added /csharp/Makefile.in for supporting the creation of Makefile
during configuration with MONO/Linux (fix for bug 1595 and 1597)
- Added C# typemaps for char** and outputFormatObj**
- Support for dispatching multiple error messages to the MapScript
interface (bug 1704).
- Fix inter-tile "cracking" problem (Bug 1715).
- [OGC FILTER] Correct bug when generating an sql expression containing
- Allow a user to set a PROCESSING directive for an SDE layer to specify
using the attributes or spatial index first. (bug 1708).
- Cheap and easy way of fudging the boundary extents for msSDEWhichShapes
in the case where the rectangle is really a point (bug 1699).
- Implement QUANTIZE options for GD/PNG driver (Bug 1690, Bug 1701).
- [WMS] Publish the GetStyles operation in the capabilities document.
- [PHP_MAPSCRIPT] Add antialias parameter in the style object (Bug 1685)
- [WFS] : Add the possiblity to set wfs_maxfeatures to 0 (Bug 1678)
- [SLD] : set the default color on the style when using default settings
in PointSymbolizer. (bug 1681)
- Incorporate range coloring support for rasters (bug 1673)
- Fixed mapthread.c looking for the unix compiler symbol rather than just
testing whether or not _WIN32 is defined for the usage of posix threads
because unix is not defined on compilers like GCC 4.0.1 for OS X.
- Fixed the fuzzy brush support so that the transition between 1 pixel
and brushes is less obvious. The old code would not allow for a 3x3 fuzzy
brush to be built. (bug 1659)
- Added missing mapscript function msConnPoolCloseUnreferenced() (bug 1661)
We need to make conn. pooling handling transparent to mapscript users
so that they do not have to call this function once in a while, for
by creating an evictor thread.
- Added calls to msSetup/msCleanup() at MapScript load/unload time (bug
- Reorganized nmake.opt to be more focused on functionality groups rather
than the propensity of a section to be edited. Default values are now
all set to be pointed at the MapServer Build Kit, which can be obtained
- configure.in/Makefile.in: Use PROJ_LIBS instead of PROJ_LIB. PROJ_LIB
is sometimes defined in the environment, but points to $prefix/share/proj
not the proj link libraries.
- Update Web Map Context to 1.1.0, add the dimension support. (bug 1581)
- Support SLD body in context document. (bug 887)
- When generating an ogc filter for class regex expressions, use
the backslah as the default escape character (Bug 1637)
- Add connectiontype initialization logic when the layer's virtual
table is initialized (Bug 1615)
- Added modulus operator to mapparser.y.
- Added new support for [item...] tag in CGI-based templates (bug 1636)
- Reverted behaviour to pre-1.61:
do not allow for use of the FILTERITEM attribute (bug 1629)
- Treat classindex as an int instead of a char in resultCacheMemberObj to
prevent problems with more than 128 classes (bug 1633)
- WMS : SLD / stretch images when using FE (Bug 1627)
- Add gml:lineStringMember in GML2 MultiLineString geometry (bug 1569).
- PHP : add shape->sontainsshape that uses geos lib (Bug 1623).
- Move gBYTE_ORDER inside the pg layerinfo structure to allow for
byte ordered connections (bug 1587).
- Fix the memory allocation bug in sdeShapeCopy (Bug 1606)
- Fixed OGR WKT support (Bug 1614).
- Added shapeObj::toWkt() and ms_shapeObjFromWkt() to PHP MapScript (bug
- Finished implementation of OGR Shape2WKT function (Bug 1614).
- Detect/add -DHAVE_VSNPRINTF in configure script and prevent systematic
buffer overflow in imagemap code when vsnprintf() not available (bug
- Default layer->project to MS_TRUE even if no projection is set, to allow
geotransforms (nonsquare pixels, etc) to be applied (bug 1645).
- Force stdin into binary mode on win32 when reading post bodies. (bug 1768)
More information about the mapserver-dev