0.3.1 (December 2023)

* Update setup.py to include Python 3.11, 3.12.

* Per CRAN request, update handling of `climextRemes-package.R`.

* Change defaults for 2nd dataset in `calc_riskRatio_gev` and `calc_riskRatio_pot` to be `NULL` (or `None` in Python) for clarity and so that R and Python behave the same. Users should explicitly provide arguments for the 2nd dataset.

* Allow use of scalar numpy floats or ints as input arguments.

* Fix setting of `__climextRemes_home__` under recent versions of `rpy2` (somewhere between 3.5.1 and 3.5.14) in `__wrap_import()` in `__init__.py` and similar issue with `Fort`, requiring that last line of `robjects.r` be the explicit object/value.

* Change to use of `importlib.metadata` from deprecated `pkg_resources.require`.

* Change default CRAN URL to `https://cran.r-project.org`.

* Modify help information for `scaleFun` to indicate that `logScale` argument controls whether optimization done on log scale.

0.3.0 (August 2022)

* Allow use of no-intercept models, including normalization of covariates.

* Fix setting of initial values for bootstrap fits when `logScale` is `TRUE` for stationary models and `FALSE` for nonstationary models. Also update help information about setting initial values when `logScale=TRUE`.

* Add suggestion that magnitude of y values be around 1 for better optimization performance to help information.

* Update setup.py to include Python 3.9, 3.10.

* Update Conda build to avoid dependence on old pandas and rpy2 (because Anaconda rpy2 is still 2.9.4) by using conda-forge channel. Update instructions to indicate use of conda-forge channel to avoid new dependency issues that seem to have arisen when trying to install rpy2. Update instructions to suggest use of Mamba to avoid hanging on dependency resolution.

* Update approach to conversion to/from R objects to avoid use of custom converter (which was causing issues in rpy2 >= 3.5.0 and was clunky in terms of working with rpy2 internals in rpy2 >= 3.3.0). Now for rpy2 >= 3.0.0 do manual conversion of numpy arrays and pandas dataframes to R objects.

- Fix error with setup of rpy2 converter preventing Python climextremes import when using rpy2 >= 3.5.0.

* Fix error with the rpy2 parsing of R help that was preventing Python climextremes import when using rpy2 >= 3.4.0.

* Fix error in giving default value for `nBlocks` argument in Python help for `fit_pot` and similarly for `nBlocks1` and `nBlocks2` for `calc_riskRatio_pot`.

* Fix syntax error in check of `initial`.

* Add `optimControl` argument for Python to avoid issues with nested dictionaries.

* Pass `upgrade = 'never'` when installing R packages from Python.

* Fix weird case in Conda installation where Conda's R sets `TAR` environment variable incorrectly to `/bin/gtar`.

* Standardize indentation in Python files to four spaces.

0.2.2 (August 2020)

* fixed Python interface so that matrices and arrays (and their dimension arrays) are handled properly when returned to Python from R.

* fixed bug when using upperTail=FALSE in calc_riskRatio_pot and calc_riskRatio_gev.

* corrected naming of output when using lower tail rather than upper tail in various fitting functions.

* added some error trapping.

* fixed problem with Python interface under rpy2 >= 3.3.0.

* modified Python interface's Conda configuration to require pandas <= 0.25.3, since the rpy2 available for Conda is 2.9.4, which won't work with pandas >= 1.0.0

0.2.1 (May 2019)

* added ability to install Python version via pip.

* added compatibility for Python interface for rpy2 >= 3.0.0 (moving to NULLType from RNULLType and automatic conversion to numpy.ndarray when objects returned from R.

* fixed bug in return argument names of calc_logReturnPeriod_fevd.

* fixed bug that try-errors in fevd output not being caught properly in fit_gev or fit_pot; particularly affecting model fits with < 3 observations.

* fixed bug that resulted in the negative of the actual return values when using maxes=FALSE in fit_gev and upperTail=FALSE in fit_pot. Similarly fixed bug that initial values were not negated under the same circumstances before doing the fitting.

* cleaned up extraneous names in $returnValue and $returnValueDiff output.

* Python version now passes warnings produced in R back to the user.

* cleaned up Conda build recipe to be architecture- and Python-version independent. Things might not install smoothly under Python 2 however. 

* changed to modified BSD license and updated citation information.

0.2.0:

* added Koopman confidence interval method to 'calc_riskRatio_binom'.

* added various types of bootstrap confidence intervals (basic, percentile, BCA, bootstrap-t) to 'calc_riskRatio_binom', 'calc_riskRatio_gev', and 'calc_riskRatio_pot'.

* simplified optimization in likelihood-ratio-based confidence intervals for risk ratio.

* fixed a bug in remove_runs() that caused failure to remove any values when upperTail is FALSE; also fixed jittering amount to work regardless of magnitude of values.

* fixed bug in cases where 'x' provided to 'fit_pot' or 'fit_gev' but no regression functions specified.

* added Python version of all examples to Python front end.

* reworked help information for Python front end to show arguments in terms of Python syntax.

* added functionality to update R version from Python and keep Python and R versions in sync.

* forced R warnings to be printed in Python version.

* added Conda deployment information for Python version.

0.1.3:

* now allow users to request multiple return values or return periods (or differences of values or periods)  when using 'fit_gev' and 'fit_pot'.

* added user option to return return quantities (via 'getReturnCalcs'), parameter estimates (via 'getParams') and fitted model information (via 'getFit') from the fitted models in 'calc_riskRatio_gev' and 'calc_riskRatio_pot'.

* added user option 'logScale' to specify if scale should be fit on log scale

* added functionality to avoid standard error calculations of return quantities when fitting bootstrapped datasets to avoid unnecessary computation

* new error trapping to detect when names in formulae are not present in data 'x', 'xNew', or 'xContrast'

* added additional help information regarding convergence failures

0.1.2:

* added check that 'blockIndex' does not put one outside range of 'x', 'weights', or 'proportionMissing'

* added check for NA in 'blockIndex', 'x', 'xObs'

* report warning if risk ratio confidence interval optimization results in estimate of either endpoint of confidence interval equal to an endpoint of the interval (i.e., 'bounds' value) used for optimization

0.1.1: 

* first internal release
