-
Notifications
You must be signed in to change notification settings - Fork 3
/
pyproject.toml
134 lines (124 loc) · 3.66 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
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
[project]
name = 'countess'
dynamic = ["version"]
readme = "README.md"
authors = [
{ name = "Nick Moore", email="nick@zoic.org" },
{ name = "Alan Rubin", email="alan@rubin.id.au" },
]
maintainers = [
{ name = "Nick Moore", email="nick@zoic.org" },
]
description = "CountESS"
requires-python = ">=3.9"
license = { text = "BSD-3-Clause" }
classifiers = [
'Development Status :: 2 - Pre-Alpha',
'Intended Audience :: Science/Research',
'License :: OSI Approved :: BSD License',
'Operating System :: OS Independent',
'Topic :: Scientific/Engineering :: Bio-Informatics',
]
dependencies = [
'fqfa~=1.3.0',
'more_itertools~=9.1.0',
'numpy~=1.26',
'pandas~=2.1.0',
'psutil~=5.9.5',
'rapidfuzz~=2.15.1',
'scipy~=1.13.1',
'tkinterweb~=3.23.5',
'ttkthemes~=3.2.2',
'typing_extensions~=4.8.0',
]
[project.optional-dependencies]
dev = [
'black<24',
'build==0.10.0',
'coverage==7.3.2',
'mypy~=1.0.1',
'pylint~=3.2.3',
'semver~=3.0.2',
'types-psutil~=5.9.5',
'types-ttkthemes~=3.2',
'twine~=4.0.2',
'pandas-stubs~=2.1.0',
'pytest~=7.2',
'pytest-socket~=0.6.0',
'requests-mock~=1.11.0',
]
[project.entry-points.countess_plugins]
collate = "countess.plugins.collate:CollatePlugin"
load_fastq = "countess.plugins.fastq:LoadFastqPlugin"
load_fasta = "countess.plugins.fastq:LoadFastaPlugin"
load_csv = "countess.plugins.csv:LoadCsvPlugin"
group_by = "countess.plugins.group_by:GroupByPlugin"
expression = "countess.plugins.expression:ExpressionPlugin"
pivot = "countess.plugins.pivot:PivotPlugin"
join = "countess.plugins.join:JoinPlugin"
python = "countess.plugins.python:PythonPlugin"
save_csv = "countess.plugins.csv:SaveCsvPlugin"
sequence = "countess.plugins.sequence:SequencePlugin"
regex_tool = "countess.plugins.regex:RegexToolPlugin"
regex_reader = "countess.plugins.regex:RegexReaderPlugin"
variants = "countess.plugins.variant:VariantPlugin"
mutagenize = "countess.plugins.mutagenize:MutagenizePlugin"
data_table = "countess.plugins.data_table:DataTablePlugin"
correlation = "countess.plugins.correlation:CorrelationPlugin"
hgvs_parser = "countess.plugins.hgvs_parser:HgvsParserPlugin"
column = "countess.plugins.column:ColumnToolPlugin"
curve_fit = "countess.plugins.curve_fit:CurveFitPlugin"
filter = "countess.plugins.filter:FilterPlugin"
score = "countess.plugins.score:ScoringPlugin"
[project.entry-points.gui_scripts]
countess_gui = "countess.gui.main:main"
[project.entry-points.console_scripts]
countess_cmd = "countess.core.cmd:main"
[tool.setuptools]
packages = [
'countess',
'countess.core',
'countess.gui',
'countess.plugins',
'countess.utils',
]
[tool.setuptools.dynamic]
version = { attr = "countess.VERSION" }
readme = { file = "README.md", content-type="text/markdown" }
[tool.pylint]
load-plugins = "pylint.extensions.bad_builtin"
bad-functions = ['print']
disable = [
"consider-using-f-string",
"consider-using-with",
"duplicate-code",
"fixme",
"missing-module-docstring",
"missing-class-docstring",
"missing-function-docstring",
"unused-argument",
"invalid-name",
"no-else-return",
"too-many-ancestors",
"too-many-arguments",
"too-many-boolean-expressions",
"too-many-branches",
"too-many-instance-attributes",
"too-many-locals",
"too-many-nested-blocks",
"too-many-statements",
"too-few-public-methods",
"too-many-public-methods",
"unidiomatic-typecheck",
]
max-line-length = 120
[tool.black]
line-length = 120
[tool.pytest.ini_options]
addopts = "--strict-markers --disable-socket"
markers = [ "slow", "gui" ]
[tool.mypy]
plugins = [
"numpy.typing.mypy_plugin",
]
mypy_path = "mypy_stubs"