Skip to content

Commit

Permalink
Merge pull request #5 from ThibHlln/release-v0.2.2
Browse files Browse the repository at this point in the history
Release v0.2.2
  • Loading branch information
ThibHlln authored Feb 14, 2022
2 parents 5efb403 + c01e6bf commit 6870c4f
Show file tree
Hide file tree
Showing 301 changed files with 114,650 additions and 336 deletions.
52 changes: 52 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Tests

on:
push:
branches: [dev]
pull_request:
types: [ready_for_review]

jobs:

run-tests:

strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: [3.7, 3.8, 3.9]
fail-fast: false

runs-on: ${{ matrix.os }}

defaults:
run:
shell: bash -l {0}

steps:

- name: check out repository
uses: actions/checkout@v2

- name: set up conda environment
uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: testing-env
python-version: ${{ matrix.python-version }}
auto-update-conda: true
mamba-version: "*"
channels: conda-forge
channel-priority: true

- name: install package dependencies
run: |
mamba install -c conda-forge netCDF4
mamba install -c conda-forge spotpy>=1.5.14
mamba install --file=requirements.txt
- name: install package
run: |
pip install -e .
- name: run all tests
run: |
(cd ./tests && python run_all_tests.py)
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -50,3 +50,6 @@ $RECYCLE.BIN/
Network Trash Folder
Temporary Items
.apdisk

# ignore documentation built because copied in docs/ root already
docs/_doc_build
221 changes: 123 additions & 98 deletions LICENCE.md → LICENCE.rst

Large diffs are not rendered by default.

90 changes: 0 additions & 90 deletions README.md

This file was deleted.

22 changes: 22 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
An implementation of the rainfall-runoff model SMART in Python
==============================================================

.. image:: https://img.shields.io/pypi/v/smartpy?style=flat-square
:target: https://pypi.python.org/pypi/smartpy
:alt: PyPI version
.. image:: https://img.shields.io/badge/dynamic/json?url=https://zenodo.org/api/records/2564041&label=doi&query=doi&style=flat-square
:target: https://zenodo.org/badge/latestdoi/118467753
:alt: DOI
.. image:: https://img.shields.io/badge/License-GPL%20v3-blue.svg?style=flat-square
:target: https://www.gnu.org/licenses/gpl-3.0
:alt: Licence GPL-3.0
.. image:: https://img.shields.io/github/workflow/status/ThibHlln/smartpy/Tests?style=flat-square&label=tests
:target: https://github.com/ThibHlln/smartpy/actions/workflows/tests.yml
:alt: Tests Status

`smartpy` is an open-source Python version of the catchment model SMART
(Soil Moisture Accounting and Routing for Transport). SMART is a bucket-style
rainfall-runoff model composed of a soil moisture accounting component and
linear routing components. It requires rainfall and potential evapotranspiration
time series as input, it features a set of ten parameters, and it yields
a discharge time series as output.
135 changes: 135 additions & 0 deletions changelog.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
.. default-role:: obj

..
latest
------
Yet to be versioned and released. Only available from *dev* branch until then.


v0.2.2
------

Released on 2022-02-14.

.. rubric:: General

* drop support for Python 2.7.x and Python < 3.7

.. rubric:: Big fixes

* fix bug in output writing for `montecarlo` due to change in behaviour in `spotpy`
(`e2f695b <https://github.com/ThibHlln/smartpy/commit/e2f695baa1634a5e371cfe1ccc7705709660a97f>`_)
* fix mistake in routing parameter used for "educated guess" as initial conditions
(`5345b1d <https://github.com/ThibHlln/smartpy/commit/5345b1df012f23e883fe48130fa29f8e991353be>`_)

.. rubric:: Documentation

* add documentation build with `sphinx`
(`#3 <https://github.com/thibhlln/smartpy/pull/3>`_)
* add API reference
(`89dc0b7 <https://github.com/ThibHlln/smartpy/commit/89dc0b781a017bd7a54568004a65894e2420a8e0>`_)

.. rubric:: Tests

* add GitHub workflow to run tests
(`#4 <https://github.com/thibhlln/smartpy/pull/4>`_)


v0.2.1
------

Released on 2018-08-24.

.. rubric:: Algorithm

* check for the duration of the warm-up period against the simulation period
(to avoid the former being greater than the latter)

.. rubric:: Bug fixes

* change test on existence of observed streamflow data in `get_evaluation_array`
method (which was raising a ValueError since v0.2.0)

.. rubric:: Documentation fixes

* update tutorial notebook that was not up-to-date since v0.2.0 and that
contained errors
* update readme file to remove mention of objective functions that do not
exist anymore since v0.2.0


v0.2.0
------

Released on 2018-11-16.

.. rubric:: Algorithm

* redesign of `run` and `run_all_steps` to allow for the use of the
version 0.2.0 of `smartcpp` where a method `allsteps` makes it possible
to go through the whole simulation time series in C++

v0.1.4
------

Released on 2018-11-12.

.. rubric:: Functionality

* make gauged area optional (default to catchment area)
* allow choice on output files to write out
* indicate `smartpy` version in output files

.. rubric:: Algorithm

* use more versatile way to convert Epoch timestamps to DateTime objects

.. rubric:: Bug fixes

* use parallel IO to write NetCDF output files in parallel Monte Carlo simulations
* move netCDF compression to the end of simulation (for netCDF4 v1.4.2 compatibility)

v0.1.3
------

Released on 2018-07-24.

.. rubric:: Algorithm

* add built-in Latin hypercube sampling functionality for Monte Carlo experiments

.. rubric:: Functionality

* add a class `Total` to run existing sampling on an evaluation period
* allow use of netCDF files for outputs (for both single and Monte Carlo runs)
* allow use of netCDF files for sampling (for Monte Carlo runs)
* allow use of netCDF files for evaluation data
* add optional compression when writing CSV files

v0.1.2
------

Released on 2018-07-18.

.. rubric:: Functionality

* allow use of `smartpy` without the need for evaluation data
* add possibility to set parameter values using a dictionary

v0.1.1
------

Released on 2018-07-17.

.. rubric:: Bug fixes

* fix improper display of README on PyPI due to use of outdated `setuptools`,
`twine`, and `wheel` when building the distribution

v0.1.0
------

Released on 2018-07-17.

* first release
4 changes: 4 additions & 0 deletions docs/.buildinfo
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 38dfb233e946842937852e7b199220bd
tags: 645f666f9bcd5a90fca523b33c5a78b7
Empty file added docs/.nojekyll
Empty file.
4 changes: 4 additions & 0 deletions docs/0.2.2/.buildinfo
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 38dfb233e946842937852e7b199220bd
tags: 645f666f9bcd5a90fca523b33c5a78b7
Empty file added docs/0.2.2/.nojekyll
Empty file.
Loading

0 comments on commit 6870c4f

Please sign in to comment.