root/tags/release-0.7.0/CHANGELOG

Revision 1616, 13.4 kB (checked in by dane, 6 months ago)

add missed vertical_alignment change in default behavior

Line 
1# $Id: CHANGELOG 776 2008-12-7 01:30:27Z dane $
2
3----------------
4Mapnik Changelog
5----------------
6 
7A simple log of core changes affecting Mapnik usage.
8
9Developers: Please commit along with changes.
10
11For a complete change history, see the SVN log.
12
13
14
15Mapnik 0.7.0 Release
16--------------------
17
18(Packaged from r1574)
19
20- Core: Fixed linking to external libagg (r1297,r1299)
21
22- Core: Completed full support for PPC (Big endian) architectures (r1352 -> r1357)
23
24- Gdal Plugin: Added support for Gdal overviews, enabling fast loading of > 1GB rasters (#54)
25
26    * Use the gdaladdo utility to add overviews to existing GDAL datasets
27
28- PostGIS: Added an optional 'geometry_table' parameter. The 'geometry_table' used by Mapnik to look up
29  metadata in the geometry_columns and calculate extents (when the 'geometry_field' and 'srid' parameters
30  are not supplied). If 'geometry_table' is not specified Mapnik will attempt to determine the name of the
31  table to query based on parsing the 'table' parameter, which may fail for complex queries with more than
32  one 'from' keyword. Using this parameter should allow for existing metadata and table indexes to be used
33  while opening the door to much more complicated subqueries being passed to the 'table' parameter without
34  failing (#260, #426).
35
36- PostGIS Plugin: Added optional 'geometry_field' and 'srid' parameters. If specified these will allow
37  Mapnik to skip several queries to try to determine these values dynamically, and can be helpful to avoid
38  possible query failures during metadata lookup with complex subqueries as discussed in #260 and #436, but
39  also solvable by specifying the 'geometry_table' parameter. (r1300,#376)
40
41- PostGIS: Added an optional 'extent_from_subquery' parameter that when true (while the 'extent' parameter is
42  not provided and 'estimate_extent' is false) will direct Mapnik to calculate the extent upon the exact table
43  or sql provided in the 'table' parameter. If a sub-select is used for the table parameter then this will,
44  in cases where the subquery limits results, provide a faster and more accurate layer extent. It will have
45  no effect if the 'table' parameter is simply an existing table. This parameter is false by default. (#456)
46
47- PostGIS Plugin: Added 'bbox' token substitution ability in sql query string. This opens the door for various
48  complex queries that may aggregate geometries to be kept fast by allowing proper placement of the bbox
49  query to be used by indexes. (#415)
50
51    * Pass the bbox token inside a subquery like: !bbox!
52
53    * e.g. (Select ST_Union(geom) as geom from table where ST_Intersects(geometry,!bbox!)) as map
54
55- PostGIS Plugin: Added 'scale_denominator' substitution ability in sql query string (#415/#465)
56
57    * Pass the scale_denominator token inside a subquery like: !scale_denominator!
58
59    * e.g. (Select * from table where field_value > !scale_denominator!) as map
60
61- PostGIS Plugin: Added support for quoted table names (r1454) (#393)
62
63- PostGIS: Add a 'persist_connection' option (default true), that when false will release
64  the idle psql connection after datasource goes out of scope (r1337) (#433,#434)
65
66- PostGIS: Added support for BigInt (int8) postgres type (384)
67
68- PostGIS Plugin: Throw and report errors if SQL execution fails (r1291) (#363, #242)
69
70- PostGIS Plugin: Fixed problem in conversion of long numbers to strings (r1302,1303)
71
72- PostGIS Plugin: Added missing support for BigInt(int8) postgres datatypes (r1250) (#384)
73
74- OGR Plugin: Added support for reading multipoint features (#458)
75
76- Shape Plugin: Fixed bug in file extension stripping (#413)
77
78- Shape Plugin: Fixed missing compiler flags that causes crashing on newer g++ versions (#436)
79
80- PNG: Fixed problem with garbled/striped png256 output along sharpe edges(#416,#445,#447,#202)
81
82- PNG: Added support for semitransparency in png256 output (#477,#202)
83
84- PolygonSymbolizer: Added 'gamma' attribute to allow for dilation of polygon edges - a solution
85  to gap artifacts or "ghost lines" between adjacent polygons and allows for slight sharpening of
86  the edges of non overlapping polygons. Accepts any values but 0-1 is the recommended range.
87   
88- TextSymbolizer: Large set of new attributes: 'text_convert', 'line_spacing', 'character_spacing',
89  'wrap_character', 'wrap_before', 'horizontal_alignment', 'justify_alignment', and 'opacity'.
90
91    * More details at changesets: r1254 and r1341
92
93- SheildSymbolizer: Added special new attributes: 'unlock_image', 'VERTEX' placement, 'no_text' and many
94  attributes previously only supported in the TextSymbolizer: 'allow_overlap', 'vertical_alignment',
95  'horizontal_alignment', 'justify_alignment', 'wrap_width', 'wrap_character', 'wrap_before', 'text_convert',
96  'line_spacing', 'character_spacing', and 'opacity'.
97
98    * More details at changeset r1341
99
100- XML: Added support for using CDATA with libxml2 parser (r1364)
101
102- XML: Fixed memory leak in libxml2 implementation (#473)
103
104- XML: Added function to serialize map to string, called 'mapnik.save_map_to_string()' (#396)
105
106- XML: Added parameter to <Map> called 'minimum_version' to allow for enforcing the minimum Mapnik version
107  needed for XML features used in the mapfiles. Uses Major.Minor.Point syntax, for example
108  <Map minimum_version="0.6.1"> would throw an error if the user is running Mapnik less than 0.6.1.
109
110- XML: Added support for relative paths when using entities and 'mapnik.load_map_from_string()' (#440)
111
112- XML: Made width and height optional for symbolizers using images (r1543)
113
114- XML: Ensured that default values for layers are not serialized in save_map() (r1366)
115
116- XML: Added missing serialization of PointSymbolizer 'opacity' and 'allow_overlap' attributes (r1358)
117
118- XML: Default text vertical_alignment now dependent on dy (#485, r1527)
119
120- Python: Exposed ability to write to Cairo formats using 'mapnik.render_to_file()' and without pycairo (#381)
121
122- Python: Fixed potential crash if pycairo support is enabled but python-cairo module is missing (#392)
123
124- Python: Added 'mapnik.mapnik_svn_revision()' function to svn revision of Mapnik was compiled at.
125
126- Python: Added 'mapnik.has_pycairo()' function to test for pycairo support (r1278) (#284)
127
128- Python: Added 'mapnik.register_plugins()' and 'mapnik.register_fonts()' functions (r1256)
129
130- Python: Pickling support for point_symbolizer (r1295) (#345)
131
132- Python: Ensured mapnik::config_errors now throw RuntimeError exception instead of UserWarning exception (#442)
133
134- Filters: Added support for '!=' as an alias to '<>' for not-equals filters (avoids &lt;&gt;) (r1326) (#427) 
135
136- SCons: Improved boost auto-detection (r1255,r1279)
137
138- SCons: Fixed support for JOBS=N and FAST=True to enable faster compiling (r1440)
139
140- SCons: Ensured that -h or --help will properly print help on custom Mapnik options before a user
141  has been able to properly run 'configure'. (r1514)
142
143- SCons: Added ability to link to custom icu library name using ICU_LIB_NAME (r1414)
144
145- SCons: Improved reliability of python linking on OSX (#380)
146
147- Fonts: Added unifont to auto-installed fonts, which is used by the OSM styles as a fallback font (r1328)
148
149
150
151Mapnik 0.6.1 Release
152--------------------
153
154(Packaged from r1247)
155
156- XML: Fixed serialization and parsing bugs related to handling of integers and Enums (#328,#353)
157
158- SCons: Added the ability to set the PKG_CONFIG_PATH env setting (#217)
159
160- SCons: Improved linking to only required libraries for libmapnik (#371)
161
162- Shape Plugin: Added compile time flag to allow disabling the use of memory mapped files (r1213) (#342)
163
164- Core: Improved support for PPC (Big endian) architectures (r1198 -> r1213)
165
166- Scons: Improved auto-detection of boost libs/headers (r1200) (#297)
167
168- Plugins: Exposed list of available/registered plugins (r1180) (#246)
169
170- SCons: Improve build support for SunCC (patches from River Tarnell) (r1168, r1169)
171
172- Python: Pickling support for text_symbolizer (r1164) (#345)
173
174- Python: Pickling support for proj_transform and view/coord_transform (r1163) (#345)
175
176- Python: Pickling support for parameters (r1162) (#345)
177
178- Python: Pickling support for stroke objects (r1161) (#345)
179
180- Python: Pickling support for line_symbolizer (r1160) (#345)
181
182- Python: Pickling support for projection objects (r1159) (#345)
183
184- Python: Pickling support for shield_symbolizer (r1158) (#345)
185
186- Python: Pickling support for polygon_symbolizer (r1157) (#345)
187
188- Python: Pickling support for query objects (r1156) (#345)
189
190- Python: Pickling support for pattern symbolizers (r1155) (#345)
191
192- Python: Pickling support for raster_symbolizer (r1154) (#345)
193
194- Python: Added 'mapnik.has_cairo()' function to test for cairo support (r1152) (#284)
195
196- Python: Exposed dash_array get method (r1151) (#317)
197
198- Python: Pickling support for Coord objects (#345)
199
200- GDAL Plugin: Added an experimental option to open files in 'shared mode' (r1143)
201
202- Python: Exposed RasterSymbolizer options in Python (r1139)
203
204- Plugins: Fixed support for non-file based sources in GDAL and OGR plugins (#336,#337)
205
206- Plugins: Formal inclusion of new plugin for Kismet server (r1127) (#293)
207
208- Python: Made access to features and featuresets more Pythonic (r1121) (#171,#280,#283)
209
210- XML: Ensured relative paths in XML are interpreted relative to XML file location (r1124) (#326)
211
212- XML: Added ability to serialize all default symbolizer values by passing third argument to save_map(m,'file.xml',True)(r1117) (#327)
213
214- Core: Added support for alpha transparency when writing to png256 (patch from Marcin Rudowski) (#202)
215
216- SCons: Ensured ABI compatibility information is embedded in libmapnik.dylib on Mac OS X (#322)
217
218- SCons: Ensured that the full 'install_name' path would be added to libmapnik.dylib on Mac OS X (#374)
219
220- Tests: Added testing framework in Python using nose (r1101-r1105)
221
222- Raster Plugin: Added a tile/bbox-based read policy for large (rasters width * height > 1024*1024 will be loaded in chunks) (r1089)
223
224- OGCServer: Made lxml dependency optional (r1085) (#303)
225
226- Rasters: Handle rounding to allow better alignment of raster layers (r1079) (#295)
227
228- AGG Renderer: Added option to control output JPEG quality (r1078) (#198)
229
230- Plugins: Fixed segfault in OGR Plugin with empty geometries (r1074) (#292)
231
232
233
234Mapnik 0.6.0 Release
235--------------------
236
237(Packaged from r1066)
238
239- Python: Added support for aspect_fix_mode (r1013)
240
241- OGCServer Fixed axis-ordering for WMS 1.3.0 request (r1051) (#241)
242
243- Plugins: Added option to all plugins to support using a 'base' path argument (r1042)
244
245- Symbolizers: RasterSymbolizer now support composing modes for hillshading (r1027)
246
247- SCons: Added options to build the rundemo and pgsql2sqlite tools (r989)
248
249- OGCServer: Added content-length output (r986)
250
251- SCons: Replaced LIBS/INCLUDES options for postgres and gdal with pg_config and gdal-config (r977)
252
253- SCons: Created an optional configure stage (r973)
254
255- Python: Added further pickling/copy support to Map, Layers, Datasources, Styles,and Rules (r907,r913,r921)
256
257- OGCServer: Added support for load_map(), allowing reading of XML styles and layers (r901)
258
259- OGCServer: Enabled friendly html output when in debug mode (debug=1 in ogcserver.conf) (r899)
260
261- Plugins: Added Sqlite driver for reading sqlite databases (r881)
262
263- Python: Exposed a number of properties for the Text Symbolizer (r869)
264
265- Plugins: PostGIS plugin now accepts multi-line queries (r862)
266
267- Filter parsing: Allow numbers in the filter field name.
268  This allows for shapefiles with columns like '1970'.
269
270- Plugins: Added OGR driver for reading all OGR supported formats (kunitoki) (r836) (#170)
271
272- XML: Added serialization of Fontsets (r807)
273
274- XML: Added support for reading xml from a string (r806)
275
276- C++: renamed mapnik::Color to mapnik::color (r796)
277
278- Python: Made available the scale_denominator property from the map in c++ and python (r794)
279
280- Python: Added ability to resize map and clear all layers and styles from python (r793)
281
282- Python: Exposed Proj to/from transformation for projected coordinate systems (r792,r822) (#117)
283
284- Memory Datasource: Added support for dynamically adding Points to map using Point Datasource (r790)
285
286- XML: Added xml serialization for abstract, title, minzoom, maxzoom, and queryable attributes (r787)
287
288- Core: Transformation is now skipped if srs values match exactly (r777)
289
290- Symbolizers: 'min_distance' now honored for POINT placement using Text Symbolizer (r771)
291
292- Plugins: PostGIS plugin now accepts a geometry_field,record_limit, cursor_size options (r769,r872)
293
294- Python: Added ability to transform as a method on Coord and Envelope objects (r764)
295
296- Python: Added docstrings to the Layer object (r763)
297
298- Plugins: Loosened the type checking in Shapefile Plugin dbf reader (r762)
299
300- Fonts: Added support for Right-to-left Hebrew text (r749)
301
302- Core: Added a Map buffer parameter - helps to avoid cut labels at tile edges (r744)
303
304- Symbolizers: Added opacity support to Point Symbolizer (r743)
305
306- Symbolizers: Added support of using Points with Shield Symbolizer (r741)
307
308- Plugins: PostGIS plugin now accepts alternate schemas (r773)
309
310- Fonts: Added support for fallback fonts (r704)
311
312- Cairo: Cairo support exposed in Python (r666)
313
314- Plugins: Added OSM plugin for reading directly from OSM data (r663)
315
316- Filters: Added support for boolean expressions (r660)
317
318- Python: Added ability to open Image32 files (r652)
319
320- Cairo: Cairo rendering support added (r656)
321
322- Core: Added unicode support based on ICU (r650)
323
324- Core: Added support for single and multi threaded variants of Mapnik (r632,r634)
325
326- Plugins: Use memory mapped files for reading shape file (r628)
327
328- Core: Use streams to write images (i/o refactor) (r628) (#15)
Note: See TracBrowser for help on using the browser.