.. -*- rest -*-
.. vim:syntax=rest

====================
Download and Install
====================

This page covers the necessary steps to install and run RegReg.  Below
is a list of required dependencies, along with additional software
recommendations.

RegReg is currently *ALPHA* quality, but is rapidly improving. If you are
trying to get some work done wait until we have a stable release. For now,
the code will primarily be of interest to developers.

Dependencies
------------

  Python_ 3.10 or later

  NumPy_ and SciPy_

  A C compiler, Cython_ (3.0 or later), meson-python_ and ninja are
  needed to build the extensions from source; ``pip`` installs these
  automatically into an isolated build environment.

Building from source code
-------------------------

From the source directory, build and install with::

    pip install .

For development, install the build tools into your environment and do an
editable install (the Cython extensions are rebuilt on import)::

    pip install meson-python meson ninja cython numpy setuptools_scm
    pip install --no-build-isolation -e .

Run the tests with::

    pytest regreg

.. _Python: https://www.python.org
.. _NumPy: https://numpy.org
.. _SciPy: https://scipy.org
.. _Cython: https://cython.org
.. _meson-python: https://meson-python.readthedocs.io
