This release continues work on the new :py:class:xarray.Coordinates
object, allows to provide preferred_chunks
when
reading from netcdf files, enables :py:func:xarray.apply_ufunc
to handle missing core dimensions and fixes several bugs.
Thanks to the 24 contributors to this release: Alexander Fischer, Amrest Chinkamol, Benoit Bovy, Darsh Ranjan, Deepak Cherian,
Gianfranco Costamagna, Gregorio L. Trevisan, Illviljan, Joe Hamman, JR, Justus Magin, Kai Mühlbauer, Kian-Meng Ang, Kyle Sunden,
Martin Raspaud, Mathias Hauser, Mattia Almansi, Maximilian Roos, András Gunyhó, Michael Niklas, Richard Kleijn, Riulinchen,
Tom Nicholas and Wiktor Kraśnicki.
What's Changed
- [skip-ci] dev whats-new by @dcherian in #8098
- Refactor update coordinates to better handle multi-coordinate indexes by @benbovy in #8094
- Better error message when trying to set an index from a scalar coordinate by @benbovy in #8109
- Fix merge with compat=minimal (coord names) by @benbovy in #8104
- Fix Codecov by @headtr1ck in #7142
- Better default behavior of the Coordinates constructor by @benbovy in #8107
- Document drop_variables in open_mfdataset by @jerabaul29 in #8083
- adapted the docstring of xarray.DataArray.differentiate by @afisc in #8127
- Add
Coordinates.assign()
method by @benbovy in #8102 - Fix pandas'
interpolate(fill_value=)
error by @max-sixty in #8139 - Fix doctests: pandas 2.1 MultiIndex repr with nan by @benbovy in #8141
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #8145
- Cut middle version from CI by @max-sixty in #8156
- Dirty workaround for mypy 1.5 error by @benbovy in #8142
- tests: Update US/Eastern timezone to America/New_York by @LocutusOfBorg in #8153
- Docs page on internal design by @TomNicholas in #7991
- Fix tokenize with empty attrs by @malmans2 in #8101
- Consistently report all dimensions in error messages if invalid dimensions are given by @mgunyho in #8079
- Fix typos by @kianmeng in #8163
- to_stacked_array: better error msg & refactor by @mathause in #8130
- fix miscellaneous
numpy=2.0
errors by @keewis in #8117 - Bump actions/checkout from 3 to 4 by @dependabot in #8169
- Don't try to sort hashable, map to string by @Illviljan in #8172
- Implement preferred_chunks for netcdf 4 backends by @mraspaud in #7948
- Fix assignment with .loc by @dranjan in #8067
- improve typing of DataArray and Dataset reductions by @rhkleijn in #6746
- FIX: handle NaT values in dt-accessor by @kmuehlbauer in #8084
- Fix
PeriodIndex
deprecation in xarray tests by @max-sixty in #8182 - Display data returned in
apply_ufunc
error message by @max-sixty in #8179 - Set dev version above released version by @max-sixty in #8181
- Remove
setup.cfg
in favor ofpyproject.toml
by @max-sixty in #8183 - Fix comment alignment in
pyproject.toml
by @max-sixty in #8185 - fix the failing docs by @keewis in #8188
- Fix pytest markers by @max-sixty in #8191
- Fix several warnings in the tests by @headtr1ck in #8184
- FIX: use "krogh" as interpolator method-string instead of "krog" by @kmuehlbauer in #8187
- Update contourf call check for mpl 3.8 by @ksunden in #8186
- Fix static typing with Matplotlib 3.8 by @headtr1ck in #8030
- Exclude dimensions used in faceting from squeeze by @wkrasnicki in #8174
- Remove
requirements.txt
by @max-sixty in #8196 - Preserve nanosecond resolution when encoding/decoding times by @kmuehlbauer in #7827
- Allow
apply_ufunc
to ignore missing core dims by @max-sixty in #8138 - Adjust ufunc error message by @max-sixty in #8192
- Add some more mypy checks by @max-sixty in #8193
- Fix sortby link in reshaping.rst by @gtrevisan in #8202
- remove invalid statement from doc/user-guide/io.rst by @kmuehlbauer in #8194
- Move
.rolling_exp
functions fromreduce
toapply_ufunc
by @max-sixty in #8114 - Add T_DuckArray type hint to Variable.data by @Illviljan in #8203
- Attempt to reproduce #7079 in CI by @jhamman in #7488
- Add comments on when to use which
TypeVar
by @max-sixty in #8212 - Start a list of modules which require typing by @max-sixty in #8198
- Make documentation of DataArray.where clearer by @Riulinchen in #7955
- Removed
.isel
forDatasetRolling.construct
consistent rolling behavior by @p4perf4ce in #7578 - Skip flaky test by @max-sixty in #8219
- Convert
indexes.py
to useSelf
for typing by @max-sixty in #8217 - Use
Self
rather than concrete types, removecast
s by @max-sixty in #8216 - Allow creating DataArrays with nD coordinate variables by @dcherian in #8126
- Remove an import fallback by @max-sixty in #8228
- Add a
Literal
typing by @max-sixty in #8227 - Add typing to functions related to data_vars by @Illviljan in #8226
- override
units
for datetime64/timedelta64 variables to preserve integer dtype by @kmuehlbauer in #8201 - test_interpolate_pd_compat with range of fill_value's by @kmuehlbauer in #8189
- Rewrite typed_ops by @headtr1ck in #8204
- adapt to NEP 51 by @keewis in #8064
- decode variable with mismatched coordinate attribute by @kmuehlbauer in #8195
- Release 2023.09.0 by @kmuehlbauer in #8229
New Contributors
- @jerabaul29 made their first contribution in #8083
- @afisc made their first contribution in #8127
- @LocutusOfBorg made their first contribution in #8153
- @kianmeng made their first contribution in #8163
- @dranjan made their first contribution in #8067
- @wkrasnicki made their first contribution in #8174
- @gtrevisan made their first contribution in #8202
- @Riulinchen made their first contribution in #7955
- @p4perf4ce made their first contribution in #7578
Full Changelog: v2023.08.0...v2023.09.0