Skip to content

Releases: osm-search/Nominatim

Version 4.5.0

12 Sep 12:15
Compare
Choose a tag to compare

This release transforms Nominatim into a pure Python package and makes it available on pypi.org. Installing Nominatim now becomes as easy as pip install nominatim-db nominatim-api. The current release still supports the old way of building the source using cmake, so that you can still use your existing deployment code. Installation via pip will become the only mode of operation in the upcoming version 5.0. So please adapt your installation soon.

Other new features include the possibility to customize API output for web installations, a streamlined file format for wiki importances, improvements to ordering results according to how well address parts match and a more consistent assignment of countries in disputed areas.

A more complete list of changes can be found in the Changelog.

Updating from any version 4.x.x to the new release is straightforward. Please follow the instructions from the migration guide. Updating from older versions is possible but not recommended. Please note that the migration to 4.3.0 requires building a new index needed by the frontend. It is therefore not recommended to migrate while a machine is in active use.

This release marks the transition to the upcoming release 5.0. The following features are now deprecated and will be removed in the next release:

  • PHP frontend. Please switch to the newer Python frontend instead.
  • Legacy tokenizer. If your database still uses this tokenizer, you need to reimport using the ICU tokenizer
  • Installation via CMake. Switch to using pip install instead.
  • Bundeling of osm2pgsql. Use a stock osm2pgsql version 1.8 or higher. Ubuntu 24.04 and Debian >= 11 have appropriate packages. The packages of older Ubuntu version are too old and you need to compile a newer osm2pgsql from source.

This is also the last release to support PostgreSQL 9.6 and 10 as well as Postgis 2.x.

Version 4.4.1

20 Aug 15:15
Compare
Choose a tag to compare

This is a bug-fix release which fixes two issues with the update process:

  • Nominatim will no longer propagate changes around overly long ways. The ways will still be imported but no longer hold up the update process.
  • House numbers in address interpolations are restricted to a range of 0-999999. All other house numbers are silently ignored when building interpolations. This fixes an error where overly large house numbers result in a out-of-range error in Postgresql.

The release also resolves an Python module import error that appeared when SQLAlchemy 1.4 was installed together with Psycopg 3.

A more complete list of changes can be found in the Changelog.

Updating from any version 4.x.x to the new release is straightforward. Please follow the instructions from the migration guide. Updating from older versions is possible but not recommended. Please note that the migration to 4.3.0 requires building a new index needed by the frontend. It is therefore not recommended to migrate while a machine is in active use.

Version 4.4.0

07 Mar 15:34
Compare
Choose a tag to compare

This release brings many bug fixes and performance improvements for the new Python frontend introduced in the last version. It can now be considered stable and has become the frontend recommended to be used for new installations. You find deployment guides in the documentation.

A new feature in this release is experimental support for exporting a Nominatim database to SQLite. The SQLite database can then be used with the new Python frontend or when using the Nominatim library. For more information about this, watch the talk at SotM-EU 2023 or read the blog posts.

A more complete list of changes can be found in the Changelog. Many thanks to the external contributors @robbe-haesendonck (for imports without superuser rights), @lujoh (for a command for cleaning deleted relations) and @pawel-wroniszewski (for fixing postcode validation).

Updating from any version 4.x.x to the new release is straightforward. Please follow the instructions from the migration guide. Updating from older versions is possible but not recommended. Please note that the migration to 4.3.0 requires building a new index needed by the frontend. It is therefore not recommended to migrate while a machine is in active use.

Version 4.3.2

17 Nov 16:41
Compare
Choose a tag to compare

This is a bug fix release which resolves a low-level security issue in the CLI tool, where a SQL injection is possible with the nominatim admin --collect-os-info command. It also fixes the postcode output for addresses near boundaries in the PHP frontend and brings some smaller improvements to the Python frontend.

A more complete list of changes can be found in the Changelog.

Updating from any version between 3.6.x and 4.3.x to the new release is straightforward. Please follow the instructions from the migration guide. Updating from older versions is possible but not recommended. Please note that the migration to 4.3.0 requires building a new index needed by the frontend. It is therefore not recommended to migrate while a machine is in active use.

Version 4.2.4

17 Nov 16:36
Compare
Choose a tag to compare

This is a bug fix release, resolving the following issues:

  • low-level security issue in the CLI tool, where a SQL injection is possible with the nominatim admin --collect-os-info command
  • breaking change in the interpretation of parameters to the ST_Project function in PostGIS 3.4.

Users of the 4.2 release series are advised to update to this latest release. Note: when updating from versions <= 4.2.2, make sure you read the migration instructions.

Version 4.3.1

04 Oct 19:30
Compare
Choose a tag to compare

This is a minor bug fix release. It fixes a regression in the nominatim admin --warm command where the --reverse-only and --search-only parameters got switched.

This release also reintroduces result reranking according to how well results match the query to the experimental Python frontend.

Version 4.3.0

07 Sep 09:25
Compare
Choose a tag to compare

This release brings a completely new frontend for Nominatim. It has been rewritten from scratch in Python. An improved search algorithm allows more flexibility in ranking search results. The code is also more modular, so that it will be easier to customize Nominatim. The frontend is also exposed as a Python library, so that it is no longer necessary to set up a web server when using a local installation. The Python frontend is currently still marked as experimental given that this is very new code. It is still very stable and already used in production on https://nominatim.openstreetmap.org. So try it out.

With this release, Nominatim will use the osm2pgsql flex output per default for the OSM data input. If you use one of the default styles, the transition will be automatic. If you are working with custom style, you need to change to the flex lua format soon. The former osm2pgsql gazetteer output is now deprecated and support will be removed completely in version 5.0.

This release fixes a compatibility issue with the new PostGIS 3.4 release. If you plan to use PostGIS 3.4 or later, you must update to this latest release or Nominatim's address lookup tables will be corrupted.

A minimum version of 3.7 for Python and 7.3 for PHP is now required.

A more complete list of changes can be found in the Changelog.

Updating from any version between 3.6.x and 4.2.x to the new release is straightforward. Please follow the instructions from the migration guide. Updating from older versions is possible but not recommended. Please note that the migration to 4.3.0 requires building a new index needed by the frontend. It is therefore not recommended to migrate while a machine is in active use.

Version 4.2.3

11 Apr 14:39
Compare
Choose a tag to compare

This is a bug fix release which fixes a fatal error which may be seen during updates when updating interpolations, see #3022. It also fixes handling of changefiles imported via nominatim add-data.

A complete list of changes can be found in the Changelog.

Updating from any version between 3.6.x and 4.2.x to the new release is straightforward. Please follow the instructions from the migration guide. Updating from older versions is possible but not recommended. Note: when updating from 4.2.x, you need to run nominatim refresh --functions after the upgrade.

Version 4.2.2

22 Mar 19:55
Compare
Choose a tag to compare

This release fixes some bugs with the Nominatim CLI tool and the reverse API and adds small improvements to the database processing.

The release also extends support for the new Lua flex-style import scripts. There are now style implementations for all the standard styles of Nominatim available, which can be used as a base for customization. Please note that the changes are incompatible with the lua scripts from 4.2.1. If you have used older scripts, copy flex-base.lua into your project directory before upgrading.

A more complete list of changes can be found in the Changelog.

Updating from any version between 3.6.x and 4.1.x to the new release is straightforward. Please follow the instructions from the migration guide. Updating from older versions is possible but not recommended.

Version 4.2.1

20 Feb 19:23
Compare
Choose a tag to compare

This is a bug fix release which fixes a potential XSS vulnerability in the HTML debug view.

All installations using 4.2.x should update to this release. There are no changes to the database necessary. Simply download and compile the new code.