switch to symlink approach for packages

Needed to make building work from sdist and source directory.
This commit is contained in:
Sarah Hoffmann 2024-06-19 22:42:15 +02:00
parent a93ec09932
commit 1e88321371
15 changed files with 45 additions and 30 deletions

1
.gitignore vendored
View File

@ -1,5 +1,6 @@
*.log
*.pyc
*.swp
docs/develop/*.png

View File

@ -0,0 +1 @@
../../COPYING

View File

@ -30,15 +30,12 @@ requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "../../src/nominatim_api/version.py"
path = "src/nominatim_api/version.py"
pattern = "NOMINATIM_API_VERSION = '(?P<version>[^']+)'"
[tool.hatch.build.targets.sdist.force-include]
"../../src/nominatim_db" = "nominatim_api"
[tool.hatch.build.targets.sdist.sources]
"src/nominatim_core" = "nominatim_api"
[tool.hatch.build.targets.sdist]
include = ["src/nominatim_api"]
[tool.hatch.build.targets.wheel]
packages = ["nominatim_api"]
packages = ["src/nominatim_api"]

1
packaging/nominatim-api/src Symbolic link
View File

@ -0,0 +1 @@
../../src/

View File

@ -0,0 +1 @@
../../COPYING

View File

@ -0,0 +1 @@
../../data

View File

@ -0,0 +1 @@
../../lib-sql/

View File

@ -30,19 +30,31 @@ requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "../../src/nominatim_core/version.py"
pattern = "NOMINATIM_CORE_VERSION = '(?P<version>[^']+)'"
source = "code"
path = "src/nominatim_core/version.py"
expression = "NOMINATIM_CORE_VERSION"
[tool.hatch.build.targets.sdist.force-include]
"../../src/nominatim_core" = "nominatim_core"
"../../lib-sql" = "nominatim_core/resources/lib-sql"
"../../settings" = "nominatim_core/resources/settings"
"../../data/country_osm_grid.sql.gz" = "nominatim_core/resources/country_osm_grid.sql.gz"
"../../data/words.sql" = "nominatim_core/resources/words.sql"
"src/nominatim_core/paths.py" = "nominatim_core/paths.py"
[tool.hatch.build.targets.sdist.sources]
"src/nominatim_core" = "nominatim_core"
[tool.hatch.build.targets.sdist]
include = [
"src/nominatim_core",
"lib-sql/**.sql",
"settings",
"data/words.sql",
"extra_src/nominatim_core/paths.py"
]
artifacts = [
"data/country_osm_grid.sql.gz"
]
exclude = [
"src/nominatim_core/paths.py"
]
[tool.hatch.build.targets.wheel]
packages = ["nominatim_core"]
packages = ["src/nominatim_core"]
[tool.hatch.build.targets.wheel.force-include]
"lib-sql" = "nominatim_core/resources/lib-sql"
"settings" = "nominatim_core/resources/settings"
"data/country_osm_grid.sql.gz" = "nominatim_core/resources/country_osm_grid.sql.gz"
"data/words.sql" = "nominatim_core/resources/words.sql"
"extra_src/nominatim_core/paths.py" = "nominatim_core/paths.py"

View File

@ -0,0 +1 @@
../../settings/

View File

@ -0,0 +1 @@
../../src

View File

@ -0,0 +1 @@
../../COPYING

View File

@ -30,19 +30,14 @@ requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "../../src/nominatim_db/version.py"
path = "src/nominatim_db/version.py"
pattern = "NOMINATIM_VERSION = parse_version.'(?P<version>[^-]+)"
[tool.hatch.build.targets.sdist.force-include]
"../../src/nominatim_db" = "nominatim_db"
[tool.hatch.build.targets.sdist.sources]
"src/nominatim_core" = "nominatim_db"
"scripts" = "scripts"
[tool.hatch.build.targets.sdist]
include = ["src/nominatim_db", "scripts"]
[tool.hatch.build.targets.wheel]
packages = ["nominatim_db"]
packages = ["src/nominatim_db"]
[tool.hatch.build.targets.wheel.shared-scripts]
"scripts" = "/"

1
packaging/nominatim-db/src Symbolic link
View File

@ -0,0 +1 @@
../../src

View File

@ -9,7 +9,8 @@ Version information for the Nominatim core package.
"""
from typing import NamedTuple, Optional
NOMINATIM_CORE_VERSION = '4.4.99'
__version__ = '4.4.99'
NOMINATIM_CORE_VERSION = __version__
class NominatimVersion(NamedTuple):
""" Version information for Nominatim. We follow semantic versioning.