[MapProxy] New MapProxy 1.5.0rc1

Oliver Tonnhofer olt at omniscale.de
Thu Aug 15 05:42:09 PDT 2013

Hi all,

it's finally time to prepare the next MapProxy release. As usual we start with
a release candidate first.

The latest release is available at:

To update within you virtualenv:

$ pip install http://mapproxy.org/static/rel/MapProxy-1.6.0rc1.tar.gz

The current documentation is available at:

== New features ==

Some noteworthy improvements since 1.5.0 are:

=== New decorate image API ===

There is a new API to decorate or manipulate the images returned by MapProxy.
It allows you to apply image filters or to add watermarks.
The API is similar to the security API.

See: <http://mapproxy.org/docs/nightly/decorate_img.html>

=== New SQLite and Riak cache backends ===

There are two new cache backends. Riak is a distributed key-value store
that can be used to create high-available caches.
The new SQLite cache is similar to MBTiles, but it adds timestamps for
proper tile expiration and it uses one database file for each level.
This makes it easy to remove complete levels without needing to VACUUM
the database.

See: <http://mapproxy.org/docs/nightly/caches.html>

=== Improved image processing ===

MapProxy now supports Pillow the successor of PIL. Pillow contains
improvements in PNG encoding performance and support for alpha image
composition, which improves overlays of multiple transparent layers.

=== Usability improvements ===

There are multiple smaller changes that improve the overall usability
of MapProxy. The deployment documentation was updated and
`mapproxy-util create -t base-config` now creates a minimal MapProxy
configuration and a full configuration with nearly all available options.
Most configuration erros should now give a friendly error message instead
of a stack trace.

=== Other fixes and changes ===

There are many more change, improvements and changes. The complete list:


- new `sqlite` cache with timestamps and one DB for each zoom level
- new `riak` cache
- first dimension support for WMTS (cascaded only)
- support HTTP Digest Authentication for source requests
- remove_all option for seed cleanups
- use real alpha composite for merging layers with transparent
- new tile_lock_dir option to write tile locks outside of the cache dir
- new decorate image API
- new GLOBAL_WEBMERCATOR grid with origin:nw and EPSG:3857


- speed up configuration loading with tagged sources
- speed up seeding with sparse coverages and limited levels
  (e.g. only level 17-20)
- add required params to WMS URL in mapproxy-util wms-capabilities
- support for `@` and `:` in HTTP username and password
- try to load pyproj before using libproj.dll on Windows
- support for GDAL python module (osgeo.ogr) besides using gdal.so/dll
- files are now written atomical to support concurrent access
  to the same tile cache from different servers (e.g. via NFS)
- support for WMS 1.3.0 in mapproxy-util wms-capabilities
- support layer merge for 8bit PNGs
- support for OGR/GDAL 1.10
- show TMS root resource at /tms


- support requests>=1.0 for CouchDB cache
- HTTP_X_FORWARDED_HOST can be a list of hosts
- fixed KML for caches with origin: nw
- fixed 'I/O operation on closed file' errors
- fixed memory leak when reloading large configurations
- improve handling of mixed grids/formats when using caches as
  cache sources
- threading related crashes in coverage handling
- close OGR sources
- catch IOErrors when PIL/Pillow can't identify image file


- update example configuration (base-config)
- update deployment documentation
- update OpenLayers version in demo service
- use restful_template URL in WMTS demo
- update MANIFEST.in to prevent unnecessary warnings during installation
- accept Pillow as depencendy instead of PIL when already installed
- deprecate use_mapnik2 option


Oliver Tonnhofer    | Omniscale GmbH & Co KG    | http://omniscale.com
http://mapproxy.org | https://github.com/olt    | @oltonn

More information about the MapProxy mailing list