# SampleDisco core (CPU) dependencies — no PyTorch.
# The deep-learning stack (torch, scglue, harmony-pytorch) and RAPIDS GPU
# acceleration are NOT installed here — they're OS/driver-specific and you
# install them yourself (see the Installation page). SampleDisco falls back to
# the CPU path when they are absent.
numpy>=1.23
pandas>=1.5
scipy>=1.9
scikit-learn>=1.2
scikit-image>=0.19   # scrublet-based ATAC doublet detection (doublet_detection=True)
scikit-misc>=0.3
statsmodels>=0.13
patsy>=0.5
scanpy>=1.11
anndata>=0.10
muon>=0.1
harmonypy>=0.0.9,<0.0.10   # pin to the pure-NumPy release; harmonypy 0.0.10+ imports torch
python-igraph>=0.10
leidenalg>=0.9
networkx>=3.0
POT>=0.9
pygam>=0.9
numba>=0.57
matplotlib>=3.6
seaborn>=0.12
pyyaml>=6.0
psutil>=5.9
pybedtools>=0.9

# multi-omics gene annotation (scGLUE path, imported at module top)
pyensembl>=2.3
# cluster-DGE (RAISIN) — both on the live downstream path
combat>=0.3
adjustText>=1.0
# NOTE: scGLUE (only for training GLUE from scratch) is NOT a dependency here —
# install it yourself from PyPI (`pip install scglue`), never `conda install -c
# bioconda scglue` — the bioconda recipe caps numpy<1.22 and breaks the stack.
