Metadata-Version: 2.4
Name: scabha
Version: 2.2.0rc1
Summary: Argument parser and validation tool for (not just) radio interferometry
Author-email: Oleg Smirnov and RATT <osmirnov@gmail.com>, Sphesihle Makhathini <sphemakh@gmail.com>
License-Expression: GPL-3.0
License-File: LICENSE
Requires-Python: <4.0,>=3.9
Requires-Dist: click>=8.1.3
Requires-Dist: dill>=0.3.6
Requires-Dist: omegaconf~=2.1
Requires-Dist: psutil>=5.9.3
Requires-Dist: pydantic<3,>=2.7
Requires-Dist: pyparsing>=3.0.9
Requires-Dist: rich>=13.7.0
Requires-Dist: typeguard>=4.2.1
Requires-Dist: uritools>=5.0.0
Description-Content-Type: text/x-rst


===========
scabha 2.x
===========


|Pypi Version|
|Python Versions|

Scabha is an option parser and parameter validation tool built for (but not limited to) radio interferometry related software applications. The option parser is based on `Click <https://click.palletsprojects.com/>`_.

`Documentation page <https://stimela.readthedocs.io/>`_

`Reference paper <https://doi.org/10.1016/j.ascom.2025.100959/>`_


Installation - User
-------------------

Scabha can be installed using ``pip``. Simply run ``pip install scabha``.

Installation - Developer
------------------------

``uv`` - ``uv`` managed environment
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

After cloning the repo, install with ``uv sync --group dev``. Then run ``uv run pre-commit install`` to set up the pre-commit hooks. By default, you should end up with a correctly configured environment in ``.venv``. ``ruff`` can be invoked manually with ``uv run ruff check`` and ``uv run ruff format``. 


``pip`` managed environment
~~~~~~~~~~~~~~~~~~~~~~~~~~~

After cloning the repo, create a virtual environment with ``virtualenv -p {python_version} path/to/env``. Activate the environment and install with ``pip install -e . --group dev``. Then run ``pre-commit install`` inside the environment to set up the pre-commit hooks. ``ruff`` can be invoked manually with ``ruff check`` and ``ruff format``.

.. |Pypi Version| image:: https://img.shields.io/pypi/v/scabha.svg
                  :target: https://pypi.python.org/pypi/scabha
                  :alt:


.. |Python Versions| image:: https://img.shields.io/pypi/pyversions/scabha.svg
                     :target: https://pypi.python.org/pypi/scabha
                     :alt:
