content: [build-system]
  requires = ["setuptools"]
  build-backend = "setuptools.build_meta"
  
  
  [project]
  name = "psiflow"
  version = "4.0.0"
  description = "Library for developing interatomic potentials"
  readme = "README.md"
  requires-python = ">=3.10"
  dependencies = [
      "ase>=3.23.0",
      "pyyaml>=6.0",
      "numpy>=1.22.3, <2",
      "parsl==2024.12.16",
      "prettytable",
      "psutil",
      "cp2k-input-tools @ git+https://github.com/cp2k/cp2k-input-tools.git@3b9929735dcb3c8c0620a548b1fe20efecbad077",  # need 2024.1
      "pytimeparse",
      ]
  
  
  [project.scripts]
  psiflow-client = "psiflow.sampling.client:main"
  psiflow-server = "psiflow.sampling.server:main"
  psiflow-mace-train = "psiflow.models.mace_utils:main"
  psiflow-ase-opt = "psiflow.sampling._ase:main"
  
  
  [project.optional-dependencies]
  docs = [
      "mkdocs>=1.4.2",
      "mkdocs-autorefs>=0.4.1",
      "mkdocs-material>=9.0.3",
      "mkdocs-material-extensions>=1.1.1",
      "mkdocstrings>=0.19.1",
      "mkdocstrings-python>=0.8.3",
      ]
  dev = [
      "pre-commit",
      "black",
      "isort",
      "flake8",
      "flake8-bugbear",
      "flake8-pyproject",
      "pytest>=7.2.0",
      "coverage>=6.5.0",
      "coveralls>=3.3.1",
      ]
  
  
  [tool.setuptools.packages.find]
  include = [
      "psiflow",
      "psiflow.models",
      "psiflow.data",
      "psiflow.reference",
      "psiflow.sampling",
      "psiflow.utils",
      "psiflow.free_energy",
      ]
  
  
  [tool.flake8]
  max-line-length = 88
  extend-ignore = ["E203", "E501", "E704", "B006"]
  #select = C,E,F,W,B,B950
  
  [tool.isort]
  profile = "black"
  
  [tool.pytest.ini_options]
  log_cli = 0
  addopts = [
      "--basetemp=pytest-tmp", # /tmp/ may be different for each worker!
      "--import-mode=append",
      "--psiflow-config=configs/local_test.yaml",
      "-W ignore::DeprecationWarning",
      "--log-cli-level=WARNING",
      "--show-capture=stdout"
  ]
  testpaths = ["tests"]
  