-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathpyproject.toml
More file actions
96 lines (88 loc) · 2.03 KB
/
Copy pathpyproject.toml
File metadata and controls
96 lines (88 loc) · 2.03 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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
[build-system]
build-backend = "setuptools.build_meta"
requires = ["setuptools"]
[project]
dependencies = [
"argcomplete",
"matplotlib",
"pandas",
"numpy",
"mplhep",
"particle",
"uproot",
"black",
"isort",
"corner",
"h5py",
"emcee",
"tqdm",
"IPython",
"ipykernel",
"jupyter",
"gitpython",
# "mpi4py", # (mpi has not been well tested, but it has worked before. There was also a linking error if not manually installing it after conda env created)
"pyarrow", # storage format
# "tbb", # for FSROOT, multiprocessing/threading
"psutil", # check process information
"pdf2image", # convert pdf to image for plotGen tutorial documentation
"scons", # needed to 'make' AMPTOOLS_GENERATORS,
# Below needed for Boris's moment calculation
"bidict",
"nptyping",
"spherical",
"iminuit",
# MCMC packages
"pymc",
"numpyro",
"arviz",
]
name = "pyamptools"
requires-python = ">=3.9"
version = "0.1.0"
[tool.isort]
known_third_party = "THIRDPARTY,sympy"
profile = "black"
[project.optional-dependencies]
dev = [
"pyamptools[doc]",
"pyamptools[ift]",
"pytest",
"pre-commit",
"ruff",
"pretty_errors",
]
doc = ["jupyter-book", "ghp-import"]
ift = [
"hydra-core", # remove later?
"omegaconf", # remove later?
"optuna",
"scikit-learn",
"scipy",
"jax[cuda12]",
"jaxlib",
"flax",
"optax",
"orbax-checkpoint",
"sympy",
"statsmodels",
"equinox",
"iminuit",
"jupytext",
"plotext",
"dash",
"dash_bootstrap_components",
"plotly==5.24.1", # lock plotly version for now else kaleido wont work
"kaleido==0.2.1", # allows plotly pdf export
]
[project.scripts]
pa = "pyamptools.pa:main"
[tool.nbqa.addopts]
black = ["--line-length=85"]
[tool.ruff]
line-length = 300 # Allow long lines, user discretion
[tool.ruff.lint]
ignore = [
"F821", # Allow undefined names, we use atiSetup to load into globals
"E701", # Allow multiple statements on one line
"E741", # Allow ambiguous variable names like 'l', 'O', or 'I'
]