Releases: CSHS-CWRA/RavenPy
Releases · CSHS-CWRA/RavenPy
v0.13.1
v0.14.0
What's Changed
- Update dependencies by @Zeitsperre in #337
- Install raven-hydro from official git sources by @Zeitsperre in #341
- Bump github/codeql-action from 2 to 3 by @dependabot in #349
- Bump actions/checkout from 3 to 4 by @dependabot in #347
- Bump actions/setup-python from 4 to 5 by @dependabot in #348
- Add support for new processes and methods added in v3.8 by @huard in #335
- use np.maximum() instead of boolean indexing. by @tlogan2000 in #350
- Open raven-hydro pin by @Zeitsperre in #351
- Filter HRUs with unrecognized hru_type attribute by @huard in #344
- Small fixes to support HBVECMOD emulator out of the box by @huard in #338
- Prepare v0.14.0 by @Zeitsperre in #353
New Contributors
- @dependabot made their first contribution in #349
- @tlogan2000 made their first contribution in #350
Full Changelog: v0.13...v0.14.0
v0.13
What's Changed
- Updated Notebooks 03 and 04 by @richardarsenault in #319
- Pin cf-xarray for Python3.8 by @Zeitsperre in #325
- Handle scalar elevation values in nc_specs by @huard in #323
- Fix Coveralls Workflows by @Zeitsperre in #328
- Add sensitivity nb by @richardarsenault in #320
- Fix notebook execution by @Zeitsperre in #329
- Upgrade to pydantic v2 by @huard in #326
- Refactor and simplify testing data fetching by @Zeitsperre in #332
Full Changelog: v0.12.3...v0.13
v0.12.3
What's Changed
- Skip manual install of NetCDF-python binaries on macos by @Zeitsperre in #298
- Fixed random seed application in Spotpy by @richardarsenault in #300
- Add platformdirs for consistent testing data caching by @Zeitsperre in #303
- Set check_missing to fit time series by @huard in #308
- Remove obsolete caches GitHub Workflow by @Zeitsperre in #305
- Added the paper pdf to the notebook by @Zeitsperre in #311
- Configurable servers by @Zeitsperre in #312
- Prepare v0.12.3 by @Zeitsperre in #314
Full Changelog: v0.12.2...v0.12.3
v0.12.2
What's Changed
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #291
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #292
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #293
- Pin Pydantic below v2.0, update raven-hydro to v0.2.3, prepare release by @Zeitsperre in #295
Full Changelog: v0.12.1...v0.12.2
v0.12.1
What's Changed
- Update publishing workflows to reflect new structure by @Zeitsperre in #286
- Documentation adjustments by @Zeitsperre in #287
- Store Dataset in OutputReader class to avoid calling open_dataset repeatedly by @huard in #289
Full Changelog: v0.12.0...v0.12.1
v0.12.0
What's Changed
This release includes major breaking changes. It completely overhauls how models are defined, and how to run
simulations. Code relying on the previous release will most likely break. Please check the documentation
to see how to use the new improved interface.
- Clean new config by @huard in #269
- Adopt PEP 517 and PEP 621, use raven-hydro package by @Zeitsperre in #278
- Add zenodo configuration by @Zeitsperre in #266
- Fix file-access errors with newest NetCDF4, adjust testing default settings by @Zeitsperre in #267
- Code QL scanning by @Zeitsperre in #268
- Fix NB09 & clarification by @Mayetea in #275
- Maintain Python3.8 by @Zeitsperre in #276
New Contributors
Full Changelog: v0.11.0...v0.12.0
v0.11.0
What's Changed
- Manifest updates by @Zeitsperre in #247
- Use xclim v040 by @Zeitsperre in #253
- Use mamba-org/provision-with-micromamba Action with caching by @Zeitsperre in #257
- Update black by @Zeitsperre in #258
- Update Fiona to v1.9 by @Zeitsperre in #256
- Update install and configuration instructions by @Zeitsperre in #259
- Use raven-hydro v3.6 by @Zeitsperre in #260
Full Changelog: v0.10.0...v0.11.0
v0.10.0
What's Changed
- Use Raven model framework version 3.5 by @Zeitsperre in #240
- Pin setuptools in tox and in GitHub workflows by @Zeitsperre in #2
- Relax geo test precision by @huard in #246
Full Changelog: v0.9.0...v0.10.0
v0.9.0
Breaking changes
- HRUState's signature has changed. Instead of passing variables as keyword arguments (e.g.
soil0=10.), it now expects astatedictionary keyed by variables' Raven name (e.g.{"SOIL[0]": 10}). This change makesrvc` files easier to read, and avoids Raven warnings regarding 'initial conditions for state variables not in model'. nc_indexrenamed tometeo_idxto enable the specification of distinct indices for observed streamflow usinghydro_idx.nc_indexremains supported for backward compatibility.- The distributed python testing library,
pytest-xdistis now a testing and development requirement. xarrayhas been pinned below "2022.11.0" due to incompatibility withclimpred=="2.2.0".
New features
- Add support for hydrometric gauge data distinct from meteorological input data. Configuration parameter
hydro_idxidentifies the gauge station index, whilemeteo_idx(previouslync_index) stands for the meteo station index. - Add support for multiple gauge observations. If a list of
hydro_idxis provided, it must be accompanied with a list of corresponding subbasin identifiers (gauged_sb_ids) of the same length. - Automatically infer scale and offset
:LinearTransformparameters from netCDF file metadata, so that input data units are automatically converted to Raven-compliant units whenever possible. - Add support for the command
:RedirectToFile. Tested for grid weights only. - Add support for the command
:WriteForcingFunctions. - Add support for the command
:CustomOutput. - Multiple other new RavenCommand objects added, but not integrated in the configuration, including
:SoilParameterList,:VegetationParameterListand:LandUseParameterList. - Multichoice options (e.g. calendars) moved from RV classes to
config.options, but aliases created for backward compatibility. - Patch directory traversal vulnerability (
CVE-2007-4559 <https://github.com/advisories/GHSA-gw9q-c7gh-j9vm>_). - A local copy of the raven-testdata with environment variable (
RAVENPY_TESTDATA_PATH) set to that location is now no longer needed in order to run the testing suite. Test data is fetched automatically and now stored at~/.raven_testing_data. - RavenPy now leverages
pytest-xdistto distribute tests among Python workers and significantly speed up the testing suite, depending on number of available CPUs. File access within the testing suite has also been completely rewritten for thread safety.- On pytest launch with "
--numprocesses> 0", testing data will be fetched automatically fromOuranosinc/raven-testdataby one worker, blocking others until this step is complete. Spawned pytest workers will then copy the testing data to their respective temporary directories before beginning testing.
- On pytest launch with "
- To aid with development and debugging purposes, two new environment variables and pytest fixtures are now available:
- In order to skip the data collection step:
export SKIP_TEST_DATA=true - In order to target a specific branch of
Ouranosinc/raven-testdatafor data retrieval:export MAIN_TESTDATA_BRANCH="my_branch" - In order to fetch testing data using the user-set raven-testdata branch, pytest fixtures for
get_fileandget_local_testdataare now available for convenience
- In order to skip the data collection step: