# requirements.txt for pyralysis
#
# Supported interpreters follow ``requires-python`` in pyproject.toml (>=3.11,<3.14); pins here assume that range.
#
# NOTE:
# Some dependencies (e.g., ska-ost-array-config) are only available from the SKA Observatory's private PyPI index.
# When installing this package, you MUST use pip with the --extra-index-url option:
#
#   pip install --extra-index-url https://artefact.skao.int/repository/pypi-internal/simple .
#
# Do NOT add pip options (like --extra-index-url) or -r includes in this file,
# as setuptools' pyproject.toml dynamic dependencies do not support them.

astropy==6.1.7
autopep8==2.2.0
dafits==2.0.0
dask==2024.10.0
dask-ms>=0.2.32
distributed==2024.10.0
matplotlib==3.10.8
more-itertools==10.2.0
multimethod==1.11.2
numba>=0.59.1
numcodecs==0.15.1
# Cap below 2.4: NumPy 2.4 removed np.in1d; astropy 6.1.7 still registers it at import.
numpy>=2.0.0,<2.4.0
psutil==6.1.1
python-casacore==3.7.1
radio-beam==0.3.7
scipy==1.15.0
ska-ost-array-config==5.0.0  # Only available on SKA's private PyPI index
snakeviz==2.2.0
spectral-cube==0.6.5
# 5.0.0 → ska-sdp-datamodels 3.0.0 allows xarray>=2024.09 (needed for zarr format 3).
xarray==2025.8.0
# Cap below 3.2: zarr>=3.2 requires Python >=3.12; keep one line across 3.11–3.13.
zarr>=3.0.0,<3.2


# Optional dependencies for improved performance:
# pyfftw - Optional FFT backend for significantly faster FFT operations
# Install with: pip install pyralysis[pyfftw]
# Or with SKA index: pip install --extra-index-url https://artefact.skao.int/repository/pypi-internal/simple pyralysis[pyfftw]
# Note: --extra-index-url applies globally, so all packages from that index will be tried first
