[project]
name = "pytorch-nd-semiconv"
version = "0.1.1"
description = "N-dimensional convolutional operators for various semifields"
readme = "README.md"
license = "MIT"
authors = [
    { name = "Peter Adema", email = "p.j.adema@uva.nl" }
]
requires-python = ">=3.10"
dependencies = [
    "numba-cuda>=0.9.0",
    "torch>=2.6.0",
    "uuid>=1.30",
    # Custom package:
    "pytorch_numba_extension_jit>=0.1.5",
]


[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[dependency-groups]
dev = [
    "hatchling>=1.27.0",
    "matplotlib>=3.10.1",
    "pdoc3>=0.11.6",
    "ruff>=0.11.7",
    "tqdm>=4.67.1",
]

[[tool.uv.index]]
name = "torch-cu128"
url = "https://download.pytorch.org/whl/cu128"
explicit = true


[tool.uv.sources]
torch = [
    { index = "torch-cu128", marker = "sys_platform != 'darwin'" },
]