[project]
dynamic = [
"author",
"author_email",
"description",
"description_content_type",
"home_page",
"keywords",
"license",
"project_url",
"summary",
"version",
]
name = "tdc_toolkit"
requires-python = ">= 3.13"
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Programming Language :: Rust",
"Topic :: Scientific/Engineering :: Physics",
"Topic :: Scientific/Engineering :: Quantum Computing",
"Topic :: Scientific/Engineering",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Software Development :: Libraries",
"Typing :: Typed",
]
dependencies = []
[build-system]
requires = ["maturin>=1.4,<2.0"]
build-backend = "maturin"
[dependency-groups]
dev = [
"black>=25.1.0",
"cffconvert>=2.0.0",
"isort>=6.0.1",
'maturin>=1.9.3 ; platform_system == "Windows"',
'maturin[patchelf]>=1.9.3 ; platform_system != "Windows"',
"mypy>=1.17.1",
"pip>=25.2",
"pylint>=3.3.8",
"ruff>=0.12.9",
]
[tool.hatch.metadata]
allow-direct-references = true
[tool.isort]
profile = "black"
[tool.maturin]
features = ["pyo3/extension-module", "python"]
module-name = "tdc_toolkit"
python-source = "python"
[tool.mypy]
files = ["."]
exclude = ["^MHLib_.*_64bit/"]
strict = true
[[tool.mypy.overrides]]
module = "plotly.*"
ignore_missing_imports = true
[tool.pylint.format]
max-line-length = "88"
[tool.pylint."messages control"]
disable = ["missing-module-docstring", "missing-class-docstring", "missing-function-docstring", "too-few-public-methods"]