Metadata-Version: 2.2
Name: bulum
Version: 0.2.10
Summary: Open source python library for assessing hydrologic model results in Queensland
Home-page: https://bitbucket.org/odhydrology/bulum.git
Author: Chas Egan
Author-email: chas@odhydrology.com
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE.md
Requires-Dist: altair[all]>=5.5.0
Requires-Dist: folium>=0.14
Requires-Dist: matplotlib>=3.8.3
Requires-Dist: numpy>=1.26.4
Requires-Dist: pandas>=2.2.0
Requires-Dist: plotly>=5.18.0
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# bulum

## Installation

This package may be installed using pip from GitHub, directly from PyPi (public), or from a .tar.gz. Examples are shown below.

```bash
pip install git+https://github.com/odhydrology/bulum
```

```bash
pip install bulum
```

```bash
pip install .\dist\bulum-0.0.32.tar.gz
```

## Usage

```python
import bulum

# returns the package version
bulum.__version__

# prints 'Hello world!' to the console
bulum.hello_world()
```

## Build and Upload to PyPi

First build a distribution from an anaconda prompt in the root of your project, and then upload the dist to PyPi using Twine.

```bash
python setup.py sdist
```

```bash
twine upload dist\bulum-0.0.32.tar.gz
```

As of Nov 2023, PyPi uses an API token instead of a conventional password. You can still use Twine, but the username is "__token__", and password is the API token which is very long string starting with "pypi-". 

``` bash
username = __token__
password = pypi-#####################################################################################
```

Where can I find the API token password? Chas has it in his emails. It is also here on the network at *.\ODH working files\Professional development, reading, etc\Software\ODHSoftware\bulum\PyPi_password_and_instructions.txt*.

How do I make a new API token? Go to your PyPi account settings, and click on "API tokens". Then click on "Add API token", and give it a name. The token will be displayed on the next screen.

## Unit Tests

WARNING: Run unit tests from an anaconda environment with compatable dependencies!

Install the nose2 test-runner framework. 

```bash
pip install nose2
```

Then from the root project folder run the nose2 module. You can do this as a python modules, or just direcly from the anaconda prompt (both examples given below). This will automatically find and run tests in any modules named "test_*".

```bash
python -m nose2
```

```bash
nose2
```

You can run specific tests by specifying the module name. Example below.

```bash
nose2 src.bulum.stats.tests
```

## License

Refer to LICENCE.md
