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