forked from icbi-lab/infercnvpy
-
Notifications
You must be signed in to change notification settings - Fork 1
/
pyproject.toml
124 lines (114 loc) · 2.53 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
[build-system]
build-backend = "hatchling.build"
requires = ["hatchling", "hatch-vcs"]
[project]
name = "infercnvpy"
dynamic = ["version"]
description = "Infercnv is a scalable python library to infer copy number variation (CNV) events from single cell transcriptomics data. It is heavliy inspired by InferCNV, but plays nicely with scanpy and is much more scalable."
readme = "README.md"
requires-python = ">=3.8"
license = {file = "LICENSE"}
authors = [
{name = "Gregor Sturm"},
]
maintainers = [
{name = "Gregor Sturm", email="gregor.sturm@i-med.ac.at"}
]
urls.Documentation = "https://infercnvpy.readthedocs.io/"
urls.Source = "https://github.com/icbi-lab/infercnvpy"
urls.Home-page = "https://github.com/icbi-lab/infercnvpy"
dependencies = [
'anndata>=0.7.3',
'scanpy>=1.6.0',
'pandas>=1',
'numpy>=1.20', # includes type annotations
'tqdm>=4.63.0', # fixes tqdm.auto
'pytoml',
'gtfparse>=2',
'pycairo>=1.20; sys_platform == "win32"',
'leidenalg',
'pyreadr',
# for debug logging (referenced from the issue template)
"session-info",
"ipython"
]
[project.optional-dependencies]
copykat = [
'rpy2'
]
dev = [
# CLI for managing the python project
"pre-commit",
"bump2version"
]
doc = [
"sphinx>=4.2",
"sphinx-book-theme>=0.3.3",
"myst-nb",
"sphinxcontrib-bibtex>=1.0.0",
"sphinx-autodoc-typehints",
# for tutorial
"ipykernel",
"sphinx-copybutton",
'pycairo',
'jupyter_client',
]
test = [
"pytest",
"pytest-cov",
]
[tool.hatch.version]
source = "vcs"
[tool.coverage.run]
source = ["infercnvpy"]
omit = [
"**/test_*.py",
]
[tool.pytest.ini_options]
testpaths = ["tests"]
xfail_strict = true
addopts = [
# "-Werror", # if 3rd party libs raise DeprecationWarnings, just use filterwarnings below
"--import-mode=importlib", # allow using test files with same name
]
filterwarnings = [
# "ignore:.*U.*mode is deprecated:DeprecationWarning",
]
[tool.isort]
include_trailing_comma = true
multi_line_output = 3
profile = "black"
skip_glob = ["docs/*"]
[tool.black]
line-length = 120
target-version = ['py38']
include = '\.pyi?$'
exclude = '''
(
/(
\.eggs
| \.git
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| _build
| buck-out
| build
| dist
)/
)
'''
[tool.jupytext]
formats = "ipynb,md"
[tool.cruft]
skip = [
"tests",
"src/**/__init__.py",
"src/**/basic.py",
"docs/api.md",
"docs/changelog.md",
"docs/references.bib",
"docs/references.md",
"docs/notebooks/example.ipynb"
]