[project]
name = "infragraph"
description = "Infrastructure as a Graph"
requires-python = ">=3.8"
dependencies = [
    "networkx",
    "semantic_version",
]
authors = [
    {name = "TBD", email = "tbd@infragraph.org"}
]
license = {text = "MIT"}
readme = "README.md"
keywords = ["infrastructure", "graph", "chakra", "astrasim"]
classifiers = [
    "Programming Language :: Python :: 3",
    "License :: OSI Approved :: MIT License",
    "Operating System :: OS Independent"
]
dynamic = ["version"]

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

[tool.hatch.version]
path="api/info.yaml"
pattern="version:\\s*(?P<version>(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?(?:\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?)"

[tool.hatch.build.sources]
"artifacts/infragraph" = "infragraph"
"src/infragraph" = "infragraph"
"src/tests" = "infragraph/tests"
"src/docs" = "infragraph/docs"

[tool.hatch.build.targets.sdist]
exclude = [
    "**/*",
    "!pyproject.toml",
    "!README.md",
    "!src/infragraph/*.py",
    "!src/tests/*.py",
    "!src/docs/*.*",
]

[tool.hatch.build.targets.wheel.sources]
"src/**" = "infragraph"

