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