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