v2024.03.0
What's Changed
- new whats-new section by @keewis in #8767
- [skip-ci] NamedArray: Add lazy indexing array refactoring plan by @dcherian in #8775
- refactor
indexing.py
: introduce.oindex
for Explicitly Indexed Arrays by @andersy005 in #8750 - Fixing issue #8770: Improved frequency parameter logic to set it to 'D' only if periods, start, or end are None. by @rjavierch in #8774
- Bump the actions group with 2 updates by @dependabot in #8785
- introduce
.vindex
property for Explicitly Indexed Arrays by @andersy005 in #8780 - Migrate treenode module. by @flamingbear in #8757
- Fix non-nanosecond casting behavior for
expand_dims
by @spencerkclark in #8782 - fix: remove Coordinate from all in xarray/init.py by @hassec in #8791
- tokenize() should ignore difference between None and {} attrs by @crusaderky in #8797
- Bump the actions group with 2 updates by @dependabot in #8804
- Grouper object design doc by @dcherian in #8510
- Refactor Grouper objects by @dcherian in #8776
- DOC: link to zarr.convenience.consolidate_metadata by @raybellwaves in #8816
- Update documentation for clarity by @staadecker in #8817
- Bump the actions group with 1 update by @dependabot in #8818
- try to get the
upstream-dev
CI to complete again by @keewis in #8823 - Do not attempt to broadcast when global option
arithmetic_broadcast=False
by @etienneschalk in #8784 - Make list_chunkmanagers more resilient to broken entrypoints by @hmaarrfk in #8736
- Add
dask-expr
to environment-3.12.yml by @dcherian in #8827 - [skip-ci] Add dask-expr dependency to doc.yml by @andersy005 in #8835
- Add dask-expr for windows envs by @dcherian in #8837
- [skip-ci] Fix upstream-dev env by @dcherian in #8839
- Return a dataclass from Grouper.factorize by @dcherian in #8777
- Expand use of
.oindex
and.vindex
by @andersy005 in #8790 - correctly encode/decode _FillValues/missing_values/dtypes for packed data by @kmuehlbauer in #8713
- Support pandas copy-on-write behaviour by @dcherian in #8846
- Implement setitem syntax for
.oindex
and.vindex
properties by @andersy005 in #8845 - FIX: do not cast _FillValue/missing_value in CFMaskCoder if _Unsigned is provided by @kmuehlbauer in #8852
- FIX: adapt handling of copy keyword argument in scipy backend for numpy >= 2.0dev by @kmuehlbauer in #8851
- pandas 3 MultiIndex fixes by @dcherian in #8847
- increase typing annotations coverage in
xarray/core/indexing.py
by @andersy005 in #8857 - upstream-dev CI: Fix interp and cumtrapz by @dcherian in #8861
- numpy 2.0 copy-keyword and trapz vs trapezoid by @kmuehlbauer in #8865
- Handle .oindex and .vindex for the PandasMultiIndexingAdapter and PandasIndexingAdapter by @andersy005 in #8869
- Update docs on view / copies by @ks905383 in #8744
- Opt out of auto creating index variables by @TomNicholas in #8711
- groupby: Dispatch quantile to flox. by @dcherian in #8720
- warn and return bytes undecoded in case of UnicodeDecodeError in h5netcdf-backend by @kmuehlbauer in #8874
- Migrate datatree.py module into xarray.core. by @owenlittlejohns in #8789
- Don't allow overwriting indexes with region writes by @dcherian in #8877
- Allow multidimensional variable with same name as dim when constructing dataset via coords by @TomNicholas in #8886
- Optimize writes to existing Zarr stores. by @dcherian in #8875
- Add dt.date to plottable types by @saschahofmann in #8873
- Check for aligned chunks when writing to existing variables by @max-sixty in #8459
- Avoid in-place multiplication of a large value to an array with small integer dtype by @Illviljan in #8867
- Add typing to test_groupby.py by @Illviljan in #8890
- 2024.03.0: Add whats-new by @dcherian in #8891
New Contributors
- @rjavierch made their first contribution in #8774
- @hassec made their first contribution in #8791
- @staadecker made their first contribution in #8817
- @ks905383 made their first contribution in #8744
- @owenlittlejohns made their first contribution in #8789
- @saschahofmann made their first contribution in #8873
Full Changelog: v2024.02.0...v2024.03.0