v2023.10.0
Highlights
This release brings performance enhancements to reading Zarr datasets, the ability to use numbagg <https://github.com/numbagg/numbagg>
_ for reductions, an expansion in API for rolling_exp
, fixes two regressions with datetime decoding, and many other bugfixes and improvements. Groupby reductions will also use numbagg
if flox>=0.8.1
and numbagg
are both installed.
Thanks to our 13 contributors:
Anderson Banihirwe, Bart Schilperoort, Deepak Cherian, Illviljan, Kai Mühlbauer, Mathias Hauser, Maximilian Roos, Michael Niklas, Pieter Eendebak, Simon Høxbro Hansen, Spencer Clark, Tom White, olimcc
What's Changed
- [skip-ci] dev whats-new by @kmuehlbauer in #8232
- initial refactor for NamedArray by @andersy005 in #8075
- Bind T_DuckArray to NamedArray by @Illviljan in #8240
- Fix & normalize typing for chunks by @max-sixty in #8247
- Add type hints to maybe_promote in dtypes.py by @Illviljan in #8243
- Refine
chunks=None
handling by @max-sixty in #8249 - Add modules to
check-untyped
by @max-sixty in #8242 - update pytest config and un-xfail some tests by @mathause in #8246
- Accept
lambda
forother
param by @max-sixty in #8256 - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #8262
- Update type annotation for center argument of dataaray_plot methods by @eendebakpt in #8261
- Use strict type hinting for namedarray by @Illviljan in #8241
- Add xarray-regrid to ecosystem.rst by @BSchilperoort in #8270
- copy the
dtypes
module to thenamedarray
package. by @andersy005 in #8250 - Mandate kwargs on
to_zarr
by @max-sixty in #8257 - Don't raise rename warning if it is a no operation by @hoxbro in #8266
- Use duck array ops in more places by @tomwhite in #8267
- make more args kw only (except 'dim') by @mathause in #6403
- Allow a function in
.sortby
method by @max-sixty in #8273 - Fix datetime encoding precision loss regression for units requiring floating point values by @spencerkclark in #8272
- Remove if condition to trigger mypy by @Illviljan in #8280
- Improved typing of align & broadcast by @headtr1ck in #8234
- Add pyright type checker by @Illviljan in #8279
- Ask bug reporters to confirm they're using a recent version of xarray by @max-sixty in #8283
- Fix
GroupBy
import by @max-sixty in #8286 - Enable
.rolling_exp
to work on dask arrays by @max-sixty in #8284 - Rename
reset_encoding
todrop_encoding
by @max-sixty in #8287 - mypy 1.6.0 passing by @max-sixty in #8296
- xfail flaky test by @max-sixty in #8299
- Remove real, imag, astype methods from NamedArray by @Illviljan in #8295
- Avoid redundant metadata reads in
ZarrArrayWrapper
by @olimcc in #8297 - Update labeler.yml to add NamedArray by @dcherian in #8305
- Add
min_weight
param torolling_exp
functions by @max-sixty in #8285 - Handle numpy missing the array api function astype by @Illviljan in #8315
- Reverse type checks for better type inheritance by @Illviljan in #8313
- Fix typing issues in tests by @Illviljan in #8312
- Remove a couple of trailing commas in tests by @max-sixty in #8321
- Remove redundant check in IndexVariable by @Illviljan in #8320
- Move Variable aggregations to NamedArray by @dcherian in #8304
- Refine curvefit doctest by @max-sixty in #8328
- Use shape and dtype as typevars in NamedArray by @Illviljan in #8294
- Enable numbagg for reductions by @dcherian in #8316
- Remove np.asarray in formatting.py by @dcherian in #8100
- fix regression in time-like check when decoding masked data by @kmuehlbauer in #8277
- Add docs to
reindex_like
re broadcasting by @max-sixty in #8327 - Add
corr
,cov
,std
&var
to.rolling_exp
by @max-sixty in #8307 - Request to adjust pyright config by @max-sixty in #8329
- Docs: Add syntax for registering backends in
pyproject.toml
by @ZedThree in #8331 - internal: Improve version handling for numbagg by @max-sixty in #8325
- Whats-new: 2023.10.0 by @dcherian in #8334
New Contributors
- @eendebakpt made their first contribution in #8261
- @BSchilperoort made their first contribution in #8270
- @hoxbro made their first contribution in #8266
- @olimcc made their first contribution in #8297
Full Changelog: v2023.09.0...v2023.10.0