diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ab3c2306..50e982d7e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,12 @@ For a complete change history, see the SVN log. ## Mapnik 2.1.0 +- PostGIS: Added 'simplify_geometries' option - will trigger ST_Simplify on geometries before returning to Mapnik (#1179) + +- Improved error feedback for invalid values passed to map.query_point + +- Fixed rendering of thin svg lines (#1129) + - Improved logging/debugging system with release logs and file redirection (#937 and partially #986, #467) - GDAL: allow setting nodata value on the fly (will override value if nodata is set in data) (#1161) diff --git a/Makefile b/Makefile index cd956cedc..47761360c 100755 --- a/Makefile +++ b/Makefile @@ -18,7 +18,7 @@ uninstall: python scons/scons.py uninstall test: - @echo "*** Running visual tests…" + @echo "*** Running visual tests..." @python tests/visual_tests/test.py -q @echo "*** Running C++ tests..." @for FILE in tests/cpp_tests/*-bin; do \ diff --git a/SConstruct b/SConstruct index 1f906e044..d7c15f752 100644 --- a/SConstruct +++ b/SConstruct @@ -96,7 +96,7 @@ PLUGINS = { # plugins with external dependencies 'rasterlite': {'default':False,'path':'RASTERLITE','inc':['sqlite3.h','rasterlite.h'],'lib':'rasterlite','lang':'C'}, # todo: osm plugin does also depend on libxml2 (but there is a separate check for that) - 'osm': {'default':False,'path':None,'inc':'curl/curl.h','lib':'curl','lang':'C'}, + 'osm': {'default':True,'path':None,'inc':'curl/curl.h','lib':'curl','lang':'C'}, # plugins without external dependencies requiring CheckLibWithHeader... 'shape': {'default':True,'path':None,'inc':None,'lib':None,'lang':'C++'}, @@ -242,7 +242,6 @@ else: LIBDIR_SCHEMA='lib' - def pretty_dep(dep): pretty = pretty_dep_names.get(dep) if pretty: diff --git a/bindings/python/mapnik_logger.cpp b/bindings/python/mapnik_logger.cpp index 7ce25227a..257c6e510 100644 --- a/bindings/python/mapnik_logger.cpp +++ b/bindings/python/mapnik_logger.cpp @@ -23,6 +23,7 @@ #include #include #include +#include "mapnik_enumeration.hpp" void export_logger() { @@ -37,6 +38,15 @@ void export_logger() .staticmethod("instance") ; + enum_("severity_type") + .value("Info", logger::info) + .value("Debug", logger::debug) + .value("Warn", logger::warn) + .value("Error", logger::error) + .value("Fatal", logger::fatal) + .value("None", logger::none) + ; + class_ >, boost::noncopyable>("logger",no_init) .def_readonly("Info", logger::info) diff --git a/bindings/python/mapnik_markers_symbolizer.cpp b/bindings/python/mapnik_markers_symbolizer.cpp index d6388c6f7..aad93b7f7 100644 --- a/bindings/python/mapnik_markers_symbolizer.cpp +++ b/bindings/python/mapnik_markers_symbolizer.cpp @@ -124,5 +124,15 @@ void export_markers_symbolizer() &markers_symbolizer::get_height, &markers_symbolizer::set_height, "Set/get the marker height") + .add_property("fill", + make_function(&markers_symbolizer::get_fill, + return_value_policy()), + &markers_symbolizer::set_fill, + "Set/get the marker fill color") + .add_property("stroke", + make_function(&markers_symbolizer::get_stroke, + return_value_policy()), + &markers_symbolizer::set_stroke, + "Set/get the marker stroke (outline)") ; } diff --git a/bindings/python/mapnik_style.cpp b/bindings/python/mapnik_style.cpp index 9437e87d5..c5a70dbad 100644 --- a/bindings/python/mapnik_style.cpp +++ b/bindings/python/mapnik_style.cpp @@ -102,7 +102,7 @@ void export_style() .add_property("filter_mode", &feature_type_style::get_filter_mode, &feature_type_style::set_filter_mode, - "Set/get the placement of the label") + "Set/get the filter mode of the style") ; } diff --git a/include/mapnik/debug.hpp b/include/mapnik/debug.hpp index 67e9007c5..874c162b5 100644 --- a/include/mapnik/debug.hpp +++ b/include/mapnik/debug.hpp @@ -44,6 +44,10 @@ namespace mapnik { + /* + Global logger class that holds the configuration of severity, format + and file/console redirection. + */ class MAPNIK_DECL logger : public singleton, private boost::noncopyable @@ -153,6 +157,9 @@ namespace mapnik { namespace detail { + /* + Default sink, it regulates access to clog + */ template class clog_sink { @@ -170,6 +177,12 @@ namespace mapnik { }; + /* + Base log class, should not log anything when no MAPNIK_LOG is defined + + This is used for info/debug/warn reporting that should not output + anything when not compiling for speed. + */ template