[build-system]
requires = ["maturin ~= 1.10.2"]
build-backend = "maturin"

[project]
name = "qdk"
version = "0.0.0"
description = "Quantum Development Kit Python Package"
readme = "README.md"
authors = [ { name = "Microsoft" } ]
requires-python = ">=3.10"
dependencies = ["pyqir>=0.12.5,<0.13", "qsharp==0.0.0"]
classifiers = [
    "License :: OSI Approved :: MIT License",
    "Development Status :: 5 - Production/Stable",
    "Intended Audience :: Developers",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: 3.13",
    "Programming Language :: Python",
    "Programming Language :: Rust",
    "Operating System :: MacOS",
    "Operating System :: Microsoft :: Windows",
    "Operating System :: POSIX :: Linux",
]

[project.optional-dependencies]
jupyter = ["qsharp-widgets==0.0.0", "qsharp-jupyterlab==0.0.0"]
azure = ["azure-quantum>=3.8.0"]
qiskit = ["qiskit>=1.2.2,<3.0.0"]
cirq = ["cirq-core>=1.6.1,<1.7", "cirq-ionq>=1.6.1,<1.7", "ply>=3.11"]
qre = ["pandas>=2.1"]
applications = ["cirq-core==1.6.1,<1.7"]
all = [
  "qsharp-widgets==0.0.0",
  "azure-quantum>=3.8.0",
  "qiskit>=1.2.2,<3.0.0",
  "cirq-core>=1.6.1,<1.7",
  "cirq-ionq>=1.6.1,<1.7",
  "pandas>=2.1",
  "ply>=3.11",
  "qsharp-jupyterlab==0.0.0",
]

[tool.pytest.ini_options]
testpaths = ["tests"]

[tool.maturin]
module-name = "qdk._native"

