This release brings support for pandas ExtensionArray objects, optimizations when reading Zarr, the ability to concatenate datasets without pandas indexes,
more compatibility fixes for the upcoming numpy 2.0, and the migration of most of the xarray-datatree project code into xarray main
!
Thanks to the 18 contributors to this release:
Aimilios Tsouvelekakis, Andrey Akinshin, Deepak Cherian, Eni Awowale, Ilan Gold, Illviljan, Justus Magin, Mark Harfouche, Matt Savoie, Maximilian Roos, Noah C. Benson, Pascal Bourgault, Ray Bell, Spencer Clark, Tom Nicholas, ignamv, owenlittlejohns, and saschahofmann.
What's Changed
- Update reference to 'Weighted quantile estimators' by @AndreyAkinshin in #8898
- New empty whatsnew entry by @TomNicholas in #8899
- Bump the actions group with 1 update by @dependabot in #8896
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #8900
- Update docstring for compute and persist by @saschahofmann in #8903
- Stateful tests with Dataset by @dcherian in #8658
- Trigger hypothesis stateful tests nightly by @dcherian in #8907
- Don't access data when creating DataArray from Variable. by @dcherian in #8754
- Add typing to test_plot.py by @Illviljan in #8889
- Update hypothesis action to always save the cache by @dcherian in #8913
- Bump codecov/codecov-action from 4.1.1 to 4.2.0 in the actions group by @dependabot in #8918
- Add typing to some functions in indexing.py by @Illviljan in #8922
- Enhance the ugly error in constructor when no data passed by @aimtsou in #8920
- Migrate iterators.py for datatree. by @owenlittlejohns in #8879
- MAINT: use sphinxext-rediraffe conda install by @raybellwaves in #8936
- use
pd.to_timedelta
instead ofTimedeltaIndex
by @keewis in #8938 - adapt more tests to the copy-on-write behavior of pandas by @keewis in #8940
- Correct save_mfdataset docstring by @TomNicholas in #8934
- Bump codecov/codecov-action from 4.2.0 to 4.3.0 in the actions group by @dependabot in #8943
- Convert 360_day calendars by choosing random dates to drop or add by @aulemahal in #8603
- Add mypy to dev dependencies by @max-sixty in #8947
- Migrate datatree mapping.py by @owenlittlejohns in #8948
- (feat): Support for
pandas
ExtensionArray
by @ilan-gold in #8723 - Migrate formatting_html.py into xarray core by @eni-awowale in #8930
- use
nan
instead ofNaN
by @keewis in #8961 - stop pruning datatree_ directory from distribution by @flamingbear in #8953
- Delete pynio backend. by @dcherian in #8971
- Migrate datatreee assertions/extensions/formatting by @owenlittlejohns in #8967
- Bump dependencies incl
pandas>=2
by @dcherian in #8968 - Option to not auto-create index during expand_dims by @TomNicholas in #8960
- Raise errors on new warnings from within xarray by @max-sixty in #8974
- more engine environment tricks in preparation for
numpy>=2
by @keewis in #8978 - CI: python 3.12 by default. by @dcherian in #8969
- Switch all methods to
dim
by @max-sixty in #8982 - Docstring and documentation improvement for the Dataset class by @noahbenson in #8973
- Add notes on when to add ignores to warnings by @max-sixty in #8987
- Remove
.drop
warning allow by @max-sixty in #8988 - Skip flaky
test_open_mfdataset_manyfiles
test by @max-sixty in #8989 - clean up the upstream-dev setup script by @keewis in #8986
- avoid a couple of warnings in
polyfit
by @keewis in #8939 - Migration of datatree/ops.py -> datatree_ops.py by @flamingbear in #8976
- Mark
test_use_cftime_false_standard_calendar_in_range
as an expected failure by @spencerkclark in #8996 - call
np.cross
with 3D vectors only by @keewis in #8993 - Fix syntax error in test related to cupy by @hmaarrfk in #9000
- Add argument check_dims to assert_allclose to allow transposed inputs (#5733) by @ignamv in #8991
- Faster fastpath by @hmaarrfk in #9001
- Speed up localize by @Illviljan in #8536
- Bump codecov/codecov-action from 4.3.0 to 4.3.1 in the actions group by @dependabot in #9004
- Port negative frequency fix for
pandas.date_range
tocftime_range
by @spencerkclark in #8999 - Fix for ruff 0.4.3 by @max-sixty in #9007
- Trigger CI only if code files are modified. by @dcherian in #9006
- Zarr: Optimize
region="auto"
detection by @dcherian in #8997 - Add a benchmark to monitor performance for large dataset indexing by @hmaarrfk in #9012
- Avoid extra read from disk when creating Pandas Index. by @dcherian in #8893
- Fix benchmark CI by @dcherian in #9013
- Avoid auto creation of indexes in concat by @TomNicholas in #8872
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #9005
- Zarr: Optimize appending by @dcherian in #8998
- Add whatsnew entry for #8974 by @max-sixty in #9022
- Release summary for v2024.05.0 by @TomNicholas in #9021
New Contributors
- @AndreyAkinshin made their first contribution in #8898
- @aimtsou made their first contribution in #8920
- @ilan-gold made their first contribution in #8723
- @eni-awowale made their first contribution in #8930
- @noahbenson made their first contribution in #8973
- @ignamv made their first contribution in #8991
Full Changelog: v2024.03.0...v2024.05.0