[build-system]
requires = ["scikit-build-core>=0.5", "pybind11>=2.10", "setuptools-scm>=8.0"]
build-backend = "scikit_build_core.build"

[project]
name = "vieclus"
dynamic = ["version"]
description = "Vienna Graph Clustering -- VieClus"
readme = "README.md"
requires-python = ">=3.8"
license = {text = "MIT"}
authors = [
    {name = "Christian Schulz"},
]
keywords = ["graph", "clustering", "graph-clustering", "modularity", "community-detection"]
classifiers = [
    "Development Status :: 4 - Beta",
    "Intended Audience :: Science/Research",
    "License :: OSI Approved :: MIT License",
    "Programming Language :: C++",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.8",
    "Programming Language :: Python :: 3.9",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Topic :: Scientific/Engineering",
]

[project.urls]
Homepage = "http://vieclus.taa.univie.ac.at"
Repository = "https://github.com/VieClus/VieClus"

[tool.scikit-build]
cmake.build-type = "Release"
cmake.args = ["-DBUILDPYTHONMODULE=ON", "-DNOMPI=ON"]
wheel.packages = ["python/vieclus"]
minimum-version = "0.5"
metadata.version.provider = "scikit_build_core.metadata.setuptools_scm"

[tool.setuptools_scm]
version_file = "python/vieclus/_version.py"
tag_regex = "^v(?P<version>[0-9]+\\.[0-9]+(?:\\.[0-9]+)?)$"
fallback_version = "0.0.0"
