Skip to content

make Nominatim host and protocol configurable via search service options#12316

Open
jwkaltz wants to merge 4 commits into
geosolutions-it:masterfrom
jwkaltz:overrideable_nominatim_url
Open

make Nominatim host and protocol configurable via search service options#12316
jwkaltz wants to merge 4 commits into
geosolutions-it:masterfrom
jwkaltz:overrideable_nominatim_url

Conversation

@jwkaltz
Copy link
Copy Markdown

@jwkaltz jwkaltz commented Apr 27, 2026

Description

Restructure nominatim URL construction in order to make hostname and protocol overrideable.
Add tests for Nominatim.

Please check if the PR fulfills these requirements

What kind of change does this PR introduce? (check one with "x", remove the others)

  • Bugfix
  • Feature
  • Code style update (formatting, local variables)
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • CI related changes
  • Other... Please describe:

Issue

What is the current behavior?
The Nominatim geocoding endpoint is currently hardcoded as
https://nominatim.openstreetmap.org in web/client/api/nominatim.js.

This prevents users from configuring a custom Nominatim instance, which is required for:

  • Air-gapped / offline deployments
  • Private Nominatim instances for higher rate limits
  • On-premise deployments where external internet access is restricted

What is the new behavior?
Read host and protocol from the service options object, falling back to the current defaults if not provided. This is fully backwards compatible — existing configurations continue to work unchanged.

Breaking change

Does this PR introduce a breaking change? (check one with "x", remove the other)

  • Yes, and I documented them in migration notes
  • No

Other useful information

After this change, there will be more options in localConfig.json or via overrideLocalConfig:

{
  "type": "nominatim",
  "priority": 5,
  "options": {
    "host": "my-nominatim.example.com",
    "protocol": "https",
    "limit": 10,
    "polygon_geojson": 1
  }
}

@cla-bot
Copy link
Copy Markdown

cla-bot Bot commented Apr 27, 2026

Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Wolfgang Kaltz.
This is most likely caused by a git client misconfiguration; please make sure to:

  1. check if your git client is configured with an email to sign commits git config --list | grep email
  2. If not, set it up using git config --global user.email email@example.com
  3. Make sure that the git commit email is configured in your GitHub account settings, see https://github.com/settings/emails

@tdipisa
Copy link
Copy Markdown
Member

tdipisa commented May 22, 2026

@jwkaltz Thank you so much for this!
As expected by Community Bylaws, we need the CLA signed to accept your contribution. Can you please provide it? Thank you again.

@cla-bot
Copy link
Copy Markdown

cla-bot Bot commented May 22, 2026

Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Wolfgang Kaltz.
This is most likely caused by a git client misconfiguration; please make sure to:

  1. check if your git client is configured with an email to sign commits git config --list | grep email
  2. If not, set it up using git config --global user.email email@example.com
  3. Make sure that the git commit email is configured in your GitHub account settings, see https://github.com/settings/emails

@tdipisa tdipisa self-assigned this May 22, 2026
@jwkaltz
Copy link
Copy Markdown
Author

jwkaltz commented May 26, 2026

@jwkaltz Thank you so much for this! As expected by Community Bylaws, we need the CLA signed to accept your contribution. Can you please provide it? Thank you again.

Hi @tdipisa , thanks for the link to the CLA! I have now sent it via email.
Don't hesitate to let me know if there are more things I should do in this pull request.

@cla-bot
Copy link
Copy Markdown

cla-bot Bot commented May 26, 2026

Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Wolfgang Kaltz.
This is most likely caused by a git client misconfiguration; please make sure to:

  1. check if your git client is configured with an email to sign commits git config --list | grep email
  2. If not, set it up using git config --global user.email email@example.com
  3. Make sure that the git commit email is configured in your GitHub account settings, see https://github.com/settings/emails

Copy link
Copy Markdown
Member

@tdipisa tdipisa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jwkaltz The your CLA is ready now. However there is still something to fix on your side as you can see above. Can you please have a look? Many thanks for your contribution.

@jwkaltz jwkaltz force-pushed the overrideable_nominatim_url branch from ca57ce9 to 4da9619 Compare May 27, 2026 08:52
@cla-bot cla-bot Bot added the CLA Ready label May 27, 2026
@jwkaltz jwkaltz force-pushed the overrideable_nominatim_url branch from 4da9619 to bbda876 Compare May 27, 2026 09:04
@jwkaltz jwkaltz requested a review from tdipisa May 27, 2026 09:11
@tdipisa tdipisa added this to the 2026.02.00 milestone May 28, 2026
@tdipisa tdipisa requested a review from subashtiwari1010 May 28, 2026 09:10
@tdipisa tdipisa assigned subashtiwari1010 and unassigned tdipisa May 28, 2026
@tdipisa tdipisa removed their request for review May 28, 2026 09:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants