Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
0.7.0 - 2025-08-15
Added
- Documentation pages added using mkdocs (PR #254, @JMGilbert)
- Added discounting option
constant_gwr, which applies discounting across SSPs (PR #405, @JMGilbert).
Changed
- The function signature for
calculate_labor_batch_damages()insrc/dscim/preprocessing/input_damages.pywas updated to include additional args with default values that allow the labor SCC application to run without modifyingdscimcode in the future. This is backwards compatible. (PR #415, @JMGilbert). - Python version for running automated tests in CI upgraded from Python 3.10 to 3.12 (PR #270, @brews).
Fixed
- Fixed how quantile regression SCCs (
quantreg) are calculated by allowing for the full cloud of damage points in the damage function fit stage (previously thebatchdimension was incorrectly reduced before damage function fit even ifquantreg=True) (PR #405, @JMGilbert). - Minor code cleanup. Switch old %-string formatting to use f-strings (PR #351, @brews).
- Pin
numcodecspackage to 0.15.1 to fix automated tests in CI. This works withzarr < 3. (PR #406, @JMGilbert). - Pin
statsmodelsto 0.14.5 to fix automated tests in CI. (PR #429, @C1587S).
Removed
- Removed
preprocessing/climateandpreprocessing/miscsubpackages. (PR #249, @JMGilbert)- The modules in these subpackages referenced hard coded filepaths and were used for old versions of climate files and inputs that are now properly formatted by default
- Removed
utils/generate_yamlandutils/plotting_utilsmodules. (PR #249, @JMGilbert)generate_yamlseems to have been designed for an old version ofdscim-epaand that functionality has now been transferred to thescripts/directory_setup.pyscript in thedscim-epaanddscim-facts-eparepositoriesplotting utilswas only in use for a single diagnostic and was transferred to the script that generated that diagnostic
- Removed
midprocessingupdate_damage_function_libraryandutilsconstant_equivalent_discount_rate,calculate_constant_equivalent_discount_rate, andget_model_weightsfunctions. (PR #249, @JMGilbert)update_damage_function_librarywas previously used to move files prior to the functionality that directly saved files into the appropriate locationconstant_equivalent_discount_rateandcalculate_constant_equivalent_discount_rateare used for integration paper tables, and have been transferred to the appropriate scriptsget_model_weightsis used for a few diagnostics and has been transferred to the appropriate scripts
0.6.0 - 2024-04-24
Added
- Add an option for producing SCC ranges that account for only statistical uncertainty. (PR #143, @davidrzhdu)
Fixed
- Fix concatenate_energy_damages netcdf saving functionality which was not clearing data encoding causing some coordinates to be truncated. (PR #229, @JMGilbert)
- Fix tests broken by sorting update in pandas v2.2.1 (PR #216, @JMGilbert)
0.5.0 - 2023-11-17
Added
- Add naive list of package dependencies to pyproject.toml.(PR #123, @brews)
- CI, coverage, DOI badges on README. (PR #134, @brews)
Changed
- Dropped optional/unused dependencies
click,dask-jobqueue,geopandas,gurobipy,ipywidgets,seaborn. (PR #99, @brews) - Switch build system from
setuptoolstohatchling. (PR #128, @brews) - Clean up unit test for
dscim.utils.utils.c_equivalence. (PR #135, @brews) - Reformat gmst/gmsl pulse files by removing unnecessary dimensions and indices. (PR #169, @JMGilbert)
Fixed
- Fix DeprecationWarning on import. (PR #128, @brews)
- Fix write-to-copy warning in
process_rff_sample(). (PR #116, @brews) - Fix exception from indexing with dask-backed boolean array and input climate Dataset attrs collision with xarray >= v2023.3.0. (PR #129, @brews)
- Fix bad release header links in CHANGELOG.md. (PR #105, @brews)
- Fixed broken code quality checks in CI. Now using
ruffinstead offlake8. (PR #107, @brews) - Minor code style cleanup. (PR #133, @brews)
0.4.0 - 2023-07-06
Added
- Functions to concatenate input damages across batches. (PR #83, @davidrzhdu)
- New unit tests for dscim/utils/input_damages.py. (PR #68, @davidrzhdu)
- New unit tests for dscim/utils/rff.py. (PR #73, @JMGilbert)
- New unit tests for dscim/dscim/preprocessing.py. (PR #67, @JMGilbert)
- Functions used for producing RFF weights. (PR #66, @davidrzhdu)
Changed
- Re-enable equity menu option tests. (PR #84, @JMGilbert)
- Changed
coastal_inputsfunction to work with new version of coastal outputs. (PR #75, @davidrzhdu) - Changed
prep_mortality_damagesfunction to work with new format mortality outputs. (PR #74 and PR #68, @JMGilbert) - Included US territories in damages and economic variable subsetting. (PR #78, @JMGilbert)
- Changed format of
eta_rhosto allow for multiple values ofrhofor the sameeta. (PR #65, @JMGilbert) - Removed incomplete "time_trend" extrapolation option from
dscim.utils.utils.model_outputs(), along with unused function arguments. This is a breaking change. (PR #53, @brews)
Removed
- Removed
clip_damagefunction indscim/preprocessing/preprocessing.py. (PR #67, @JMGilbert) - Removed climate reformatting functions and files -- to be added back with climate file generation. (PR #67, @JMGilbert)
- Remove diagnostics module. (PR #60, @JMGilbert)
- Remove old/unnecessary files. (PR #57, @JMGilbert)
- Remove unused “save_path” and “ec_cls” from
read_energy_files_parallel(). (PR #56, @davidrzhdu)
Fixed
- Make all input damages output files with correct chunksizes. (PR #83, @JMGilbert)
- Add
.load()to every loading of population data from EconVars. (PR #82, @davidrzhdu) - Make
compute_ag_damagesfunction correctly save outputs in float32. (PR #72 and PR #82, @davidrzhdu) - Make rff damage functions read in and save out in the proper filepath structure. (PR #79, @JMGilbert)
- Enter the proper functional form of isoelastic utility when
eta = 1. (PR #65, @JMGilbert) - Pin numpy version to stop tests failing. (PR #60, @JMGilbert)
0.3.0 - 2022-09-29
Added
Changed
- Removed unused “pulseyrs” and “global_cons” from
convert_old_to_newformat_AR()andrun_rff(). Note this is a breaking change. (PR #51, @davidrzhdu, @kemccusker) - Updated README with additional technical details. (PR #49, @brews)
Fixed
- Fix xarray
.drop()deprecation. (PR #54, @brews) - Fix pathlib.Path/str
TypeErrorinpreprocessing.clip_damages(). (PR #55, @brews) - Minor fixes to docstrs. (PR #50, PR #52, @brews)
0.2.1 - 2022-09-22
Fixed
- Fix issue #45 by allowing for
emission_scenarioto beNone. (PR #46, PR #47, @JMGilbert)
0.2.0 - 2022-09-16
Changed
- Remove mutable argument defaults to avoid gotchas. (PR #44, @brews)
- Quiet unused(?), common, logging messages to terminal. (PR #14, @brews)
Fixed
0.1.0 - 2022-08-30
- Initial release.