content: [build-system]
  build-backend = "uv_build"
  
  requires = [
    "uv-build>=0.8.17,<0.9",
  ]
  
  [project]
  name = "eryn" #@NAMESUFFIX@
  
  version = "1.2.3"
  
  description = "Eryn: an omni-MCMC sampling package."
  
  readme = "README.md"
  
  authors = [
    { name = "Michael Katz", email = "mikekatz04@gmail.com" },
  ]
  requires-python = ">=3.9"
  
  classifiers = [
    "License :: OSI Approved :: Apache Software License",
    "Natural Language :: English",
    "Programming Language :: C++",
    "Programming Language :: Cython",
    "Programming Language :: Python :: 3 :: Only",
    "Programming Language :: Python :: 3.9",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: 3.13",
  ]
  
  dependencies = [
    "exceptiongroup; python_version<'3.11'", # To access ExceptionGroup with Python 3.9 and 3.10
    "h5py",
    "jsonschema",                            # To validate content of file registry
    "matplotlib",
    "numpy",
    "nvidia-ml-py",                          # To detect CUDA version if any
    "platformdirs",                          # To locate config and data dir on all platforms
    "pydantic",                              # To handle citations and references with advanced dataclasses
    "pyyaml",                                # To read file registry
    "requests",                              # To download files automatically
    "rich",                                  # To display downlaod progress bar
    "scipy",
    "tqdm",
    "wrapt",
    #@DEPS_CUPYCUDA@,
    #@DEPS_ERYNCORE@,
  ]
  
  optional-dependencies.doc = [
    "ipykernel",
    "ipython",
    "ipywidgets",
    "myst-parser",
    "nbsphinx",
    "pypandoc",
    "sphinx",
    "sphinx-rtd-theme",
    "sphinx-tippy",
    "corner"
  ]
  
  optional-dependencies.testing = [
    "matplotlib",
    "corner",
    "chainconsumer",
  ]
  
  [tool.pyproject-fmt]
  max_supported_python = "3.13"
  
  [tool.coverage]
  paths.source = [
    "src/",
    "**/site-packages/",
  ]
  
  report.omit = [
    "*/eryn/_version.py",
    "*/eryn/tests/*.py",
    "*/eryn/git_version.py",
    "*/eryn_backend_*/git_version.py",
  ]
  