]> git.openstreetmap.org Git - nominatim.git/log
nominatim.git
5 months agoMerge pull request #3777 from lonvia/harmonize-transition-penalties
Sarah Hoffmann [Fri, 11 Jul 2025 12:17:48 +0000 (14:17 +0200)]
Merge pull request #3777 from lonvia/harmonize-transition-penalties

Clean up word transition penalty assignment for searches

5 months agoMerge pull request #3778 from lonvia/remove-log-db-setting
Sarah Hoffmann [Fri, 11 Jul 2025 12:17:24 +0000 (14:17 +0200)]
Merge pull request #3778 from lonvia/remove-log-db-setting

Remove defaults and documentations for LOG_DB setting

5 months agoremove any references to website setup or refresh
Sarah Hoffmann [Fri, 11 Jul 2025 09:51:49 +0000 (11:51 +0200)]
remove any references to website setup or refresh

Does no longer exist.

5 months agoremove LOG_DB setting, not implemented anymore
Sarah Hoffmann [Fri, 11 Jul 2025 09:15:41 +0000 (11:15 +0200)]
remove LOG_DB setting, not implemented anymore

5 months agoremove penalty from TokenRanges
Sarah Hoffmann [Fri, 11 Jul 2025 08:57:35 +0000 (10:57 +0200)]
remove penalty from TokenRanges

The parameter is no longer needed.

5 months agoadapt tests for new function signatures
Sarah Hoffmann [Fri, 11 Jul 2025 08:27:18 +0000 (10:27 +0200)]
adapt tests for new function signatures

5 months agoreduce maximum number of SQL queries per search
Sarah Hoffmann [Fri, 11 Jul 2025 07:34:21 +0000 (09:34 +0200)]
reduce maximum number of SQL queries per search

5 months agofix order of address rankings prefering longest words
Sarah Hoffmann [Wed, 9 Jul 2025 21:22:20 +0000 (23:22 +0200)]
fix order of address rankings prefering longest words

5 months agoreinstate penalty for partial only matches
Sarah Hoffmann [Wed, 9 Jul 2025 20:27:12 +0000 (22:27 +0200)]
reinstate penalty for partial only matches

5 months agogive word break slight advantage towards continuation
Sarah Hoffmann [Wed, 9 Jul 2025 20:25:40 +0000 (22:25 +0200)]
give word break slight advantage towards continuation

prefers longer words

5 months agorebalance word transition penalties
Sarah Hoffmann [Wed, 9 Jul 2025 18:35:15 +0000 (20:35 +0200)]
rebalance word transition penalties

5 months agosimplify QueryNode penalty and initial assignment
Sarah Hoffmann [Wed, 9 Jul 2025 13:36:11 +0000 (15:36 +0200)]
simplify QueryNode penalty and initial assignment

5 months agoMerge pull request #3774 from lonvia/remove-postcodes-from-nameaddressvector
Sarah Hoffmann [Tue, 8 Jul 2025 15:23:05 +0000 (17:23 +0200)]
Merge pull request #3774 from lonvia/remove-postcodes-from-nameaddressvector

Do not add postcodes from postcode boundaries to address vector

5 months agoMerge pull request #3773 from lonvia/small-countries
Sarah Hoffmann [Tue, 8 Jul 2025 13:01:37 +0000 (15:01 +0200)]
Merge pull request #3773 from lonvia/small-countries

Reduce area for geometry rank for very small countries

5 months agodo not add postcodes from postcode boundaries to address vector
Sarah Hoffmann [Tue, 8 Jul 2025 12:49:16 +0000 (14:49 +0200)]
do not add postcodes from postcode boundaries to address vector

Postcodes will be found through a special search, so we can save
the space.

5 months agoreduce area for geometry rank for very small countries
Sarah Hoffmann [Tue, 8 Jul 2025 11:50:20 +0000 (13:50 +0200)]
reduce area for geometry rank for very small countries

5 months agoMerge pull request #3772 from lonvia/fix-index-use-deletable
Sarah Hoffmann [Tue, 8 Jul 2025 11:49:31 +0000 (13:49 +0200)]
Merge pull request #3772 from lonvia/fix-index-use-deletable

split up query for deletable endpoint by osm type

5 months agosplit up query for deletable endpoint by osm type
Sarah Hoffmann [Tue, 8 Jul 2025 09:03:29 +0000 (11:03 +0200)]
split up query for deletable endpoint by osm type

This is needed to ensure index use on placex.

5 months agoMerge pull request #3770 from lonvia/split-place-search
Sarah Hoffmann [Mon, 7 Jul 2025 15:52:47 +0000 (17:52 +0200)]
Merge pull request #3770 from lonvia/split-place-search

Split up SQL generation code for searches with and without housenumbers

5 months agoadapt BDD test to refusal to search POI names with hnr only
Sarah Hoffmann [Mon, 7 Jul 2025 14:14:58 +0000 (16:14 +0200)]
adapt BDD test to refusal to search POI names with hnr only

5 months agoincrease penalty on mismatching postcodes for address searches
Sarah Hoffmann [Mon, 7 Jul 2025 14:07:32 +0000 (16:07 +0200)]
increase penalty on mismatching postcodes for address searches

Otherwise there is an imbalance towards matching housenumbers
instead of the actual street (where no housenumber exists).

5 months agosort housenumber parents by accuracy first
Sarah Hoffmann [Mon, 7 Jul 2025 10:06:06 +0000 (12:06 +0200)]
sort housenumber parents by accuracy first

Sorting them by presence of housenumber only will give an undue
preference to results with a housenumber while disregarding other
factors like matching postcodes.

5 months agoreduce candidates for place search
Sarah Hoffmann [Mon, 7 Jul 2025 09:18:37 +0000 (11:18 +0200)]
reduce candidates for place search

5 months agodifferentiate between place searches with and without address
Sarah Hoffmann [Mon, 7 Jul 2025 09:17:01 +0000 (11:17 +0200)]
differentiate between place searches with and without address

5 months agosplit place search into address search and named search
Sarah Hoffmann [Mon, 7 Jul 2025 07:01:44 +0000 (09:01 +0200)]
split place search into address search and named search

The presence/absence of houenumbers makes quite a difference for search.

5 months agoMerge pull request #3769 from lonvia/refactor-api-searches
Sarah Hoffmann [Wed, 2 Jul 2025 18:08:11 +0000 (20:08 +0200)]
Merge pull request #3769 from lonvia/refactor-api-searches

Refactor code around creating SQL for serach queries

5 months agosplit db_searches moving each class in its own file
Sarah Hoffmann [Tue, 1 Jul 2025 20:57:04 +0000 (22:57 +0200)]
split db_searches moving each class in its own file

5 months agoMerge pull request #3765 from lonvia/update-ui-docs
Sarah Hoffmann [Fri, 27 Jun 2025 18:01:28 +0000 (20:01 +0200)]
Merge pull request #3765 from lonvia/update-ui-docs

Update instructions for UI integration

5 months agoupdate instructions for UI integration
Sarah Hoffmann [Fri, 27 Jun 2025 07:53:29 +0000 (09:53 +0200)]
update instructions for UI integration

Switches from defaulting to forwarding to UI to only forwarding
when requested. This avoids issues with auto-forwarding illegal URLs.
Also adapts to the much simplified nginx configuration.

5 months agoMerge pull request #3764 from lonvia/update-importance
Sarah Hoffmann [Fri, 27 Jun 2025 08:02:18 +0000 (10:02 +0200)]
Merge pull request #3764 from lonvia/update-importance

'refresh --importance' also needs to refresh importances in search_name table

5 months agoremove duplicated test
Sarah Hoffmann [Thu, 26 Jun 2025 20:35:38 +0000 (22:35 +0200)]
remove duplicated test

There is a more extensive test of recompute_importance with
result check in test_refresh_wiki_data.py

5 months agoMerge pull request #3762 from lonvia/remove-gazetteer-output-support
Sarah Hoffmann [Thu, 26 Jun 2025 18:28:16 +0000 (20:28 +0200)]
Merge pull request #3762 from lonvia/remove-gazetteer-output-support

Remove support for deprecated gazetteer osm2pgsql output

5 months agorewrite importances in search_name after updating in placex
Sarah Hoffmann [Thu, 26 Jun 2025 18:27:37 +0000 (20:27 +0200)]
rewrite importances in search_name after updating in placex

5 months agoremove support for deprecated gazetteer osm2pgsql output
Sarah Hoffmann [Wed, 25 Jun 2025 21:09:08 +0000 (23:09 +0200)]
remove support for deprecated gazetteer osm2pgsql output

6 months agoMerge pull request #3747 from anqixxx/fix-special-phrases-filtering
Sarah Hoffmann [Fri, 6 Jun 2025 19:37:17 +0000 (21:37 +0200)]
Merge pull request #3747 from anqixxx/fix-special-phrases-filtering

Special Phrases Filtering: Add Command Line Functionality

6 months agoAdded skip for when min =0
anqixxx [Thu, 5 Jun 2025 01:25:14 +0000 (09:25 +0800)]
Added skip for when min =0

6 months agoAdded default min = 0 argument for private functions
anqixxx [Wed, 4 Jun 2025 08:10:14 +0000 (01:10 -0700)]
Added default min = 0 argument for private functions

empty

6 months agoRefactored min and associated tests to follow greater than or equal to logic, so...
anqixxx [Sat, 31 May 2025 16:41:36 +0000 (09:41 -0700)]
Refactored min and associated tests to follow greater than or equal to logic, so that min=0 accounted for no filtering

r

6 months agoAdded command line (default 0) min argument for minimum filtering, updated args.py...
anqixxx [Thu, 29 May 2025 16:25:08 +0000 (09:25 -0700)]
Added command line (default 0) min argument for minimum filtering, updated args.py to reflect this

6 months agoMerge pull request #3748 from lonvia/airports
Sarah Hoffmann [Mon, 2 Jun 2025 12:39:02 +0000 (14:39 +0200)]
Merge pull request #3748 from lonvia/airports

Improve finding airports by their codes

6 months agoimprove result cutting when a POI comes out with top importance
Sarah Hoffmann [Sun, 1 Jun 2025 10:00:36 +0000 (12:00 +0200)]
improve result cutting when a POI comes out with top importance

6 months agoonly rerank results if there is more than one
Sarah Hoffmann [Sun, 1 Jun 2025 09:55:27 +0000 (11:55 +0200)]
only rerank results if there is more than one

With one result order is obvious.

6 months agoreduce influence of query rematching a little bit
Sarah Hoffmann [Sun, 1 Jun 2025 09:54:21 +0000 (11:54 +0200)]
reduce influence of query rematching a little bit

6 months agowhen rematching only distinguish between perfect, somewhat and bad match
Sarah Hoffmann [Sun, 1 Jun 2025 09:53:23 +0000 (11:53 +0200)]
when rematching only distinguish between perfect, somewhat and bad match

6 months agoadd FAA codes (US version of IATA codes) for airports
Sarah Hoffmann [Sat, 31 May 2025 07:45:28 +0000 (09:45 +0200)]
add FAA codes (US version of IATA codes) for airports

6 months agowork around bogus type error in latest starlette
Sarah Hoffmann [Sat, 31 May 2025 07:43:48 +0000 (09:43 +0200)]
work around bogus type error in latest starlette

6 months agofix missing optional return
Sarah Hoffmann [Fri, 30 May 2025 10:03:00 +0000 (12:03 +0200)]
fix missing optional return

6 months agoMerge pull request #3744 from lonvia/add-unnamed-cemetries
Sarah Hoffmann [Wed, 28 May 2025 09:51:23 +0000 (11:51 +0200)]
Merge pull request #3744 from lonvia/add-unnamed-cemetries

Include unnamed cemetaries in POIs

6 months agoadd landuse=cemetery as POI even when unnamed
Sarah Hoffmann [Wed, 28 May 2025 07:48:08 +0000 (09:48 +0200)]
add landuse=cemetery as POI even when unnamed

6 months agoMerge pull request #3742 from lonvia/korean-defaults
Sarah Hoffmann [Mon, 26 May 2025 12:13:54 +0000 (14:13 +0200)]
Merge pull request #3742 from lonvia/korean-defaults

Remove English as default language for South Korea

6 months agoadapt to changed loop handling of pytest_asyncio
Sarah Hoffmann [Mon, 26 May 2025 09:51:20 +0000 (11:51 +0200)]
adapt to changed loop handling of pytest_asyncio

6 months agoremove English as default language for South Korea
Sarah Hoffmann [Mon, 26 May 2025 08:28:14 +0000 (10:28 +0200)]
remove English as default language for South Korea

6 months agoMerge pull request #3741 from dave-meyer/patch-1
Sarah Hoffmann [Mon, 26 May 2025 07:21:40 +0000 (09:21 +0200)]
Merge pull request #3741 from dave-meyer/patch-1

docs: Added missing code span for search API parameter value

6 months agodocs: Added missing code span for search API parameter value
Dave Meyer [Sun, 25 May 2025 18:42:09 +0000 (20:42 +0200)]
docs: Added missing code span for search API parameter value

7 months agoMerge pull request #3710 from anqixxx/fix-special-phrases-filtering
Sarah Hoffmann [Wed, 21 May 2025 19:34:28 +0000 (21:34 +0200)]
Merge pull request #3710 from anqixxx/fix-special-phrases-filtering

Fix special phrases filtering

7 months agoAdded mypy ignore fix for logging.py (library change), as well as quick mac fix on...
anqixxx [Wed, 21 May 2025 17:47:01 +0000 (10:47 -0700)]
Added mypy ignore fix for logging.py (library change), as well as quick mac fix on mem.cached

7 months agoMerge pull request #3709 from anqixxx/update-readme
Sarah Hoffmann [Wed, 21 May 2025 17:49:12 +0000 (19:49 +0200)]
Merge pull request #3709 from anqixxx/update-readme

Improve README formatting and add install steps

7 months agoAdded testing to test get classtype pairs in import special phrases
anqixxx [Thu, 1 May 2025 20:43:53 +0000 (13:43 -0700)]
Added testing to test get classtype pairs in import special phrases

7 months agoMade the limit configurable with an optional argument, updating the testing as well...
anqixxx [Mon, 14 Apr 2025 17:21:07 +0000 (10:21 -0700)]
Made the limit configurable with an optional argument, updating the testing as well to reflect this. default is now 0, meaning that it will return everything that occurs more than once. Removed mock database test, and got rid of fetch all. Rebased all tests to monkeypatch

7 months agoRemoved class type pair getter that used style sheets from both spi_importer and...
anqixxx [Mon, 14 Apr 2025 17:14:57 +0000 (10:14 -0700)]
Removed class type pair getter that used style sheets from both spi_importer and the associated testing function

7 months agoRemoved magic mocking, using monkeypatch instead, and using a placex table to simulat...
anqixxx [Fri, 11 Apr 2025 19:03:57 +0000 (12:03 -0700)]
Removed magic mocking, using monkeypatch instead, and using a placex table to simulate a 'real database'

7 months agoFilter special phrases by style and frequency to fix #235
anqixxx [Tue, 8 Apr 2025 04:40:42 +0000 (21:40 -0700)]
Filter special phrases by style and frequency to fix #235

7 months agoImprove README formatting and add install steps, adding a general cloning step before...
anqixxx [Mon, 7 Apr 2025 23:51:29 +0000 (16:51 -0700)]
Improve README formatting and add install steps, adding a general cloning step before the virtual environment. This would have been helpful for me during Nominatim setup

7 months agotweak full count cut-off (as per deployment on osm.org)
Sarah Hoffmann [Sun, 11 May 2025 09:48:07 +0000 (11:48 +0200)]
tweak full count cut-off (as per deployment on osm.org)

7 months agoMerge pull request #3732 from lonvia/exclude-country-from-direction-penalty
Sarah Hoffmann [Wed, 30 Apr 2025 08:45:37 +0000 (10:45 +0200)]
Merge pull request #3732 from lonvia/exclude-country-from-direction-penalty

Exclude address searches with country from direction penalty

7 months agoexclude address searches with country from direction penalty
Sarah Hoffmann [Tue, 29 Apr 2025 13:52:57 +0000 (15:52 +0200)]
exclude address searches with country from direction penalty

Countries are not adequately represented by partial term counts.

8 months agoMerge pull request #3722 from emmanuel-ferdman/master
Sarah Hoffmann [Tue, 22 Apr 2025 12:21:05 +0000 (14:21 +0200)]
Merge pull request #3722 from emmanuel-ferdman/master

resolve datetime deprecation warnings

8 months agoMerge pull request #3726 from lonvia/revert-json-format-change
Sarah Hoffmann [Fri, 18 Apr 2025 12:43:51 +0000 (14:43 +0200)]
Merge pull request #3726 from lonvia/revert-json-format-change

Revert accidental change in json output format

8 months agorevert accidental change in json output format
Sarah Hoffmann [Fri, 18 Apr 2025 10:05:25 +0000 (12:05 +0200)]
revert accidental change in json output format

8 months agoresolve datetime deprecation warnings
Emmanuel Ferdman [Thu, 17 Apr 2025 18:15:16 +0000 (11:15 -0700)]
resolve datetime deprecation warnings

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
8 months agoMerge pull request #3719 from lonvia/query-direction
Sarah Hoffmann [Thu, 17 Apr 2025 13:17:56 +0000 (15:17 +0200)]
Merge pull request #3719 from lonvia/query-direction

Estimate query direction

8 months agoadd a comment about the precomputed denominator
Sarah Hoffmann [Tue, 15 Apr 2025 07:38:05 +0000 (09:38 +0200)]
add a comment about the precomputed denominator

8 months agoadd direction penalties
Sarah Hoffmann [Fri, 11 Apr 2025 18:41:06 +0000 (20:41 +0200)]
add direction penalties

Direction penalties are estimated by getting the name to address
ratio usage for each partial term in the query and computing the
linear regression of that ratio over the entire phrase. Or to put
it in ither words: we try to determine if the terms at the beginning
or the end of the query are more likely to constitute a name.

Direction penalties are currently used only in classic name queries.

8 months agoreorganise token reranking
Sarah Hoffmann [Fri, 11 Apr 2025 11:38:34 +0000 (13:38 +0200)]
reorganise token reranking

As the reranking is about changing penalties in presence of other
tokens, change the datastructure to have the other tokens readily
avilable.

8 months agoensure that bailout-check is done after each iteration
Sarah Hoffmann [Fri, 11 Apr 2025 09:01:13 +0000 (11:01 +0200)]
ensure that bailout-check is done after each iteration

8 months agoreplace use of range when computing word list
Sarah Hoffmann [Fri, 11 Apr 2025 07:59:04 +0000 (09:59 +0200)]
replace use of range when computing word list

8 months agouse iterator instead of list to go over partials
Sarah Hoffmann [Fri, 11 Apr 2025 07:38:24 +0000 (09:38 +0200)]
use iterator instead of list to go over partials

8 months agomove partial token into a separate field in the query struct
Sarah Hoffmann [Fri, 11 Apr 2025 06:57:34 +0000 (08:57 +0200)]
move partial token into a separate field in the query struct

There is exactly one token to be expected and the token is usually
present.

8 months agoMerge pull request #3716 from lonvia/github-cache-osm2pgsql-binary
Sarah Hoffmann [Thu, 10 Apr 2025 15:20:32 +0000 (17:20 +0200)]
Merge pull request #3716 from lonvia/github-cache-osm2pgsql-binary

Github actions: cache compiled osm2pgsql binary

For the tests on Ubunutu 22-04 we need to compile osm2pgsql because the version they ship is too old. This adds caching of the compiled binary, so that we don't need to recompile for each CI run. Together with the new BDD tests that shaves around 10 min off a CI run.

8 months agoactions: cache compiled osm2pgsql binary
Sarah Hoffmann [Wed, 9 Apr 2025 18:12:15 +0000 (20:12 +0200)]
actions: cache compiled osm2pgsql binary

8 months agoMerge pull request #3714 from lonvia/postcode-update-without-project-dir
Sarah Hoffmann [Thu, 10 Apr 2025 06:51:22 +0000 (08:51 +0200)]
Merge pull request #3714 from lonvia/postcode-update-without-project-dir

Change postcode update function to work without a project directory

8 months agoMerge pull request #3715 from lonvia/demote-tags-to-fallbacks
Sarah Hoffmann [Thu, 10 Apr 2025 06:51:06 +0000 (08:51 +0200)]
Merge pull request #3715 from lonvia/demote-tags-to-fallbacks

Demote historic and tourism=attraction to fallback tags

8 months agodemote historic and tourism=attraction to fallback tags
Sarah Hoffmann [Fri, 4 Apr 2025 08:55:29 +0000 (10:55 +0200)]
demote historic and tourism=attraction to fallback tags

8 months agoallow updating postcodes without a project directory
Sarah Hoffmann [Wed, 9 Apr 2025 17:54:39 +0000 (19:54 +0200)]
allow updating postcodes without a project directory

Postcodes will then be updated without looking for external postcodes.

8 months agoMerge pull request #3713 from lonvia/bdd-pytest-db-test
Sarah Hoffmann [Wed, 9 Apr 2025 17:37:30 +0000 (19:37 +0200)]
Merge pull request #3713 from lonvia/bdd-pytest-db-test

Move BDD tests to pytest-bdd

8 months agoupdate documentation for BDD tests
Sarah Hoffmann [Wed, 9 Apr 2025 13:21:50 +0000 (15:21 +0200)]
update documentation for BDD tests

8 months agoremove usage of behave
Sarah Hoffmann [Wed, 9 Apr 2025 12:57:39 +0000 (14:57 +0200)]
remove usage of behave

8 months agoadd BDD tests for DB
Sarah Hoffmann [Wed, 9 Apr 2025 12:52:34 +0000 (14:52 +0200)]
add BDD tests for DB

8 months agoimprove table comparison
Sarah Hoffmann [Fri, 4 Apr 2025 08:39:04 +0000 (10:39 +0200)]
improve table comparison

8 months agomove database setup to generic conftest.py
Sarah Hoffmann [Thu, 3 Apr 2025 09:20:38 +0000 (11:20 +0200)]
move database setup to generic conftest.py

8 months agoremove old behave osm2pgsql BDD tests
Sarah Hoffmann [Thu, 3 Apr 2025 08:59:54 +0000 (10:59 +0200)]
remove old behave osm2pgsql BDD tests

8 months agoimplement BDD osm2pgsql tests with pytest-bdd
Sarah Hoffmann [Mon, 31 Mar 2025 07:39:01 +0000 (09:39 +0200)]
implement BDD osm2pgsql tests with pytest-bdd

8 months agoenable python-bdd for github actions
Sarah Hoffmann [Tue, 18 Mar 2025 15:20:52 +0000 (16:20 +0100)]
enable python-bdd for github actions

8 months agorestrict coordinate output to 7 digits
Sarah Hoffmann [Tue, 18 Mar 2025 14:00:35 +0000 (15:00 +0100)]
restrict coordinate output to 7 digits

8 months agoreplace behave BDD API tests with pytest-bdd tests
Sarah Hoffmann [Tue, 18 Mar 2025 10:19:06 +0000 (11:19 +0100)]
replace behave BDD API tests with pytest-bdd tests

8 months agoMerge pull request #3687 from asharmalik19/test-linked-places-language
Sarah Hoffmann [Fri, 4 Apr 2025 08:58:53 +0000 (10:58 +0200)]
Merge pull request #3687 from asharmalik19/test-linked-places-language

test: linked places expand default language names

8 months agoUpdate linked places name test
Ashar [Thu, 3 Apr 2025 18:20:00 +0000 (14:20 -0400)]
Update linked places name test

Clean up test scenario by removing extra language variations and
improving table readability.

8 months agotest: linked places expand default language names
Ashar [Thu, 27 Mar 2025 23:03:33 +0000 (19:03 -0400)]
test: linked places expand default language names

Add failing test for issue #2714 to verify default language expansion

8 months agoMerge pull request #3702 from lonvia/remove-tokenizer-dir
Sarah Hoffmann [Thu, 3 Apr 2025 07:04:48 +0000 (09:04 +0200)]
Merge pull request #3702 from lonvia/remove-tokenizer-dir

Remove automatic setup of tokenizer directory

So far the tokenizer factory would create a directory for private data for the tokenizer and then hand in the directory location to the tokenizer.

ICU tokenizer doesn't need any extra data anymore, so it doesn't make sense to create a directory which then remains empty. If a tokenizer needs such a directory in the future, it needs to create it on its own and make sure to handle the situation correctly where no project directory is used at all.

8 months agoremove automatic setup of tokenizer directory
Sarah Hoffmann [Wed, 2 Apr 2025 18:20:04 +0000 (20:20 +0200)]
remove automatic setup of tokenizer directory

ICU tokenizer doesn't need any extra data anymore, so it doesn't
make sense to create a directory which then remains empty. If a
tokenizer needs such a directory in the future, it needs to create
it on its own and make sure to handle the situation correctly where
no project directory is used at all.