Releases: CLIMADA-project/climada_python
Releases · CLIMADA-project/climada_python
v5.0.0
What's Changed
- Bugfix lon_bounds returning range > 360 degrees by @ChrisFairless in #859
- Improve impact calc error messages when there is a mismatch of impf ids between exposures and impfset by @luseverin in #863
- Adding issue templates to Github by @spjuhel in #867
- Feature/centroids as gdf by @chahank in #787
- util.coordinates: remove broken dist_to_coast function by @tovogt in #840
- Catch case where new Hazard fraction is unintentionally zero by @peanutfun in #869
- Let readthedocs build the documentation environment based on env_climada.yml by @peanutfun in #687
- Remove content tables and update tutorial files by @luseverin in #872
- Refine Risk Assessment Terms: Vulnerability and Impact Functions (Update Guide_Introduction.ipynb) by @DahyannAraya in #802
- Add polynomial s shape impact function by @chahank in #878
- split hazard module by @emanuel-schmid in #871
- euler user guide update by @emanuel-schmid in #880
- Make GitHub CI execute unit tests in Petals via reusable workflow by @peanutfun in #855
- Update unsequa to fully support the latest version of SALib by @luseverin in #886
- Create an empty centroids in Hazard.concat() with CRS from the first haz_list. by @manniepmkam in #881
- Fix links in pull request template by @peanutfun in #901
- WIP: Introduce a second version of the Holland 2010 model by @ThomasRoosli in #846
- Allow downgrading of Python and update links in contribution guide by @peanutfun in #900
- Explicitly convert
event_name
to strings inImpact.from_hdf5
by @peanutfun in #894 - Use geopandas.plot() for Centroids.plot() by @sarah-hlsn in #896
- set_geometry by @emanuel-schmid in #889
- Split tropical_cyclone module by @ThomasRoosli in #911
- Add module for calibrating impact functions by @peanutfun in #692
- Add functions to compute, plot, store the local hazard exceedence intensity and RP maps (new branch) by @ValentinGebhart in #898
- Ensure csr matrices are in "canonical format" before impact calculation by @peanutfun in #893
- Feature/set geometry bis by @emanuel-schmid in #912
- fix read the docs by @emanuel-schmid in #922
- Compiled hazard tutorial (some plots were missing) by @ValentinGebhart in #919
New Contributors
- @luseverin made their first contribution in #863
- @spjuhel made their first contribution in #867
- @DahyannAraya made their first contribution in #802
- @ValentinGebhart made their first contribution in #898
Full Changelog: v4.1.1...v5.0.0
v4.1.1
What's Changed
- trop_cyclone: fix for tracks crossing antimeridian by @tovogt in #839
- update to xarray 2024.2 by @emanuel-schmid in #851
Full Changelog: v4.1.0...v4.1.1
v4.1.0
What's Changed
- Remove python version pin from conda specs by @peanutfun in #786
- Fix dist_approx with "geosphere" method and close points by @tovogt in #792
- Goodbye Stamen by @emanuel-schmid in #798
- Encourage contributions in README and CONTRIBUTING by @peanutfun in #797
- Fix exponent clipping in Holland 2010 implementation by @tovogt in #793
- Add shapes argument to geo_im_from_array() in climada.util.plot by @yklpaul0902 in #805
- Change default Hazard.event_name to string of event_id by @sarah-hlsn in #795
- Recommend using Mamba to install CLIMADA by @peanutfun in #809
- Fix Miniforge link in install guide by @peanutfun in #812
- update euler guide by @emanuel-schmid in #794
- fix yearsets.sample_from_poisson by @emanuel-schmid in #823
- DiscRates csv support by @emanuel-schmid in #818
- Fix the exception tests for the latest version of xarray by @peanutfun in #827
- Feature/tc holland vtrans by @ThomasRoosli in #833
- Allow reading Hazard events that are not dates from xarray by @peanutfun in #837
- api-client get_dataset_file by @emanuel-schmid in #821
- adapt to changed worldbank data by @emanuel-schmid in #841
- consequently use get_testfile by @emanuel-schmid in #822
- Improved readability of the developer guide by @sarah-hlsn in #808
- Update environment specs by @peanutfun in #845
- add impact.select reset_frequency option by @timschmi95 in #847
- Integration of CalcDeltaImpact class of unsequa into develop by @simonameiler in #844
- Avoid redundant calls to
np.unique
inImpact.impact_at_reg
by @peanutfun in #848 - Update GitHub CI action versions by @peanutfun in #849
New Contributors
- @yklpaul0902 made their first contribution in #805
- @sarah-hlsn made their first contribution in #795
Full Changelog: v4.0.1...v4.1.0
v4.0.1
What's Changed
- Doc/update readme by @chahank in #778
- move package data by @emanuel-schmid in #781
- Fix empty data frame concatenation in emdat_impact_yearlysum by @emanuel-schmid in #783
- Use GitHub actions for unit testing by @peanutfun in #745
- Antimeridian issue in
get_country_code
by @emanuel-schmid in #785
Full Changelog: v4.0.0...v4.0.1
v4.0.0
What's Changed
- add at_reg_id_event by @aleeciu in #642
- Don't re-project projected polygon gdfs in metre-disaggregation by @Evelyn-M in #666
- Accurate error message for missing configuration by @emanuel-schmid in #670
- Data API data model extension by @emanuel-schmid in #624
- Add setup instructions for VSCode to installatio instructions by @peanutfun in #677
- added assign_centroids for impact objects by @timschmi95 in #602
- Improve lines disaggregation method by @chahank in #679
- Change test data impf.id to test non-default params by @chahank in #676
- Add one test with different impact function by @chahank in #681
- Add section to Guide_CLIMADA_Tutorial.ipynb by @NicolasColombi in #668
- Feature/haz type in step impf by @chahank in #675
- Update Readthedocs installation / unittest instructions by @Evelyn-M in #689
- dependency upgrades by @emanuel-schmid in #682
- Improve impact calc error messages by @leonie-villiger in #691
- fix test.test_exposures_value_pass by @NicolasColombi in #697
- Bugfix: yearsets frequency curve calculations fail by @ChrisFairless in #703
- Update EMDAT VARNAMES for version 2023 by @simonameiler in #701
- Feature/coverage nightlight by @NicolasColombi in #659
- Feature/fix nightlight test by @NicolasColombi in #716
- Allow for numpy arrays in hazard select by @chahank in #719
- Feature/move tests to integration by @NicolasColombi in #709
- Add developer requirements to
setup.py
by @peanutfun in #712 - Deprecate superfluous classmethods of Centroids by @peanutfun in #721
- Suggest installing CLIMADA via conda in installation instructions by @peanutfun in #714
- Feature/change impact total value by @chahank in #702
- Feature/fix nightlight test by @emanuel-schmid in #718
- Avoid
Impact
storing apyproj.CRS
object by @peanutfun in #713 - Docs: Remove env_developer.yml from install guide by @tovogt in #727
- Improve performance of LitPop by @peanutfun in #720
- Reassign centroids by default by @chahank in #730
- TCTracks: Option to read additional variables from IBTrACS (e.g. "nature"/stormtype) by @tovogt in #728
- upgrade_shapely_2.0_fix by @emanuel-schmid in #731
- logging best practice by @emanuel-schmid in #724
- Feature/move unittest by @NicolasColombi in #732
- cleaning up data api file cache by @emanuel-schmid in #737
- Use Pytest for running tests by @peanutfun in #726
- Tag-Refactoring by @emanuel-schmid in #736
- Small text updates in the git development guide. by @chahank in #738
- TCTracks: improve hdf5 I/O by @tovogt in #735
- TCTracks.from_simulations_emanuel: optionally, only load a subset by @tovogt in #741
- Set save_mat=False by @chahank in #746
- Remove all uses of Tag from climada/engine by @peanutfun in #743
- Remove Tag attribute from DiscRates by @emanuel-schmid in #755
- Remove Tag attribute from ImpactFuncSet by @emanuel-schmid in #753
- Remove Tag attribute from MeasureSet by @emanuel-schmid in #754
- api_client: allow searching for None by @emanuel-schmid in #752
- Refactor TropCyclone for external use in other modules by @tovogt in #749
- calculated chunksizes greater than zero by @emanuel-schmid in #762
- Fix bug in centroids natural earth feature test by @peanutfun in #768
- fix hardcoded text elements in the plots of the forecast class by @ThomasRoosli in #769
- Make
Impact.impact_at_reg
support all zero impacts by @peanutfun in #773 - Feature/unsequa multiprocessing by @chahank in #763
- Update installation instructions by @peanutfun in #776
- Remove pandas append to concat by @chahank in #777
- Remove Tag from Hazard by @emanuel-schmid in #767
- Remove Tag from Exposures by @emanuel-schmid in #756
- Tag Removal Modules Structure Rearranged by @emanuel-schmid in #779
New Contributors
- @leonie-villiger made their first contribution in #691
Full Changelog: v3.3.3...v4.0.0
v3.3.3
Release for climada registration in conda-forge
v3.3.1
Description
Patch-relaese with altered base config file so that the basic installation test passes.
Changed
- The base config file climada/conf/climada.conf has an entry for CONFIG.hazard.test_data.
v3.3.0
Dependency Changes
new:
- sparse (>=0.13) for #578
updated:
- python 3.9 - python 3.8 will still work, but python 3.9 is now the default version for installing climada (#614)
- contextily >=1.0 (no longer restricted to <1.2 as
contextily.sources
has been replaced in #517) - cartopy >=0.20.0,<0.20.3 (>=0.20.3 has an issue with geographic crs in plots)
- matplotlib >=3.2,<3.6 (3.6 depends on cartopy 0.21)
Added
climada.hazard.Hazard.from_xarray_raster(_file)
class methods for readingHazard
objects from anxarray.Dataset
, or from a file that can be read byxarray
.
#507, #589, #652.climada.engine.impact.Impact
objects have new methodsfrom_hdf5
andwrite_hdf5
for reading their data from, and writing it to, H5 files #606climada.engine.impact.Impact
objects has a new class methodconcat
for concatenation of impacts based on the same exposures #529.climada.engine.impact_calc
: this module was separated fromclimada.engine.impact
and contains the code that dealing with impact calculation while the latter focuses on impact data #560.- The classes
Hazard
,Impact
andImpactFreqCurve
have a novel attributefrequency_unit
. Before it was implicitly set to annual, now it can be specified and accordingly displayed in plots.
#532. - CONTRIBUTING.md #518.
- Changelog based on the CLIMADA release overview and https://keepachangelog.com template #626.
Changed
- The
Impact
calculation underwent a major refactoring. Now the suggested way to run an impact calculation is byclimada.engine.impact_calc.ImpactCalc.impact()
. #436, #527. - Addition of uncertainty helper methods variables: list of hazard, list of impact function sets, and hazard fraction. This allows to pre-compute hazards or impact function sets from different sources from which one can then sample uniformly. #513
- Full initialization of most Climada objects is now possible (and suggested!) in one step, by simply calling the constructor with all arguments required for coherently filling the object with data: #560, #553, #550, #564, #563, #565, #573, #569, #570, #574, #559, #571, #549, #567, #568, #562.
- It is possible now to set the
fraction
of aHazard
object toNone
which will have the same effect as if it were1
everywhere. This saves a lot of memory and calculation time, #541. - The online documentation has been completely overhauled: #597, #600, #609, #620, #615, #617, #622, #656.
- Updated installation instructions #644
Fixed
- several antimeridian issues: #524, #551, #613.
- bug in
climada.hazard.Centroids.set_on_land()
when coordinates go around the globe: #542, #543. - bug in
climada.util.coordinates.get_country_code()
when all coordinates are on sea. - suppress pointless warnings in plotting functions, #520.
- test coverage improved: #583, #594, #608, #616, #637.
- deprecated features removed: #517, #535,#566,
Deprecated
climada.enginge.impact.Impact.calc()
andclimada.enginge.impact.Impact.calc_impact_yearset()
, #436.
v3.2.0
changed environment:
- scikit-learn >=1.0
>=0.23 - rasterio >=1.2.7,<1.3
>=1.2.7
new features:
- Warning class added. Allows creating warning maps from generic 2d-maps, or form Hazard or Impact objects.
- Set of lines and polygons util functions. Exposures with lines and/or polygons can be disaggregated to points, which can be used to compute impacts that can be reaggregated afterward.
updated features:
- Offline mode for API client enabled. Results from the CLIMADA data api can be cached and re-used later without internet connection.
minor changes:
- Most tutorials and guides have been overhauled and consolidated.
- Updated API wrapper functions: get clearer error messages when data doesn't exist and added method to get the standard centroids to create new hazards.
- If more than one dataset with equal data-type and name meet the requirements, the API client only fetches the newest version, unless
version='any'
is specified.
v3.1.2
minor changes:
- The setup.py and MANIFEST.in files were adapted to include the climada.engine.unsequa module in the package build.