# ============================================================================ #
# Copyright (c) 2022 - 2026 NVIDIA Corporation & Affiliates.                   #
# All rights reserved.                                                         #
#                                                                              #
# This source code and the accompanying materials are made available under     #
# the terms of the Apache License 2.0 which accompanies this distribution.     #
# ============================================================================ #

[project]
name = "cudaq"
dynamic = ["version", "dependencies"]
keywords = [ "cudaq", "cuda-quantum", "cuda", "quantum", "quantum computing", "nvidia", "high-performance computing" ]
description="Python bindings for the CUDA-Q toolkit for heterogeneous quantum-classical workflows."
authors = [{name = "NVIDIA Corporation & Affiliates"}]
maintainers = [{name = "NVIDIA Corporation & Affiliates"}]
readme = { file="README.md.in", content-type = "text/markdown"}
requires-python = ">=3.11"
license-files = ["LICENSE", "NOTICE", "CITATION.cff", "LICENSES/*"]
classifiers = [
    'Intended Audience :: Science/Research',
    'Intended Audience :: Developers',
    'Programming Language :: Python',
    'Programming Language :: Python :: 3',
    'Programming Language :: Python :: 3.11',
    'Programming Language :: Python :: 3.12',
    'Programming Language :: Python :: 3.13',
    'Programming Language :: Python :: 3.14',
    "Environment :: GPU :: NVIDIA CUDA",
    "Environment :: GPU :: NVIDIA CUDA :: 11",
    "Environment :: GPU :: NVIDIA CUDA :: 12",
    'Topic :: Software Development',
    'Topic :: Scientific/Engineering',
]


[project.urls]
Homepage = "https://developer.nvidia.com/cuda-q"
Documentation = "https://nvidia.github.io/cuda-quantum"
Repository = "https://github.com/NVIDIA/cuda-quantum"
Releases = "https://nvidia.github.io/cuda-quantum/latest/releases.html"

[project.optional-dependencies]
chemistry = [ "scipy==1.10.1; python_version < '3.14'", "openfermionpyscf==0.5; python_version < '3.14'", "h5py==3.12.1; python_version < '3.14'"  ]
visualization = [ "qutip>5" , "matplotlib>=3.5" ]

[build-system]
requires = ["hatchling>=1.25", "nvidia-ml-py"]
build-backend = "hatchling.build"

[tool.hatch.version]
source = "regex"
path = "_version.txt"
pattern = "^(?P<version>.+?)\\s*$"

[tool.hatch.metadata]
core-metadata-version = "2.3"

[tool.hatch.metadata.hooks.custom]

[tool.hatch.build.targets.sdist]
include = [
  "_version.txt",
  "_deprecated.txt",
]

[tool.hatch.build.targets.wheel]
include = [
    "_version.txt",
]
