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