[project]
name = "brdr"
version = "0.15.5"
description = "BRDR - a Python library to assist in realigning (multi-)polygons (OGC Simple Features) to reference borders "
readme = { file = "README.md", content-type = "text/markdown" }
license = { file = "LICENSE" }
authors = [
    { name = "Karel Dieussaert", email = "karel.dieussaert@vlaanderen.be" },
    { name = "Emrys Roef", email = "emrys.roef@vlaanderen.be" },
]
maintainers = [
    { name = "Emrys Roef", email = "emrys.roef@vlaanderen.be" },
    { name = "Koen Van Daele", email = "koen.vandaele@vlaanderen.be" },
    { name = "Vermeyen Maarten", email = "maarten.vermeyen@vlaanderen.be" }
]
requires-python = ">=3.10"
classifiers = [
    "Development Status :: 3 - Alpha",
    "License :: OSI Approved :: MIT License",
    "Operating System :: OS Independent",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: 3.13",
    "Programming Language :: Python :: 3.14",
    "Topic :: Scientific/Engineering :: GIS",
]
dependencies = [
    "geojson~=3.2",
    "requests~=2.32",
    "shapely~=2.1",
    "topojson~=1.10",
    "networkx~=3.6",
    "pyproj~=3.7",
    "osmnx~=2.0",
    "geopandas~=1.1, >=1.1.2",
]
[project.urls]
Documentation = "https://github.com/OnroerendErfgoed/brdr/blob/main/README.md"
Repository = "https://github.com/OnroerendErfgoed/brdr"
Issues = "https://github.com/OnroerendErfgoed/brdr/issues"

[project.optional-dependencies]
viz = [
    "matplotlib~=3.10",
    "pillow~=12.0",
]
test = [
    "pytest-cov==6.0.0",
    "pytest==8.3.4",
    "responses==0.25.6",
    "toml==0.10.2",
]
dev = [
    "brdr[viz]",
    "brdr[test]",
    "black~=25.12",
    "flake8==7.1.1",
    "hatchling~=1.28",
    "pyogrio~=0.12",
    "mypy~=1.14",
    "pip-tools~=7.5",
    "types-requests~=2.32",
]

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[tool.setuptools]
packages = ["brdr"]

[tool.black]
target-version = ['py311', 'py312', 'py313', 'py314']

# Config for hatch environments
[tool.hatch.envs.dev]
features = [
    'dev',
    'viz',
]

# Config for hatch test
[tool.hatch.envs.hatch-test]
features = [
    'test',
]

[[tool.hatch.envs.hatch-test.matrix]]
python = ['3.11', '3.12', '3.13', '3.14']
