-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathpyproject.toml
More file actions
80 lines (68 loc) · 1.84 KB
/
pyproject.toml
File metadata and controls
80 lines (68 loc) · 1.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
[project]
name = "crystalyse"
version = "1.0.0-dev"
description = "Crystalyse v1.0.0-dev - Intelligent Scientific AI Agent for Inorganic Materials Design"
readme = "README.md"
requires-python = ">=3.9"
dependencies = [
"openai>=1.0.0",
"openai-agents>=0.13.6,<0.14",
"pymatgen>=2024.1.0",
"ase>=3.22.0",
"numpy>=1.24.0",
"pandas>=2.0.0",
"typing-extensions>=4.5.0",
"pydantic>=2.0.0",
"asyncio>=3.4.3",
"rich>=13.0.0",
"click>=8.1.0",
"prompt-toolkit>=3.0.0",
"typer>=0.12.0",
# Pinned to v0.1.2 which includes fix for missing subpackages in PyPI distribution
# Can use GitHub source for now until PyPI package is published
"chemeleon-dng @ git+https://github.com/hspark1212/[email protected]",
# Capped below 2.11 to keep CUDA 12.x drivers working — torch 2.11 bumped
# to CUDA 13 runtime which requires an NVIDIA driver supporting CUDA 13
# (e.g. driver 555+). See dev/pyproject.toml for the full rationale.
"torch>=2.1.0,<2.11",
"smact>=2.7.0",
"mace-torch>=0.3.0",
]
[project.optional-dependencies]
dev = [
"pytest>=7.0.0",
"pytest-asyncio>=0.21.0",
"pytest-cov>=4.0.0",
"ruff>=0.1.0",
"mypy>=1.0.0",
]
visualization = [
"plotly>=5.18.0",
"py3Dmol>=2.0.4",
"kaleido>=0.2.1",
"pymatviz>=0.8.5",
]
docs = [
"mkdocs>=1.5.0",
"mkdocs-material>=9.5.0",
"mkdocstrings[python]>=0.24.0",
"mkdocs-minify-plugin>=0.7.0",
]
all = [
"crystalyse[visualization]",
]
[project.scripts]
crystalyse = "crystalyse.cli:main"
[build-system]
requires = ["setuptools>=61.0", "wheel"]
build-backend = "setuptools.build_meta"
[tool.setuptools.packages.find]
where = ["dev"]
include = ["crystalyse*"]
[tool.ruff]
line-length = 100
target-version = "py310"
[tool.mypy]
python_version = "3.10"
warn_return_any = true
warn_unused_configs = true