Installation#

$ pip install xarray-ms

xarray-ms has a minimal set of dependencies. If cubed, dask or zarr support is required for use with xarray, they must be installed separately.

pip install cubed dask[array] distributed zarr

Development#

Firstly, install Python Poetry.

Then, the following commands will install the required dependencies, optional testing dependencies, documentation and development dependencies in a suitable virtual environment:

$ cd /code/arcae
$ poetry env use 3.11
$ poetry install -E testing --with doc --with dev
$ poetry run pre-commit install
$ poetry shell

The pre-commit hooks can be manually executed as follows:

$ poetry run pre-commit run -a

Test Suite#

Run the following command within the arcae source code directory to execute the test suite

$ cd /code/arcae
$ poetry install -E testing --with dev
$ poetry run py.test -s -vvv tests/

Documentation#

Run the following command within the doc sub-directory to build the Sphinx documentation

$ cd /code/arcae
$ poetry install --with doc
$ poetry shell
$ cd doc
$ make html

Release Process#

For a new version number, say 0.2.0, perform the following operations on the main branch:

  1. Edit doc/source/changelog.rst to reflect the new version.

  2. Run

    $ tbump --dry-run 0.2.0
    
  3. If 2. succeeds, run

    $ tbump 0.2.0