-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
96 lines (83 loc) · 2.25 KB
/
pyproject.toml
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
[tool.poetry]
name = "funkea"
version = "1.0.0"
description = "Perform functional enrichment analysis at scale."
authors = ["benjamin.tenmann <benjamin.tenmann@benevolent.ai>"]
license = "MIT"
readme = "README.md"
packages = [
{ include = "funkea" },
{ include = "ldsc" }
]
include = [
{ path = "funkea/core/resources/*", format = ["sdist", "wheel"] },
{ path = "scala", format = "sdist" }
]
[tool.poetry.dependencies]
python = ">=3.10,<3.12"
statsmodels = "^0.13.5"
pyspark = {version = "==3.4.1", extras = ["sql"]}
pydantic = "^1.10.6"
jax = { version = "^0.4.6", optional = true }
jaxlib = { version = "^0.4.6", optional = true }
numpy = "^1.24.2"
pandas = "^1.5.3"
scipy = "^1.10.1"
networkx = "^3.0"
quinn = "^0.10.0"
pydantic-spark = "^0.2.0"
rich = "^13.3.3"
fire = "^0.5.0"
[tool.poetry.group.dev.dependencies]
pytest = "^7.2.2"
pytest-cov = "^4.0.0"
pre-commit = "^3.2.0"
mypy = "^1.1.1"
chispa = "^0.9.2"
[tool.poetry.group.docs.dependencies]
jupyterlab = "^3.6.3"
sphinx = ">=4,<6"
myst-parser = ">=0.18.0,<0.19.0"
myst-nb = "^0.17.1"
[tool.poetry.extras]
jax = ["jax", "jaxlib"]
[tool.poetry.scripts]
funkea-cli = "funkea.__main__:main"
[tool.poetry.build]
generate-setup-file = false
script = "build.py"
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.black]
line-length = 100
include = '\.pyi?$'
target-version = ['py310']
skip-string-normalization = true
exclude = '''
/(
\.git
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| _build
| buck-out
| build
| dist
)/
'''
[tool.pytest.ini_options]
filterwarnings = [
"ignore:pkg_resources is deprecated as an API:DeprecationWarning",
"ignore:Deprecated call to `pkg_resources.declare_namespace.+.:DeprecationWarning",
"ignore:distutils Version classes are deprecated. Use packaging.version instead.:DeprecationWarning",
"ignore:iteritems is deprecated and will be removed in a future version. Use .items instead.:FutureWarning"
]
[tool.mypy]
ignore_missing_imports = true
[[tool.mypy.overrides]]
module = "ldsc.*"
# unfortunately, due to the way we handle the LA backend selection, the numpy array type hints
# causes issues. Was not able to find a better solution fot this at the moment
disable_error_code = "name-defined"