]> git.openstreetmap.org Git - nominatim.git/log
nominatim.git
21 months agoimprove scaffolding for API unit tests
Sarah Hoffmann [Wed, 1 Feb 2023 09:22:53 +0000 (10:22 +0100)]
improve scaffolding for API unit tests

Use the static table definition to create the test database.
Add helper function to simplify filling the tables.

21 months agoadd lookup() call to the library API
Sarah Hoffmann [Wed, 1 Feb 2023 08:56:33 +0000 (09:56 +0100)]
add lookup() call to the library API

Currently only looks places up in placex.

21 months agodocs: fix internal links
Sarah Hoffmann [Sat, 4 Feb 2023 20:21:23 +0000 (21:21 +0100)]
docs: fix internal links

Fixes #2968.

21 months agoMerge pull request #2963 from lonvia/add-sqlalchemy-schema
Sarah Hoffmann [Mon, 30 Jan 2023 10:17:22 +0000 (11:17 +0100)]
Merge pull request #2963 from lonvia/add-sqlalchemy-schema

Add table definitions for SQLAlchemy

21 months agoadd pytest-asyncio as a requirement for testing
Sarah Hoffmann [Sun, 29 Jan 2023 08:53:42 +0000 (09:53 +0100)]
add pytest-asyncio as a requirement for testing

21 months agoadd property cache for API
Sarah Hoffmann [Sat, 28 Jan 2023 21:24:36 +0000 (22:24 +0100)]
add property cache for API

This caches results from querying nominatim_properties.

21 months agoadapt annotations for SQLAlchemy 2.x
Sarah Hoffmann [Fri, 27 Jan 2023 20:53:53 +0000 (21:53 +0100)]
adapt annotations for SQLAlchemy 2.x

It is not possible to produce type annotations that work with both
versions 1.4 and 2.0. So keep to the principle of only supporting
newest versions when it comes to mypy. This means that some types
may have to be string quoted to not cause issues when running with
SQLAlchemy 1.4.

21 months agoadd new geoalchemy requirement
Sarah Hoffmann [Fri, 27 Jan 2023 08:15:06 +0000 (09:15 +0100)]
add new geoalchemy requirement

21 months agoadapt status to use SQLAlchemy tables
Sarah Hoffmann [Thu, 26 Jan 2023 16:55:46 +0000 (17:55 +0100)]
adapt status to use SQLAlchemy tables

21 months agoconvert StatusResult to a dataclass
Sarah Hoffmann [Thu, 26 Jan 2023 16:51:15 +0000 (17:51 +0100)]
convert StatusResult to a dataclass

This gives us nice str() functions.

21 months agoadd SQLAlchemy table schema for Nominatim tables
Sarah Hoffmann [Thu, 26 Jan 2023 16:36:11 +0000 (17:36 +0100)]
add SQLAlchemy table schema for Nominatim tables

Also defines an extended connection object that includes access to
the table definitions. Makes it easier to access the tables from
code that has been split off into separate modules.

22 months agoMerge pull request #2958 from lonvia/streaming-json-writer
Sarah Hoffmann [Wed, 25 Jan 2023 16:36:23 +0000 (17:36 +0100)]
Merge pull request #2958 from lonvia/streaming-json-writer

Introduce streaming json writer for JSON output

22 months agoadd streaming json writer for JSON output
Sarah Hoffmann [Wed, 25 Jan 2023 13:14:47 +0000 (14:14 +0100)]
add streaming json writer for JSON output

22 months agoMerge pull request #2957 from lonvia/reorganise-api-module
Sarah Hoffmann [Wed, 25 Jan 2023 08:29:31 +0000 (09:29 +0100)]
Merge pull request #2957 from lonvia/reorganise-api-module

Assorted improvements to the new api library module

22 months agoallow to add php-compatible endpoints
Sarah Hoffmann [Tue, 24 Jan 2023 20:36:45 +0000 (21:36 +0100)]
allow to add php-compatible endpoints

If the new setting NOMINATIM_SERVE_LEGACY_URLS is set, the servers
expose the endpoints also with the .php suffix to ensure backwards
compatibility.

22 months agoadd support for CORS headers
Sarah Hoffmann [Tue, 24 Jan 2023 20:26:32 +0000 (21:26 +0100)]
add support for CORS headers

Adds the additional dependency to sanic-cors for the Sanic server.

22 months agofactor out common server implementation code
Sarah Hoffmann [Tue, 24 Jan 2023 20:04:32 +0000 (21:04 +0100)]
factor out common server implementation code

Most of the server implementation of V1 API now resides in
api.v1.server_glue. The webframeworks only supply some glue code
which is independent to changes in the API code.

22 months agoreorganize code around result formatting
Sarah Hoffmann [Tue, 24 Jan 2023 16:20:51 +0000 (17:20 +0100)]
reorganize code around result formatting

Code is now organized by api version. So formatting has moved to
the api.v1 module. Instead of holding a separate ResultFormatter
object per result format, simply move the functions to the
formater collector and hand in the requested format as a parameter.
Thus reorganized, the api.v1 module can export three simple functions
for result formatting which in turn makes the code that uses
the formatters much simpler.

22 months agoreorganize api submodule
Sarah Hoffmann [Tue, 24 Jan 2023 12:28:04 +0000 (13:28 +0100)]
reorganize api submodule

Use a directory for the submodule where the __init__ file contains
the public API. This makes it easier to separate public interface
from the internal implementation.

22 months agoapi: delay setup of initial database connection
Sarah Hoffmann [Tue, 24 Jan 2023 09:56:22 +0000 (10:56 +0100)]
api: delay setup of initial database connection

Defer database setup until the first call to a function. Needs an
additional lock because the setup still needs to be done sequentially.

22 months agoMerge pull request #2955 from lonvia/fix-importance-refresh
Sarah Hoffmann [Mon, 23 Jan 2023 08:07:43 +0000 (09:07 +0100)]
Merge pull request #2955 from lonvia/fix-importance-refresh

Fix importance recalculation

22 months agoMerge pull request #2954 from lonvia/remove-comma-as-separator
Sarah Hoffmann [Mon, 23 Jan 2023 08:06:23 +0000 (09:06 +0100)]
Merge pull request #2954 from lonvia/remove-comma-as-separator

Remove comma as name separator

22 months agofix importance recalculation
Sarah Hoffmann [Sun, 22 Jan 2023 20:30:43 +0000 (21:30 +0100)]
fix importance recalculation

The signature of the compute_importance() function has changed.

22 months agoremove comma as name separator
Sarah Hoffmann [Sun, 22 Jan 2023 20:10:12 +0000 (21:10 +0100)]
remove comma as name separator

Commas are most of the time used as a part of a name, not to
separate multiple names.

See also #2950.

22 months agoexclude names ending in :wikipedia from indexing
Sarah Hoffmann [Sat, 21 Jan 2023 10:16:08 +0000 (11:16 +0100)]
exclude names ending in :wikipedia from indexing

The wikipedia prefix is used for referencing a wikipedia article
for the given tag, not the object, so not useful to search.

22 months agofix typo in argument to details CLI command
Sarah Hoffmann [Sat, 21 Jan 2023 09:44:10 +0000 (10:44 +0100)]
fix typo in argument to details CLI command

Fixes #2951.

22 months agoupdate Makefile in test directory
Sarah Hoffmann [Mon, 9 Jan 2023 19:49:33 +0000 (20:49 +0100)]
update Makefile in test directory

22 months agoMerge pull request #2940 from lonvia/remove-ubuntu-18-from-actions
Sarah Hoffmann [Thu, 5 Jan 2023 19:16:19 +0000 (20:16 +0100)]
Merge pull request #2940 from lonvia/remove-ubuntu-18-from-actions

Actions: use Ubuntu 20 image for testing old versions of dependent software

22 months agoincrease minimum required version of PHP to 7.3
Sarah Hoffmann [Thu, 5 Jan 2023 15:58:46 +0000 (16:58 +0100)]
increase minimum required version of PHP to 7.3

Other versions are not tested anymore.

22 months agoactions: move tests from Ubuntu 18 to 20
Sarah Hoffmann [Thu, 5 Jan 2023 14:35:03 +0000 (15:35 +0100)]
actions: move tests from Ubuntu 18 to 20

These are the tests that try to make sure old library version really
still work as expected. Increases PHP to 7.3 because 7.2 has errors.

22 months agodo not run osm2pgsql append with mutliple threads
Sarah Hoffmann [Thu, 5 Jan 2023 10:34:56 +0000 (11:34 +0100)]
do not run osm2pgsql append with mutliple threads

As the updates modify the placex table, there may be deadlocks
when different objects want to forward modifications to the same
place (for example because they are both linked to it).

22 months agoMerge pull request #2937 from lonvia/python-server-stub
Sarah Hoffmann [Tue, 3 Jan 2023 13:26:33 +0000 (14:26 +0100)]
Merge pull request #2937 from lonvia/python-server-stub

Scaffolding for new Python-based search frontend

22 months agoMerge pull request #2856 from t-tomek/patch-1
Sarah Hoffmann [Tue, 3 Jan 2023 09:58:50 +0000 (10:58 +0100)]
Merge pull request #2856 from t-tomek/patch-1

Update DB.php

22 months agono type checking on old Ubuntu 18
Sarah Hoffmann [Wed, 14 Dec 2022 20:24:02 +0000 (21:24 +0100)]
no type checking on old Ubuntu 18

22 months agoadd event handler for default connection settings
Sarah Hoffmann [Wed, 14 Dec 2022 19:31:46 +0000 (20:31 +0100)]
add event handler for default connection settings

22 months agoupdate versions for Python packages
Sarah Hoffmann [Wed, 14 Dec 2022 15:41:52 +0000 (16:41 +0100)]
update versions for Python packages

22 months agodrop official support for Ubuntu 18
Sarah Hoffmann [Wed, 14 Dec 2022 15:24:38 +0000 (16:24 +0100)]
drop official support for Ubuntu 18

22 months agodrop support for Python 3.6
Sarah Hoffmann [Wed, 14 Dec 2022 15:14:23 +0000 (16:14 +0100)]
drop support for Python 3.6

22 months agoupdate dependencies for Actions
Sarah Hoffmann [Tue, 13 Dec 2022 11:12:05 +0000 (12:12 +0100)]
update dependencies for Actions

22 months agoconvert version to named tuple
Sarah Hoffmann [Tue, 13 Dec 2022 09:36:19 +0000 (10:36 +0100)]
convert version to named tuple

Also return the new NominatimVersion rather than a string in the
status result.

22 months agofix error message for non-existing database
Sarah Hoffmann [Wed, 7 Dec 2022 19:05:24 +0000 (20:05 +0100)]
fix error message for non-existing database

22 months agoadd unit tests for new Python API
Sarah Hoffmann [Wed, 7 Dec 2022 18:47:46 +0000 (19:47 +0100)]
add unit tests for new Python API

22 months agodocs: extend dependency documentation
Sarah Hoffmann [Tue, 6 Dec 2022 11:00:39 +0000 (12:00 +0100)]
docs: extend dependency documentation

22 months agoextend BDD API tests to query via Python frameworks
Sarah Hoffmann [Tue, 6 Dec 2022 10:20:50 +0000 (11:20 +0100)]
extend BDD API tests to query via Python frameworks

A new config option ENGINE allows to choose between php and any of the
supported Python engines.

22 months agofix liniting issues and add type annotations
Sarah Hoffmann [Mon, 5 Dec 2022 15:16:18 +0000 (16:16 +0100)]
fix liniting issues and add type annotations

22 months agoadd support for starlette framework
Sarah Hoffmann [Mon, 5 Dec 2022 10:32:57 +0000 (11:32 +0100)]
add support for starlette framework

22 months agoadd support for falcon as server framework
Sarah Hoffmann [Fri, 2 Dec 2022 16:28:46 +0000 (17:28 +0100)]
add support for falcon as server framework

22 months agoadd sanic development server implementation
Sarah Hoffmann [Thu, 1 Dec 2022 16:58:22 +0000 (17:58 +0100)]
add sanic development server implementation

22 months agoimplement command line status call in Python
Sarah Hoffmann [Fri, 18 Nov 2022 15:11:31 +0000 (16:11 +0100)]
implement command line status call in Python

22 months agoMerge pull request #2936 from lonvia/fix-query-for-index-use
Sarah Hoffmann [Tue, 3 Jan 2023 08:56:03 +0000 (09:56 +0100)]
Merge pull request #2936 from lonvia/fix-query-for-index-use

Split query that deletes old objects from placex

22 months agosplit query that deletes old objects from placex
Sarah Hoffmann [Mon, 2 Jan 2023 16:25:38 +0000 (17:25 +0100)]
split query that deletes old objects from placex

placex only has partial indexes over OSM types, so the OSM type
needs to be hardcoded to ensure these indexes are used.

22 months agoMerge pull request #2932 from lonvia/rework-flex-framework
Sarah Hoffmann [Thu, 29 Dec 2022 16:23:38 +0000 (17:23 +0100)]
Merge pull request #2932 from lonvia/rework-flex-framework

Switch to osm2pgsql flex output

22 months agoUpdate DB.php
t-tomek [Tue, 27 Dec 2022 07:34:20 +0000 (08:34 +0100)]
Update DB.php

23 months agoremove old import styles
Sarah Hoffmann [Fri, 23 Dec 2022 18:29:07 +0000 (19:29 +0100)]
remove old import styles

23 months agobdd: recreate project directory for every run
Sarah Hoffmann [Fri, 23 Dec 2022 17:36:41 +0000 (18:36 +0100)]
bdd: recreate project directory for every run

23 months agoadd tests for examples in lua style documentation
Sarah Hoffmann [Fri, 23 Dec 2022 16:35:28 +0000 (17:35 +0100)]
add tests for examples in lua style documentation

And fix all the errors the tests have found.

23 months agoadd documentation for flex style
Sarah Hoffmann [Fri, 23 Dec 2022 10:10:40 +0000 (11:10 +0100)]
add documentation for flex style

Includes minor adaptions to bring the code in line with the
documentation.

23 months agoMerge pull request #2931 from mtmail/vagrant-md-use-dotenv
Sarah Hoffmann [Thu, 22 Dec 2022 09:20:15 +0000 (10:20 +0100)]
Merge pull request #2931 from mtmail/vagrant-md-use-dotenv

VAGRANT.md - replace local.php settings with .env

23 months agoVAGRANT.md - replace local.php settings with .env
marc tobias [Thu, 22 Dec 2022 02:12:30 +0000 (03:12 +0100)]
VAGRANT.md - replace local.php settings with .env

23 months agoUpdate DB.php
t-tomek [Wed, 21 Dec 2022 18:56:24 +0000 (19:56 +0100)]
Update DB.php

23 months agoUpdate DB.php
t-tomek [Wed, 21 Dec 2022 15:32:33 +0000 (16:32 +0100)]
Update DB.php

23 months agoUpdate DB.php
t-tomek [Wed, 21 Dec 2022 15:31:39 +0000 (16:31 +0100)]
Update DB.php

23 months agoUpdate DB.php
t-tomek [Wed, 21 Dec 2022 15:30:55 +0000 (16:30 +0100)]
Update DB.php

23 months agouse canonical url for nominatim.org
Sarah Hoffmann [Tue, 20 Dec 2022 15:55:47 +0000 (16:55 +0100)]
use canonical url for nominatim.org

23 months agoadapt tests for new lua styles
Sarah Hoffmann [Mon, 19 Dec 2022 16:32:28 +0000 (17:32 +0100)]
adapt tests for new lua styles

23 months agoinstall new lua import scripts
Sarah Hoffmann [Mon, 19 Dec 2022 16:27:40 +0000 (17:27 +0100)]
install new lua import scripts

23 months agoswitch to osm2pgsql flex style by default
Sarah Hoffmann [Fri, 16 Dec 2022 10:23:33 +0000 (11:23 +0100)]
switch to osm2pgsql flex style by default

23 months agoflez: add other default styles
Sarah Hoffmann [Fri, 16 Dec 2022 10:19:37 +0000 (11:19 +0100)]
flez: add other default styles

23 months agoflex: hide compiled matchers
Sarah Hoffmann [Thu, 15 Dec 2022 21:39:36 +0000 (22:39 +0100)]
flex: hide compiled matchers

23 months agoflex: switch to functions for substyles
Sarah Hoffmann [Thu, 15 Dec 2022 21:10:19 +0000 (22:10 +0100)]
flex: switch to functions for substyles

This gives us a bit more flexibility about the implementation
in the future.

23 months agoexplicit export for functions in flex-base
Sarah Hoffmann [Thu, 15 Dec 2022 16:48:00 +0000 (17:48 +0100)]
explicit export for functions in flex-base

23 months agoflex: add combining clean function
Sarah Hoffmann [Thu, 15 Dec 2022 15:47:54 +0000 (16:47 +0100)]
flex: add combining clean function

23 months agoflex: simplify name handling
Sarah Hoffmann [Thu, 15 Dec 2022 14:48:04 +0000 (15:48 +0100)]
flex: simplify name handling

23 months agoflex: simplify address configuration
Sarah Hoffmann [Thu, 15 Dec 2022 12:46:34 +0000 (13:46 +0100)]
flex: simplify address configuration

23 months agoupdate osm2pgsql (flex not building index)
Sarah Hoffmann [Thu, 15 Dec 2022 11:13:12 +0000 (12:13 +0100)]
update osm2pgsql (flex not building index)

23 months agoMerge pull request #2927 from lonvia/remove-forward-dependencies
Sarah Hoffmann [Sat, 17 Dec 2022 14:59:09 +0000 (15:59 +0100)]
Merge pull request #2927 from lonvia/remove-forward-dependencies

Remove shortcut disabling forward dependencies

23 months agoremove code that disables processing of forward dependencies
Sarah Hoffmann [Sun, 11 Dec 2022 18:35:58 +0000 (19:35 +0100)]
remove code that disables processing of forward dependencies

23 months agoMerge pull request #2921 from lonvia/case-insensitive-utf8
Sarah Hoffmann [Sun, 11 Dec 2022 14:57:01 +0000 (15:57 +0100)]
Merge pull request #2921 from lonvia/case-insensitive-utf8

Use grapheme_stripos instead of stripos in PHP code

23 months agouse grapheme_stripos instead of stripos in PHP code
Sarah Hoffmann [Sun, 11 Dec 2022 12:55:27 +0000 (13:55 +0100)]
use grapheme_stripos instead of stripos in PHP code

The stripos() does not handle non-ASCII correctly.

23 months agoMerge pull request #2920 from lonvia/no-postcode-for-rivers
Sarah Hoffmann [Sat, 10 Dec 2022 16:30:32 +0000 (17:30 +0100)]
Merge pull request #2920 from lonvia/no-postcode-for-rivers

Do not assign postcodes to long linear features

23 months agodo not assign postcodes to long linear features
Sarah Hoffmann [Sat, 10 Dec 2022 13:53:08 +0000 (14:53 +0100)]
do not assign postcodes to long linear features

This avoids a postcode in particular for waterway features and
long natural featues like ridges and valleys.

Fixes #2915.

23 months agoFix typo in NOMINATIM_LOG_FILE (#2919)
Frederik Ramm [Thu, 8 Dec 2022 16:34:54 +0000 (17:34 +0100)]
Fix typo in NOMINATIM_LOG_FILE (#2919)

* fix typo in docs (NOMINATIM_LOG_FILE uses s not ms)

23 months agoMerge pull request #2916 from lonvia/faq-postcodes
Sarah Hoffmann [Thu, 8 Dec 2022 07:42:10 +0000 (08:42 +0100)]
Merge pull request #2916 from lonvia/faq-postcodes

Add FAQ about finding bad postcodes

23 months agoadd FAQ about finding bad postcodes
Sarah Hoffmann [Wed, 7 Dec 2022 19:21:30 +0000 (20:21 +0100)]
add FAQ about finding bad postcodes

23 months agoMerge pull request #2913 from lonvia/remove-duplicate-spaces-in-transliteration
Sarah Hoffmann [Fri, 2 Dec 2022 18:43:07 +0000 (19:43 +0100)]
Merge pull request #2913 from lonvia/remove-duplicate-spaces-in-transliteration

contract duplicate spaces in transliteration string

23 months agocontract duplicate spaces in transliteration string
Sarah Hoffmann [Fri, 2 Dec 2022 09:15:02 +0000 (10:15 +0100)]
contract duplicate spaces in transliteration string

There are some pathological cases where an isolated letter may
be deleted because it is in itself meaningless. If this happens in
the middle of a sentence, then the transliteration contains two
consecutive spaces. Add a final rule to fix this.

See #2909.

23 months agoMerge pull request #2908 from n-timofeev/update-vagrantfile
Sarah Hoffmann [Tue, 29 Nov 2022 09:33:16 +0000 (10:33 +0100)]
Merge pull request #2908 from n-timofeev/update-vagrantfile

Update Vagrantfile

23 months agoUpdate Vagrantfile
n-timofeev [Tue, 29 Nov 2022 08:12:10 +0000 (11:12 +0300)]
Update Vagrantfile

23 months agoMerge pull request #2906 from lonvia/move-data-dirs-into-module
Sarah Hoffmann [Mon, 28 Nov 2022 07:44:29 +0000 (08:44 +0100)]
Merge pull request #2906 from lonvia/move-data-dirs-into-module

Reorganize how Nominatim finds its extra data and libraries

23 months agoclean up uses of cli.nominatim()
Sarah Hoffmann [Sun, 27 Nov 2022 14:27:04 +0000 (15:27 +0100)]
clean up uses of cli.nominatim()

They should not hand in data paths anymore.

23 months agouse data paths from new nominatim.paths
Sarah Hoffmann [Sat, 26 Nov 2022 21:00:43 +0000 (22:00 +0100)]
use data paths from new nominatim.paths

23 months agointroduce paths module which contains the data paths
Sarah Hoffmann [Sat, 26 Nov 2022 16:08:51 +0000 (17:08 +0100)]
introduce paths module which contains the data paths

This means that nominatim can find its data even when not called
from the command line tool.

23 months agoMerge pull request #2905 from lonvia/remove-nominatim-tool-var
Sarah Hoffmann [Sat, 26 Nov 2022 19:24:58 +0000 (20:24 +0100)]
Merge pull request #2905 from lonvia/remove-nominatim-tool-var

Remove NOMINATIM_NOMINATIM_TOOL variable

2 years agoremove NOMINATIM_NOMINATIM_TOOL variable
Sarah Hoffmann [Sat, 26 Nov 2022 15:40:20 +0000 (16:40 +0100)]
remove NOMINATIM_NOMINATIM_TOOL variable

This was used by the old PHP scripts to call the Python tool.
With the scripts now gone, the variable can be removed.

2 years agoactions: install keys for postgres repo v4.2.0
Sarah Hoffmann [Thu, 24 Nov 2022 10:36:56 +0000 (11:36 +0100)]
actions: install keys for postgres repo

2 years agoprepare release 4.2.0
Sarah Hoffmann [Thu, 24 Nov 2022 09:43:29 +0000 (10:43 +0100)]
prepare release 4.2.0

2 years agoadd checklist for releases
Sarah Hoffmann [Thu, 24 Nov 2022 09:17:30 +0000 (10:17 +0100)]
add checklist for releases

2 years agoMerge pull request #2903 from lonvia/migration-for-index-reorganization
Sarah Hoffmann [Thu, 24 Nov 2022 09:13:38 +0000 (10:13 +0100)]
Merge pull request #2903 from lonvia/migration-for-index-reorganization

Add migration for reorganization of pending indexes

2 years agoadd migration for reorganization of pending indexes
Sarah Hoffmann [Wed, 23 Nov 2022 09:55:39 +0000 (10:55 +0100)]
add migration for reorganization of pending indexes

Fixes #2900.

2 years agoMerge pull request #2902 from lonvia/tiger-county-sanitizer
Sarah Hoffmann [Wed, 23 Nov 2022 16:58:42 +0000 (17:58 +0100)]
Merge pull request #2902 from lonvia/tiger-county-sanitizer

Tiger county sanitizer