-
Notifications
You must be signed in to change notification settings - Fork 32
/
setup.cfg
152 lines (144 loc) · 4.04 KB
/
setup.cfg
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
[metadata]
name = sgkit
author = sgkit Developers
author_email = [email protected]
license = Apache
description = Statistical genetics toolkit
long_description_content_type=text/x-rst
long_description =
**sgkit** is an open source project for analyzing and manipulating genetic
variation data.
url = https://github.com/sgkit-dev/sgkit
classifiers =
Development Status :: 3 - Alpha
License :: OSI Approved :: Apache Software License
Operating System :: OS Independent
Intended Audience :: Science/Research
Programming Language :: Python
Programming Language :: Python :: 3
Programming Language :: Python :: 3.10
Programming Language :: Python :: 3.11
Programming Language :: Python :: 3.12
Topic :: Scientific/Engineering
[options]
packages = sgkit
zip_safe = False # https://mypy.readthedocs.io/en/latest/installed_packages.html
include_package_data = True
python_requires = >=3.10
install_requires =
numpy < 2
xarray
dask[array,dataframe] >= 2022.01.0, <= 2024.8.0
distributed >= 2022.01.0, <= 2024.8.0
scipy
zarr >= 2.10.0, != 2.11.0, != 2.11.1, != 2.11.2, < 3
numba
typing-extensions
fsspec != 2021.6.*
scikit-learn
pandas
setuptools >= 41.2 # For pkg_resources
setup_requires =
setuptools >= 41.2
setuptools_scm
[options.extras_require]
# For plink we need dask[dataframe], we already have
# dask[array] in install_requires, and since
# https://github.com/pypa/pip/issues/4957, pip
# will essentially ignore dask[dataframe] in the extras.
# We can workaround this by either adding pip flag
# --use-feature 2020-resolver, or installing
# dask[dataframe] in the install_requires, or just listing
# the 2 missing dependencies from dataframe, the way we do
# here, when pip finally gets a resolver, this won't be
# a problem. Here we opt for listing the 2 dependencies
# since this is the least user invasive solution.
plink =
partd
bed-reader
bgen =
rechunker
cbgen < 1.0.5
[coverage:report]
fail_under = 100
[tool:pytest]
addopts = --doctest-modules --ignore=validation --cov-fail-under=100
norecursedirs = .eggs build docs
filterwarnings =
error
ignore::DeprecationWarning
[flake8]
ignore =
# whitespace before ':' - doesn't work well with black
E203
E402
# line too long - let black worry about that
E501
# do not assign a lambda expression, use a def
E731
# line break before binary operator
W503
[isort]
profile = black
default_section = THIRDPARTY
known_first_party = sgkit
known_third_party = allel,dask,fire,glow,hail,hypothesis,invoke,msprime,numba,numpy,pandas,pkg_resources,pyspark,pytest,setuptools,sgkit_plink,sklearn,sphinx,typing_extensions,xarray,yaml,zarr
multi_line_output = 3
include_trailing_comma = True
force_grid_wrap = 0
use_parentheses = True
line_length = 88
[mypy-callee.*]
ignore_missing_imports = True
[mypy-dask.*]
ignore_missing_imports = True
[mypy-fsspec.*]
ignore_missing_imports = True
[mypy-dask_ml.*]
ignore_missing_imports = True
[mypy-numpy.*]
ignore_missing_imports = True
[mypy-pandas.*]
ignore_missing_imports = True
[mypy-numba.*]
ignore_missing_imports = True
[mypy-pytest.*]
ignore_missing_imports = True
[mypy-statsmodels.*]
ignore_missing_imports = True
[mypy-hypothesis.*]
ignore_missing_imports = True
[mypy-zarr.*]
ignore_missing_imports = True
[mypy-numcodecs.*]
ignore_missing_imports = True
[mypy-setuptools]
ignore_missing_imports = True
[mypy-sklearn.*]
ignore_missing_imports = True
[mypy-cbgen.*]
ignore_missing_imports = True
[mypy-rechunker.*]
ignore_missing_imports = True
[mypy-bed_reader.*]
ignore_missing_imports = True
[mypy-sphinx.*]
ignore_missing_imports = True
[mypy-yarl.*]
ignore_missing_imports = True
[mypy-allel.*]
ignore_missing_imports = True
[mypy-networkx.*]
ignore_missing_imports = True
[mypy-toolz.*]
ignore_missing_imports = True
[mypy-scipy.*]
ignore_missing_imports = True
[mypy-sgkit.*]
allow_redefinition = True
[mypy-sgkit.*.tests.*]
disallow_untyped_calls = False
disallow_untyped_defs = False
disallow_untyped_decorators = False
[mypy-validation.*]
ignore_errors = True