content: [project]
  name = "neural_pfaffian"
  version = "0.0.1"
  authors = [{ name = "Nicholas Gao", email = "n.gao@tum.de" }]
  requires-python = ">= 3.12"
  dependencies = [
      "einops>=0.8.0",
      "flax>=0.9.0",
      "folx>=0.2.15",
      "jax==0.4.38",
      "jaxtyping>=0.2.34",
      "numpy>=2.1.2",
      "optax>=0.2.4",
      "pyscf>=2.7.0",
      "seml[ssh_forward]>=0.5.4",
      "tqdm>=4.66.5",
      "wandb>=0.18.5",
  ]
  license = { text = "MIT" }
  
  [project.scripts]
  neural_pfaffian = "neural_pfaffian.__main__:cli_main"
  
  [build-system]
  requires = ["hatchling"]
  build-backend = "hatchling.build"
  
  [tool.pytest.ini_options]
  addopts = "-n auto --durations=0 --dist worksteal -v --color=yes"
  
  [tool.pytest_env]
  JAX_PLATFORMS = "cpu"
  JAX_ENABLE_X64 = "True"
  XLA_FLAGS = "--xla_force_host_platform_device_count=4"
  # JAX_DEFAULT_DTYPE_BITS = "32"
  
  [tool.ruff]
  line-length = 90
  
  [tool.ruff.format]
  quote-style = "single"
  line-ending = "lf"
  indent-style = "space"
  
  [tool.ruff.lint]
  ignore = ["F722", "E741"]
  
  [tool.ruff.lint.per-file-ignores]
  "main.py" = ["F841"] # unused variables are allowed in main.py
  
  [tool.uv]
  required-version = ">=0.6.0"
  dev-dependencies = [
      "ipykernel>=6.29.5",
      "pre-commit>=4.0.1",
      "pytest>=8.3.3",
      "pytest-env>=1.1.5",
      "pytest-xdist>=3.6.1",
      "pytest-split>=0.10.0",
      "ruff>=0.11.0",
      "tensorboard>=2.19.0",
      "tensorflow>=2.19.0rc0",
      "tensorboard-plugin-profile>=2.19.0",
      "jax[cuda12]; sys_platform == 'linux'",
      "nvidia-cublas-cu12==12.6.1.4; sys_platform == 'linux'",
  ]
  