# Contributing to `pyXla`

`pyXla` is a flexible and generic framework for explainable landscape analysis.

## Install the Required Packages (i.e pytest, sphinx)
Navigate to the `src/` directory and then run:

```
$ pip install -r requirements.txt
```

## How to Run Tests
Navigate to the `src/` directory and then run:

```
$ pytest
```

Some tests will fail on the first run. Re-run again to get all tests to pass.

## How to Build Documentation
Navigate to the `docs/` directory and then run:

```
$ make clean html
```

The built docs will be saved in `docs/build/` directory

## Publishing the Package
The package specification is the file `pyproject.toml` located at the root of the project. To publish a new version follow these steps:

1. Update version in `src/pyxla/__about__.py`.

1. Build the source:
    ```bash
    hatch build
    ```

1. Publish:
    ```bash
    hatch publish
    ```