mcp<3.0,>=2.0.0
anyio<5.0,>=4.9.0
numpy>=1.21.0
pandas>=1.3.0
scipy>=1.7.0
scikit-learn>=1.0.0
statsmodels<1.0,>=0.13.0
certifi>=2024.2.2
cloudpickle>=2.2.0
typing-extensions>=4.12.0
zarr<4.0,>=2.18.0
matplotlib>=3.5.0
seaborn>=0.11.0
Pillow>=8.0.0
scanpy<2.0,>=1.11.0
anndata>=0.11.0
squidpy<2.0,>=1.6.0
flashs<0.3,>=0.2.1
umap-learn>=0.5.0
igraph>=0.9.0
leidenalg>=0.8.0
pydantic<3.0,>=2.12.0
click>=8.0.0

[aestetik]

[aestetik:python_version < "3.14"]
aestetik<0.4,>=0.3.1

[annotation]
tangram-sc>=1.0.0
mllmcelltype>=0.1.0

[annotation:sys_platform != "win32"]
singler>=0.4.0
singlecellexperiment>=0.4.0
celldex>=0.3.0

[cell-communication]
cellphonedb<6.0,>=5.0.0

[cell-communication:python_version < "3.14"]
liana<2.0,>=1.4.0

[cnv]
infercnvpy>=0.4.0

[deconvolution]
flashdeconv>=0.1.0
cell2location>=0.1.4

[deep-learning]
torch<3.0,>=2.0.0
scvi-tools<2.0,>=1.0.0

[dev]
pytest>=8.0.0
pytest-asyncio<2.0,>=0.23.0
black==25.12.0
mypy<2.0,>=1.0.0
types-requests>=2.31.0
ruff==0.14.11
isort==7.0.0
pre-commit<5.0,>=3.0.0

[differential]
pydeseq2>=0.4.0

[enrichment]
gseapy>=1.0.0
enrichmap>=0.1.0
requests<3.0,>=2.31.0

[fastccc]
fastccc-modern<1.1,>=1.0.1.post1

[full]
torch<3.0,>=2.0.0
scvi-tools<2.0,>=1.0.0
scvelo-modern<0.4,>=0.3.4.post2
palantir>=1.0.0
cellphonedb<6.0,>=5.0.0
fastccc-modern<1.1,>=1.0.1.post1
harmonypy>=0.0.9
bbknn>=1.5.0
scanorama>=1.7.0
esda>=2.4.0
libpysal>=4.6.0
networkx>=2.6.0
flashdeconv>=0.1.0
cell2location>=0.1.4
tangram-sc>=1.0.0
mllmcelltype>=0.1.0
gseapy>=1.0.0
enrichmap>=0.1.0
requests<3.0,>=2.31.0
infercnvpy>=0.4.0
pydeseq2>=0.4.0
graphst-modern<1.2,>=1.1.1.post3
stagate-modern<1.1,>=1.0.0.post1
spagcn-modern<1.4,>=1.3.0
spatialde-modern<1.2,>=1.1.3.post2
POT>=0.9.0
paste-modern<1.5,>=1.4.0.post1
stalign-modern<1.1,>=1.0.post1

[full:python_version < "3.14"]
liana<2.0,>=1.4.0
pybanksy<2.0,>=1.3.5

[full:python_version >= "3.12"]
cellrank<3.0,>=2.3.2

[full:sys_platform != "win32"]
singler>=0.4.0
singlecellexperiment>=0.4.0
celldex>=0.3.0

[integration]
harmonypy>=0.0.9
bbknn>=1.5.0
scanorama>=1.7.0

[r-backends]
rpy2<3.7,>=3.6.7
anndata2ri>=1.3.0

[rctd-python]
rctd-py<0.4,>=0.3.7

[registration]
torch<3.0,>=2.0.0
POT>=0.9.0
paste-modern<1.5,>=1.4.0.post1
stalign-modern<1.1,>=1.0.post1

[release]
build==1.5.0
twine==7.0.0

[reproducibility]
requests<3.0,>=2.31.0
statsmodels<1.0,>=0.13.0

[spatial-domains]
torch<3.0,>=2.0.0
graphst-modern<1.2,>=1.1.1.post3
stagate-modern<1.1,>=1.0.0.post1
spagcn-modern<1.4,>=1.3.0

[spatial-domains:python_version < "3.14"]
pybanksy<2.0,>=1.3.5

[spatial-genes]
spatialde-modern<1.2,>=1.1.3.post2

[spatial-stats]
esda>=2.4.0
libpysal>=4.6.0
networkx>=2.6.0

[trajectory]
palantir>=1.0.0

[trajectory:python_version >= "3.12"]
cellrank<3.0,>=2.3.2

[velocity]
scvelo-modern<0.4,>=0.3.4.post2
