]> git.openstreetmap.org Git - nominatim.git/blob - ChangeLog
prepare 4.2.3 release
[nominatim.git] / ChangeLog
1 4.2.3
2
3  * fix deletion handling for 'nominatim add-data'
4  * adapt place_force_delete() to new deletion handling
5  * flex style: avoid dropping of postcode areas
6  * fix update errors on address interpolation handling
7
8 4.2.2
9
10  * extend flex-style library to fully support all default styles
11  * fix handling of Hebrew aleph
12  * do not assign postcodes to rivers
13  * fix string matching in PHP code
14  * update osm2pgsql (various updates to flex)
15  * fix slow query when deleting places on update
16  * fix CLI details query
17  * fix recalculation of importance values
18  * fix polygon simplification in reverse results
19  * add class/type information to reverse geocodejson result
20  * minor improvements to default tokenizer configuration
21  * various smaller fixes to documentation
22
23 4.2.1
24
25  * fix XSS vulnerability in debug view
26
27 4.2.0
28
29  * add experimental support for osm2pgsql flex style
30  * introduce secondary importance value to be retrieved from a raster data file
31    (currently still unused, to replace address importance, thanks to @tareqpi)
32  * add new report tool `nominatim admin --collect-os-info`
33    (thanks @micahcochran, @tareqpi)
34  * reorganise index to improve lookup performance and size
35  * run index creation after import in parallel
36  * run ANALYZE more selectively to speed up continuation of indexing
37  * fix crash on update when addr:interpolation receives an illegal value
38  * fix minimum number of retrieved results to be at least 10
39  * fix search for combinations of special term + name (e.g Hotel Bellevue)
40  * do not return interpolations without a parent street on reverse search
41  * improve invalidation of linked places on updates
42  * fix address parsing for interpolation lines
43  * make sure socket timeouts are respected during replication
44    (working around a bug in some versions of pyosmium)
45  * update bundled osm2pgsql to 1.7.1
46  * add support for PostgreSQL 15
47  * typing fixes to work with latest type annotations from typeshed
48  * smaller improvements to documentation (thanks to @mausch)
49
50 4.1.1
51
52  * fix XSS vulnerability in debug view
53
54 4.1.0
55
56  * switch to ICU tokenizer as default
57  * add housenumber normalization and support optional spaces during search
58  * add postcode format checking and support optional spaces during search
59  * add function for cleaning housenumbers in word table
60  * add updates/deletion of country names imported from OSM
61  * linked places no longer overwrite names from a place permanently
62  * move default country name configuration into yaml file (thanks @tareqpi)
63  * more compact layout for interpolation and TIGER tables
64  * introduce mutations to ICU tokenizer (used for German umlauts)
65  * support reinitializing a full project directory with refresh --website
66  * fix various issues with linked places on updates
67  * add support for external sanitizers and token analyzers
68  * add CLI commands for forced indexing
69  * add CLI command for version report
70  * add offline import mode
71  * change geocodejson to return a feature class in the 'type' field
72  * add ISO3166-2 to address output (thanks @I70l0teN4ik)
73  * improve parsing and matching of addr: tags
74  * support relations as street members of associatedStreet
75  * better ranking for address results from TIGER data
76  * adapt rank classification to changed tag usage in OSM
77  * update bundled osm2pgsql to 1.6.0
78  * add typing information to Python code
79  * improve unit test coverage
80  * reorganise and speed up code for BDD tests, drop support for scenes
81  * move PHP unit tests to PHP 9.5
82  * extensive typo fixes in documentation (thanks @woodpeck,@StephanGeorg,
83    @amandasaurus, @nslxndr, @stefkiourk, @Luflosi, @kianmeng)
84  * drop official support for installation on CentOS
85  * add installation instructions for Ubuntu 22.04
86  * add support for PHP8
87  * add setup instructions for updates and systemd
88  * drop support for PostgreSQL 9.5
89
90 4.0.2
91
92  * fix XSS vulnerability in debug view
93
94 4.0.1
95
96  * fix initialisation error in replication script
97  * ICU tokenizer: avoid any special characters in word tokens
98  * better error message when API php script does not exist
99  * fix quoting of house numbers in SQL queries
100  * small fixes and improvements in search query parsing
101  * add documentation for moving the database to a different machine
102
103 4.0.0
104
105  * refactor name token computation and introduce ICU tokenizer
106    * name processing now happens in the indexer outside the DB
107    * reorganizes abbreviation handling and moves it to the indexing phases
108    * adds preprocessing of names
109  * add country-specific ranking for Spain, Slovakia
110  * partially switch to using SP-GIST indexes
111  * better updating of dependent addresses for name changes in streets
112  * remove unused/broken tables for external housenumbers
113  * move external postcodes to CSV format and no longer save them in tables
114    (adds support for postcodes for arbitrary countries)
115  * remove postcode helper entries from placex (thanks @AntoJvlt)
116  * change required format for TIGER data to CSV
117  * move configuration of default languages from wiki into config file
118  * expect customized configuration files in project directory by default
119  * disable search API for reverse-only import (thanks @darkshredder)
120  * port most of maintenance/import code to Python and remove PHP utils
121  * add catch-up mode for replication
122  * add updating of special phrases (thanks @AntoJvlt)
123  * add support for special phrases in CSV files (thanks @AntoJvlt)
124  * switch to case-independent matching between place and boundary names
125  * remove disabling of reverse query parsing
126  * minor tweaks to search algorithm to avoid more false positives
127  * major overhaul of the administrator and developer documentation
128  * add security disclosure policy
129  * add testing of installation scripts via CI
130  * drop support for Python < 3.6 and Postgresql < 9.5
131
132 3.7.3
133
134  * fix XSS vulnerability in debug view
135
136 3.7.2
137
138  * fix database check for reverse-only imports
139  * do not error out in status API result when import date is missing
140  * add array_key_last function for PHP < 7.3 (thanks to @woodpeck)
141  * fix more url when server name is unknown (thanks to @mogita)
142  * commit changes to replication log table
143
144 3.7.1
145
146  * fix smaller issues with special phrases import (thanks @AntoJvlt)
147  * add index to speed up continued indexing during import
148  * fix index on location_property_tiger(parent_place_id) (thanks @changpingc)
149  * make sure Python code is backward-compatible with Python 3.5
150  * various documentation fixes
151
152 3.7.0
153
154  * switch to dotenv for configuration file
155  * introduce 'make install' (reorganising most of the code)
156  * introduce nominatim tool as replacement for various php scripts
157  * introduce project directories and allow multiple installations from same build
158  * clean up BDD tests: drop nose, reorganise step code
159  * simplify test database for API BDD tests and autoinstall database
160  * port most of the code for command-line tools to Python
161    (thanks to @darkshredder and @AntoJvlt)
162  * add tests for all tooling
163  * replace pyosmium-get-changes with custom internal implementation using
164    pyosmium
165  * improve search for queries with housenumber and partial terms
166  * add database versioning
167  * use jinja2 for preprocessing SQL files
168  * introduce automatic migrations
169  * reverse fix preference of interpolations over housenumbers
170  * parallelize indexing of postcodes
171  * add non-key indexes to speed up housenumber + street searches
172  * switch housenumber field in placex to save transliterated names
173
174 3.6.0
175
176  * add full support for searching by and displaying of addr:* tags
177  * improve address output for large-area objects
178  * better use of country names from OSM data for search and display
179  * better debug output for reverse call
180  * add support for addr:place links without an place equivalent in OSM
181  * improve finding postcodes with normalisation artefacts
182  * batch object to index for rank 30, avoiding a wrap-around of transaction
183    IDs in PostgreSQL
184  * introduce dynamic address rank computation for administrative boundaries
185    depending on linked objects and their place in the admin level hierarchy
186  * add country-specific address ranking for Indonesia, Russia, Belgium and
187    the Netherlands (thanks @hendrikmoree)
188  * make sure wikidata/wikipedia tags are imported for all styles
189  * make POIs searchable by name and housenumber (thanks @joy-yyd)
190  * reverse geocoding now ignores places without an address rank (rivers etc.)
191  * installation of a webserver is no longer mandatory, for development
192    use the php internal webserver via 'make serve
193  * reduce the influence of place nodes in addresses
194  * drop support for the unspecific is_in tag
195  * various minor tweaks to supplied styles
196  * move HTML web frontend into its own project
197  * move scripts for processing external data sources into separate directories
198  * introduce separate configuration for website (thanks @krahulreddy)
199  * update documentation, in particular, clean up development docs
200  * update osm2pgsql to 1.4.0
201
202 3.5.2
203
204  * ensure that wikipedia tags are imported for all styles
205  * reinstate verbosity for indexing during updates
206  * make house number reappear in display name on named POIs
207  * introduce batch processing in indexer to avoid transaction ID overrun
208  * increase splitting for large geometries to improve indexing speed
209  * remove deprecated get_magic_quotes_gpc() function
210  * make sure that all postcodes have an entry in word and are thus searchable
211  * remove use of ST_Covers in conjunction woth ST_Intersects,
212    causes bad query planning and slow updates in Postgis3
213  * update osm2pgsql
214
215 3.5.1
216
217  * disable jit and parallel processing in PostgreSQL for osm2pgsql
218  * update libosmium to 2.15.6 (fixes an issue with processing hanging
219    on large multipolygons)
220
221 3.5.0
222
223  * structured select on HTML search page
224  * new PHP Nominatim\Shell class to wrap shell escaping
225  * remove polygon parameter from all API calls
226  * improve handling of postcode areas
227  * reorganise place linking algorithm, now using wikidata tag as well
228  * remove linkees from search_name and larger_area tables
229  * introduce country-specific address ranks
230  * reorganise rank address computation
231  * cleanup of partition function
232  * improve parenting for large POIs
233  * add support for Postgresql 12 and Postgis 3
234  * add earlier cleanup when --drop is given, to reduce memory usage
235  * remove use of place_id in URLs
236  * replace C nominatim indexer with a simpler Python implementation
237  * split up the huge sql/functions.sql file
238  * move osm2pgsql tests to osm2pgsql
239  * add new extratags style which imports all tags from OSM
240  * add new script for checking the import after completion
241  * update osm2pgsql, reducing memory usage
242  * use new wikipedia importance and add processing of wikidata tags
243  * add search form for details page
244  * use ExtraDataPath for country_grid table
245  * remove short_name from list of names to be displayed
246  * split up CMakeFile, so that all parts can be built separately
247  * update installation instructions for CentOS and Ubuntu
248  * add script for importing/updating multiple country extracts
249  * various documentation improvements
250
251 3.4.2
252
253  * fix security bug in /details endpoint where user input was not
254    properly sanitized
255
256 3.4.1
257
258  * update osm2pgsql to fix hans during updates and lost address numbers
259    during updates
260
261 3.4.0
262
263  * increase required version for PostgreSQL(9.3), PostGIS(2.2) and PHP(7.0)
264  * better error reporting for out-of-memory errors
265  * exclude postcode ranges separated by colon from centre point calculation
266  * update osm2pgsql, better handling of imports without flatnode file
267  * switch to more efficient algorithm for word set computation
268  * use only boundries for country and state parts of addresses
269  * improve updates of addresses with housenumbers and interpolations
270  * remove country from place_addressline table and use country_code instead
271  * optimise indexes on search_name partition tables
272  * improve searching of attached streets for large objects like airports
273  * drop support for python 2
274  * new scripts for importing Wikidata for importance
275  * create and drop indexes concurrently to not clash with auto vacuum
276  * various documentation improvements
277
278
279 3.3.0
280
281  * zoom 17 in reverse now zooms in on minor streets
282  * fix use of postcode relations in address
283  * support for housenumber 0 on interpolations
284  * replace database abstraction DB with PDO and switch to using exceptions
285  * exclude line features at rank 30 from reverse geocoding
286  * remove self-reference and country from place_addressline
287  * make json output more readable (less escaping)
288  * update conversion scripts for postcodes
289  * scripts in utils/ are no longer executable (always use scripts in build dir)
290  * remove Natural Earth country fallback (OSM is complete enough)
291  * make rank assignments configurable
292  * allow accept languages with underscore
293  * new reverse-only import mode (without search index table)
294  * rely on boundaries only for states and countries
295  * update osm2pgsql, now using a configurable style
296  * provide multiple import styles
297  * improve search when house number and postcodes are dropped
298  * overhaul of setup code
299  * add support for PHPUnit 6
300  * update test database
301  * various documentation improvements
302
303 3.2.0
304
305  * complete rewrite of reverse search algorithm
306  * add new geojson and geocodejson output formats
307  * add simple export script to exprot addresses to CSV
308  * remove is_in terms from address computation
309  * remove unused search_name_country tables
310  * various smaller fixes to query parsing
311  * convert Tokens and token types to class types
312  * correctly handle update when boundary object type is changed
313  * improve debug output for /search endpoint
314  * update to latest osm2pgsql and leaflet.js
315  * overhaul of /details endpoint:
316      * new class parameter when using osmtype/osmid parameters
317      * permalink to instance-independent osmtype/osmid parameter format
318      * new json output format
319  * update CentOS vagrant machine to use SELinux
320  * add vagrant scripts for Ubuntu 18.04
321  * fix build process for BSD
322  * enable running the database on a different host than the setup scripts
323  * allow to configure use of custom PHP binaries (PHP_BIN)
324  * extensive coding style improvements to PHP code
325  * more PHP unit tests for new classes
326  * increase coverage for API tests
327  * add documentation for API
328
329 3.1.0
330
331  * rework postcode handling and introduce location_postcode table
332  * make setup less verbose and print a summary in the end
333  * setup: error out when web site user does not exist
334  * add more API tests to complete code coverage
335  * reinstate key-value amenity search (special term [key=value])
336  * fix detection of coordinates in query
337  * various smaller tweaks to ranking of search interpretations
338  * complete overhaul of PHP frontend code using OOP
339  * add address rank to details page
340  * update Tiger scripts for 2017 data and clean up unused code
341  * various bug fixes and improvements to UI
342  * improve reverse geocoding performance close to coasts
343  * more PHP style cleanup (quoting)
344  * allow unnamed road in reverse geocoding to avoid too far off results
345  * add function to recalculate counts for full-word search term
346  * add function to check if new updates are available
347  * update documentation and switch to mkdocs for generating HTML
348
349 3.0.1
350
351  * fix bug in geometry building algorithm in osm2pgsql
352  * fix typos in build instructions
353
354 3.0.0
355
356  * move to cmake build system
357  * various fixes to HTML output
358  * reverse endpoint now can return geometries
359  * add support for PHP7
360  * move to on-the-fly computation of interpolations
361  * improve handling of linked places (updating)
362  * improve test framework:
363     * replace lettuce with behave
364     * use smaller database for API tests
365  * drop support for postgres < 9.1, postgis < 2.0 and PHP < 5.4
366  * make external data use optional (useful for imports without US)
367  * detect postgres and postgis versions automatically
368  * clean up query logging and remove unused tables
369  * move installation documentation into this repo
370  * add self-documenting vagrant scripts
371  * remove --create-website, recommend to use website directory in build
372  * add accessor functions for URL parameters and improve erro checking
373  * remove IP blocking and rate-limiting code
374  * enable CI via travis
375  * reformatting for more consistent coding style
376  * make country search term creation part of setup
377  * update country names and country grid
378  * handle roads that cross boundaries better
379  * keep full information on address tags
380  * update to refactored osm2pgsql which use libosmium based types
381  * switch from osmosis to pyosmium for updates
382  * be more strict when matching against special search terms
383  * handle postcode entries with mutliple values correctly
384
385 2.5
386
387  * reverse geocoding includes looking up housenumbers from Tiger data
388  * added parameter to return simplified geometries
389  * new lookup call for getting address information for OSM objects
390  * new namedetails and extratags parameters that expose the name and extratags
391    fields of the placex table
392  * mobile website
393  * reverse web view
394
395 2.4
396
397  * drop support for postgres 8.4
398  * rewrite address interpolation
399  * switch to C++ version of osm2pgsql and rewrite tag filtering
400  * support for bridge:name and tunnel:name, man_made, junction
401  * drop way-node index (reduces database size by about 15%)
402  * add support for configuring tablespaces and webserver user
403  * better evaluation of search queries in right-to-left notation
404  * improve house number search for streets with many duplicate entries
405  * code cleanup (remove unused functions and tables)
406
407 2.3
408
409  * further improve ordering of results
410  * support for more lat/lon formats in search-as-reverse
411  * fix handling of GB postcodes
412  * new functional test suite
413  * support for waterway relations
414  * inherit postcodes from street to poi
415  * fix housenumber normalisation to find non-latin house numbers
416  * take viewbox into account for ordering of results
417  * pois may now inherit address tags from surrounding buildings
418  * improve what objects may participate in an address
419  * clean up handled class/type combinations to current OSM usage
420  * lots of bug fixes
421
422 2.2
423
424  * correct database rights for www-data
425  * add timestamps for update output
426  * load postgis via extension for postgis >= 2.0
427  * remove non-admin boundaries from addresses
428  * further improve ordering of results with same importance
429  * merge addr:postcode tags into object addresses
430  * include rank and importance in reverse geocode output
431  * replace ST_Line_Interpolate_Point with ST_LineInterpolatePoint
432   (for postgis >= 2.1)
433  * update osm2pgsql to latest version
434  * properly detect changes of admin_level
435  * remove landuses when name is removed
436  * smaller fixes
437
438 2.1
439
440  * update to openlayers 2.12 (now custom built)
441  * update fallback OSM boundaries
442  * add support for postgresql 9.2/9.3 and postgis 2.x
443  * add structured queries
444  * add options for polygon output in various formats
445    (geojson, svg, kml, postgis text)
446  * maintenance functions for deleting objects and updating regions
447    (plcae_force_update/place_force_delete)
448  * web view for polygons that need deleting
449  * rate limiting using memcache
450  * improve layout of details page
451  * add support for boundary:postal_code
452  * full CORS support
453  * improve parenting of POIs
454  * support for extract daily diffs from Geofabrik
455  * support for addresses without a street
456    (addr:place and conscription number house numbers)
457  * improve layout of word and search_name_* tables
458  * support for US ZIP+4 codes
459  * refactoring of front-end PHP code
460  * lots of smaller bug fixes
461
462 2.0.1
463
464  * delete outdated entries from location_area_country
465  * remove remaining uses of INTEGER, to allow node ids larger than 2^31