Skip to content

Commit ee8915f

Browse files
committed
prepare 5.0.0 release
1 parent 5475bf7 commit ee8915f

File tree

6 files changed

+66
-10
lines changed

6 files changed

+66
-10
lines changed

CONTRIBUTING.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,6 @@ Checklist for releases:
8787
* [ ] increase versions in
8888
* `src/nominatim_api/version.py`
8989
* `src/nominatim_db/version.py`
90-
* CMakeLists.txt
9190
* [ ] update `ChangeLog` (copy information from patch releases from release branch)
9291
* [ ] complete `docs/admin/Migration.md`
9392
* [ ] update EOL dates in `SECURITY.md`

ChangeLog

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,28 @@
1+
5.0.0
2+
* increase required versions for PostgreSQL (12+), PostGIS (3.0+)
3+
* remove installation via cmake and debundle osm2pgsql
4+
* remove deprecated PHP frontend
5+
* remove deprecated legacy tokenizer
6+
* add configurable pre-processing of queries
7+
* add query pre-processor to split up Japanese addresses
8+
* rewrite of osm2pgsql style implementation
9+
(also adds support for osm2pgsql-themepark)
10+
* reduce the number of SQL queries needed to complete a 'lookup' call
11+
* improve computation of centroid for lines with only two points
12+
* improve bbox output for postcode areas
13+
* improve result order by returning the largest object when other things are
14+
equal
15+
* add fallback for reverse geocoding to default country tables
16+
* exclude postcode areas from reverse geocoding
17+
* disable search endpoint when database is reverse-only (regression)
18+
* minor performance improvements to area split algorithm
19+
* switch table and index creation to use autocommit mode to avoid deadlocks
20+
* drop overly long ways during import
21+
* restrict automatic migrations to versions 4.3+
22+
* switch linting from pylint to flake8
23+
* switch tests to use a wikimedia test file in the new CSV style
24+
* various fixes and improvements to documentation
25+
126
4.5.0
227
* allow building Nominatim as a pip package
328
* make osm2pgsql building optional

SECURITY.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ versions.
99

1010
| Version | End of support for security updates |
1111
| ------- | ----------------------------------- |
12+
| 5.0.x | 2027-02-06
1213
| 4.5.x | 2026-09-12 |
1314
| 4.4.x | 2026-03-07 |
1415
| 4.3.x | 2025-09-07 |
15-
| 4.2.x | 2024-11-24 |
1616

1717
## Reporting a Vulnerability
1818

docs/admin/Migration.md

Lines changed: 38 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,15 @@ the following steps:
99
* Update the frontend: `pip install -U nominatim-api`
1010
* (optionally) Restart updates
1111

12-
If you are still using CMake for the installation of Nominatim, then you
13-
need to update the software in one step before migrating the database.
14-
It is not recommended to do this while the machine is serving requests.
15-
1612
Below you find additional migrations and hints about other structural and
1713
breaking changes. **Please read them before running the migration.**
1814

1915
!!! note
2016
If you are migrating from a version <4.3, you need to install 4.3
21-
first and migrate to 4.3 first. Then you can migrate to the current
17+
and migrate to 4.3 first. Then you can migrate to the current
2218
version. It is strongly recommended to do a reimport instead.
2319

24-
## 4.5.0 -> master
20+
## 4.5.0 -> 5.0.0
2521

2622
### PHP frontend removed
2723

@@ -33,6 +29,42 @@ needed. It currently omits a warning and does otherwise nothing. It will be
3329
removed in later versions of Nominatim. So make sure you remove it from your
3430
scripts.
3531

32+
### CMake building removed
33+
34+
Nominatim can now only be installed via pip. Please follow the installation
35+
instructions for the current version to change to pip.
36+
37+
### osm2pgsql no longer vendored in
38+
39+
Nominatim no longer ships its own version of osm2pgsql. Please install a
40+
stock version of osm2pgsql from your distribution. See the
41+
[installation instruction for osm2pgsql](https://osm2pgsql.org/doc/install.html)
42+
for details. A minimum version of 1.8 is required. The current stable versions
43+
of Ubuntu and Debian already ship with an appropriate versions. For older
44+
installation, you may have to compile a newer osm2pgsql yourself.
45+
46+
### Legacy tokenizer removed
47+
48+
The `legacy` tokenizer is no longer enabled. This tokenizer has been superseded
49+
by the `ICU` tokenizer a long time ago. In the unlikely case that your database
50+
still uses the `legacy` tokenizer, you must reimport your database.
51+
52+
### osm2pgsql style overhauled
53+
54+
There are some fundamental changes to how customized osm2pgsql styles should
55+
be written. The changes are mostly backwards compatible, i.e. custom styles
56+
should still work with the new implementation. The only exception is a
57+
customization of the `process_tags()` function. This function is no longer
58+
considered public and neither are the helper functions used in it.
59+
They currently still work but will be removed at some point. If you have
60+
been making changes to `process_tags`, please review your style and try
61+
to switch to the new convenience functions.
62+
63+
For more information on the changes, see the
64+
[pull request](https://github.com/osm-search/Nominatim/pull/3615)
65+
and read the new
66+
[customization documentation](https://nominatim.org/release-docs/latest/customize/Import-Styles/).
67+
3668
## 4.4.0 -> 4.5.0
3769

3870
### New structure for Python packages

src/nominatim_api/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@
88
Version information for the Nominatim API.
99
"""
1010

11-
NOMINATIM_API_VERSION = '4.5.0'
11+
NOMINATIM_API_VERSION = '5.0.0'

src/nominatim_db/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ def parse_version(version: str) -> NominatimVersion:
5555
return NominatimVersion(*[int(x) for x in parts[:2] + parts[2].split('-')])
5656

5757

58-
NOMINATIM_VERSION = parse_version('4.5.0-0')
58+
NOMINATIM_VERSION = parse_version('5.0.0-0')
5959

6060
POSTGRESQL_REQUIRED_VERSION = (12, 0)
6161
POSTGIS_REQUIRED_VERSION = (3, 0)

0 commit comments

Comments
 (0)