Releases: pydata/xarray
v2024.06.0
This release brings compatibility with numpy 2 and various performance optimizations.
Thanks to the 22 contributors to this release:
Alfonso Ladino, David Hoese, Deepak Cherian, Eni Awowale, Ilan Gold, Jessica Scheick, Joe Hamman, Justus Magin, Kai Mühlbauer, Mark Harfouche, Mathias Hauser, Matt Savoie, Maximilian Roos, Mike Thramann, Nicolas Karasiak, Owen Littlejohns, Paul Ockenfuß, Philippe THOMY, Scott Henderson, Spencer Clark, Stephan Hoyer and Tom Nicholas
What's Changed
- attempt to get colour output in CI by @keewis in #9031
- [skip-ci] min_deps_check: show age of required pkg on error by @mathause in #9025
- TEST: Fix numbagg or bottlekneck skip by @hmaarrfk in #9034
- Use ME in test_plot instead of M by @hmaarrfk in #9035
- Bump codecov/codecov-action from 4.3.1 to 4.4.0 in the actions group by @dependabot in #9036
- (fix): equality check against singleton
PandasExtensionArray
by @ilan-gold in #9032 - array api-related upstream-dev failures by @keewis in #8854
- Bump codecov/codecov-action from 4.4.0 to 4.4.1 in the actions group by @dependabot in #9047
- User-guide - pandas : Add alternative to xarray.Dataset.from_dataframe by @loco-philippe in #9020
- pin nightly
zarr
to v2 by @keewis in #9050 - Clarify matmul does xarray.dot by @mthramann in #9060
- Run tests on changes to root dotfiles by @max-sixty in #9062
- Speed up netCDF4, h5netcdf backends by @dcherian in #9067
- Remove empty code cell in examples/multidimensional-coords.ipynb by @kmuehlbauer in #9071
- citation / orcid by @keewis in #9082
- Always run code tests by @dcherian in #9083
- fixes for the
pint
tests by @keewis in #8983 - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #9061
- Address latest pandas-related upstream test failures by @spencerkclark in #9081
- Add scottyhq to CITATION.cff by @scottyhq in #9089
- Fix Typo in Bfill benchmark by @Ockenfuss in #9087
- add link to CF conventions on packed data in doc/user-guide/io.rst by @kmuehlbauer in #9045
- add order for polynomial interpolation, fixes #8762 by @nkarasiak in #9079
- Fix upcasting with python builtin numbers and numpy 2 by @djhoese in #8946
- Add Eni to CITATION.cff by @eni-awowale in #9095
- add Jessica to citation by @JessicaS11 in #9096
- (fix): don't handle time-dtypes as extension arrays in
from_dataframe
by @ilan-gold in #9042 - Micro optimizations to improve indexing by @hmaarrfk in #9002
- DAS-2067 - Migrate datatree io.py and common.py by @owenlittlejohns in #9011
- open_datatree performance improvement on NetCDF, H5, and Zarr files by @aladinor in #9014
- [skip-ci] Fix skip-ci for hypothesis by @dcherian in #9102
- Adds Matt Savoie to CITATION.cff by @flamingbear in #9103
- skip the
pandas
datetime roundtrip test withpandas=3.0
by @keewis in #9104 - Add user survey announcement to docs by @jhamman in #9101
- add remaining core-dev citations by @keewis in #9110
- Undo custom padding-top. by @dcherian in #9107
- [skip-ci] Try fixing hypothesis CI trigger by @dcherian in #9112
- release notes for 2024.06.0 by @keewis in #9092
- release v2024.06.0 by @keewis in #9113
New Contributors
- @loco-philippe made their first contribution in #9020
- @mthramann made their first contribution in #9060
- @nkarasiak made their first contribution in #9079
- @aladinor made their first contribution in #9014
Full Changelog: v2024.05.0...v2024.06.0
v2024.05.0
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
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
v2024.02.0
This release brings size information to the text repr
, changes to the accepted frequency strings, and various bug fixes.
Thanks to our 12 contributors:
Anderson Banihirwe, Deepak Cherian, Eivind Jahren, Etienne Schalk, Justus Magin, Marco Wolsza, Mathias Hauser, Matt Savoie, Maximilian Roos, Rambaud Pierrick, Tom Nicholas
v2024.01.1
This release is to fix a bug with the rendering of the documentation, but it also includes changes to the handling of pandas frequency strings.
What's Changed
- Re-enable mypy checks for parse_dims unit tests by @crusaderky in #8618
- import from the new location of
normalize_axis_index
if possible by @keewis in #8483 - Update min deps in docs by @jhamman in #8622
- Fix GH212, PP308 by @tqa236 in #8621
- Partially fix doctests by @max-sixty in #8631
- Fix building doc following depreciation in Pandas 2.2.0 by @nameloCmaS in #8633
- Workaround broken test from pyarrow by @max-sixty in #8634
- xfail pyarrow test by @max-sixty in #8635
- Don't show stdlib paths for
user_level_warnings
by @max-sixty in #8625 - xfail another dask/pyarrow test by @max-sixty in #8636
- xfail a cftime test by @max-sixty in #8637
- Silence deprecation warning from
.dims
in tests by @max-sixty in #8639 - Use
T_DataArray
inWeighted
by @max-sixty in #8630 - rename "Y" freq string to "YE" (pandas parity) by @mathause in #8629
- Pandas 2.2.0 test fixes by @nameloCmaS in #8638
- xfail zarr test on Windows by @max-sixty in #8643
- Use ddof in
numbagg>=0.7.0
for aggregations by @max-sixty in #8624 - infer_freq: return 'YE' (#8629 follow-up) by @mathause in #8642
- Pin sphinx-book-theme to 1.0.1 to try to deal with #8619 by @TomNicholas in #8632
- Fixed typo in custom backend registration documentation by @HertugHelms in #8645
- implement
isnull
usingfull_like
instead ofzeros_like
by @keewis in #7395
New Contributors
- @nameloCmaS made their first contribution in #8633
- @HertugHelms made their first contribution in #8645
Full Changelog: v2024.01.0...v2024.01.1
v2024.01.0
This release brings support for weights in correlation and covariance functions,
a new DataArray.cumulative
aggregation, improvements to xr.map_blocks
,
an update to our minimum dependencies, and various bugfixes.
Thanks to our 17 contributors to this release:
Abel Aoun, Deepak Cherian, Illviljan, Johan Mathe, Justus Magin, Kai Mühlbauer,
Llorenç Lledó, Mark Harfouche, Markel, Mathias Hauser, Maximilian Roos, Michael Niklas,
Niclas Rieger, Sébastien Celles, Tom Nicholas, Trinh Quoc Anh, and crusaderky.
v2023.12.0
This release brings new hypothesis strategies for testing, significantly faster rolling aggregations as well as ffill
and bfill
with numbagg, a new Dataset.eval
method, and improvements to reading and writing Zarr arrays (including a new "a-"
mode).
Thanks to our 16 contributors:
Anderson Banihirwe, Ben Mares, Carl Andersson, Deepak Cherian, Doug Latornell, Gregorio L. Trevisan, Illviljan, Jens Hedegaard Nielsen, Justus Magin, Mathias Hauser, Max Jones, Maximilian Roos, Michael Niklas, Patrick Hoefler, Ryan Abernathey, Tom Nicholas
What's Changed
- [skip-ci] dev whats-new by @dcherian in #8467
- Consolidate
_get_alpha
func by @max-sixty in #8465 - Fix
map_blocks
docs' formatting by @max-sixty in #8464 - Use concise date format when plotting by @Illviljan in #8449
- Fix mypy tests by @max-sixty in #8476
- Allow
rank
to run on dask arrays by @max-sixty in #8475 - Add whatsnew for #8475 by @max-sixty in #8478
- Improve "variable not found" error message by @max-sixty in #8474
- Fix bug for categorical pandas index with categories with EA dtype by @phofl in #8481
- Use numbagg for
ffill
by default by @max-sixty in #8389 - Refine rolling_exp error messages by @max-sixty in #8485
- Fix Zarr region transpose by @max-sixty in #8484
- Reduce redundancy between namedarray and variable tests by @maxrjones in #8405
- Start renaming
dims
todim
by @max-sixty in #8487 - Raise an informative error message when object array has mixed types by @andersy005 in #4700
- Update resample time offset FutureWarning and docs by @douglatornell in #8479
- Fix minor typo in io.rst by @maresb in #8492
- Warn on repeated dimension names during construction by @TomNicholas in #8491
- Minor to_zarr optimizations by @dcherian in #8489
- Properly closes zarr groups in zarr store by @CarlAndersson in #8425
- Avoid duplicate Zarr array read by @dcherian in #8472
- Add mode='a-': Do not overwrite coordinates when appending to Zarr with
append_dim
by @rabernat in #8428 - Add expand_dims by @Illviljan in #8407
- Update to mypy1.7 by @headtr1ck in #8501
- change type of curvefit's p0 and bounds to mapping by @headtr1ck in #8502
- Fully deprecate
.drop
by @max-sixty in #8497 - Fix docstrings for
combine_by_coords
by @gtrevisan in #8471 - roll out the new/refreshed Xarray logo by @andersy005 in #8505
- Add extra overload for to_netcdf by @jenshnielsen in #8268
- Allow callables to
.drop_vars
by @max-sixty in #8511 - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #8517
- Fix type of
.assign_coords
by @max-sixty in #8495 - [skip-ci] fix RTD docs build by @andersy005 in #8519
- Bump pypa/gh-action-pypi-publish from 1.8.10 to 1.8.11 by @dependabot in #8514
- Use numbagg for
rolling
methods by @max-sixty in #8493 - Hypothesis strategy for generating Variable objects by @TomNicholas in #8404
- Remove PR labeler bot by @TomNicholas in #8525
- test and fix empty xindexes repr by @mathause in #8521
- Deprecate ds.dims returning dict by @TomNicholas in #8500
- Add
eval
method to Dataset by @max-sixty in #7163 - explicitly skip using
__array_namespace__
fornumpy.ndarray
by @keewis in #8526 - Whats-new for 2023.12.0 by @dcherian in #8532
New Contributors
- @CarlAndersson made their first contribution in #8425
Full Changelog: v2023.11.0...v2023.12.0
v2023.11.0
Note
This is our 10th year anniversary release! Thank you for your love and support.
This release brings the ability to use opt_einsum
for :py:func:xarray.dot
by default,
support for auto-detecting region
when writing partial datasets to Zarr, and the use of h5py
drivers with h5netcdf
.
Thanks to the 19 contributors to this release:
Aman Bagrecha, Anderson Banihirwe, Ben Mares, Deepak Cherian, Dimitri Papadopoulos Orfanos, Ezequiel Cimadevilla Alvarez,
Illviljan, Justus Magin, Katelyn FitzGerald, Kai Muehlbauer, Martin Durant, Maximilian Roos, Metamess, Sam Levang, Spencer Clark, Tom Nicholas, mgunyho, templiert
What's Changed
- [skip-ci] dev whats-new by @dcherian in #8349
- [skip-ci] Add benchmarks for Dataset binary ops, chunk by @dcherian in #8351
- Add better ASV test cases for open_dataset by @Illviljan in #8352
- Reduce dask tokenization time by @martindurant in #8339
- Deprecate tuples of chunks? by @max-sixty in #8341
- Remove unnecessary for loop when using get_axis_num by @Illviljan in #8356
- Use namedarray repr in _array_api docstrings by @Illviljan in #8355
- NamedArray.ndim can only be int by @Illviljan in #8362
- docs: add searchable word "asterisk" by @templiert in #8363
- add
.imag
and.real
properties toNamedArray
by @andersy005 in #8365 - fix
NamedArray.imag
andNamedArray.real
typing info by @andersy005 in #8369 - Add chunkedduckarray to _typing by @Illviljan in #8376
- Do not intercept left/right keys in HTML docs by @DimitriPapadopoulos in #8379
- Docs page on interoperability by @TomNicholas in #7992
- Fix typos found by codespell by @DimitriPapadopoulos in #8375
- Use
opt_einsum
by default if installed. by @dcherian in #8373 - Allow Variable type as dim argument to concat by @maresb in #8384
- Remove duplicated navigation_with_keys in docs config by @Illviljan in #8390
- Add duckarray test for np.array_api by @Illviljan in #8391
- Fix sparse typing by @Illviljan in #8387
- Correct typing for _sparsearray by @Illviljan in #8395
- Port fix from pandas-dev/pandas#55283 to cftime resample by @spencerkclark in #8393
- Fix for Dataset.to_zarr with both
consolidated
andwrite_empty_chunks
by @Metamess in #8326 - Test masked array by @Illviljan in #8396
- Better attr diff for
testing.assert_identical
by @dcherian in #8400 - Add cross-links to API docstring from tutorial and user-guide by @amanbagrecha in #8311
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #8418
- Fix for date offset strings with resample loffset by @kafitzgerald in #8422
- Declare Dataset, DataArray, Variable, GroupBy unhashable by @maresb in #8392
- Add missing DataArray.dt.total_seconds() method by @maresb in #8435
- Rename
to_array
toto_dataarray
by @max-sixty in #8438 - Remove keep_attrs from resample signature by @dcherian in #8444
- Pin pint to >=0.22 by @dcherian in #8445
- Remove PseudoNetCDF by @dcherian in #8446
- remove
cdms2
by @keewis in #8441 - Automatic region detection and transpose for
to_zarr()
by @slevang in #8434 - Raise exception in to_dataset if resulting variable is also the name of a coordinate by @mgunyho in #8433
- Added driver parameter for h5netcdf by @zequihg50 in #8360
- Deprecate certain cftime frequency strings following pandas by @spencerkclark in #8415
- [skip-ci] Small updates to IO docs. by @dcherian in #8452
- Fix typos found by codespell by @DimitriPapadopoulos in #8457
- Pin mypy < 1.7 by @dcherian in #8458
- preserve vlen string dtypes, allow vlen string fill_values by @kmuehlbauer in #7869
- migrate the other CI to python 3.11 by @keewis in #8416
- 2023.11.0 Whats-new by @dcherian in #8461
New Contributors
- @maresb made their first contribution in #8384
- @Metamess made their first contribution in #8326
- @amanbagrecha made their first contribution in #8311
- @kafitzgerald made their first contribution in #8422
- @zequihg50 made their first contribution in #8360
Full Changelog: v2023.10.1...v2023.11.0
v2023.10.1
This release updates our minimum numpy version in pyproject.toml
to 1.22, consistent with our documentation.
Please see the v2023.10.0 release notes for our recent changes.
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