id,node_id,number,state,locked,title,user,body,created_at,updated_at,closed_at,merged_at,merge_commit_sha,assignee,milestone,draft,head,base,author_association,auto_merge,repo,url,merged_by
278088105,MDExOlB1bGxSZXF1ZXN0Mjc4MDg4MTA1,2956,closed,0,Picking up #1118: Do not convert subclasses of `ndarray` unless required,14808389,"This picks up the work done in #1118, plus converting the `unittest`
based tests to `pytest` (since that seems to be used in the other
tests).
closes #1118
Some of the suggestions there are not implemented yet:
* the disabling of bottleneck if a `ndarray` subclass is used
* testing for operations like `xarray.concat`. This does not work with any of the unit libraries (at least, `pint`, `astropy.units`, `unyt` and `quantities` don't support it yet).
* testing with other unit libraries that use subclasses (e.g. `astropy.units` or `unyt`)
* renaming the test file to `test_units_subclass.py`
* fix indexing (`NumpyIndexingAdapter`)
The requirements files for CI changed since then, so maybe more than
the two right now need the `quantities` entry.",2019-05-12T23:12:43Z,2019-12-25T14:14:00Z,2019-12-25T14:11:45Z,,778c5347b13cd2252ccf532b8281ef8419d2c026,,,0,c4d8512154ab9248f6383fcd08abdaf7fd7a168f,5f55d41a05618e6091061dfb83fe745ed6008997,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2956,
309978038,MDExOlB1bGxSZXF1ZXN0MzA5OTc4MDM4,3238,closed,0,tests for arrays with units,14808389,"This PR adds tests that verify that xarray properly wraps arrays with units.
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes
and `api.rst` for new API
They are currently restricted to using `pint` but may easily be extended to
use other unit libraries. However, most of the libraries I know use
subclassing instead of wrapping, so using them together with `dask` might
not be ideal as unit conflicts will only be detected on `compute()`.
As a reference for myself, here are the operations I plan on adding tests for:
* top-level functions:
- [x] replication: `full_like`, `ones_like`, `zeros_like`
* dataarray methods
- [x] creating: `DataArray()`
- [x] representation: `__repr__`, `__str__`
- [x] content manipulation: `assign_coords`, `assign_attrs`, `pipe`, `rename`, `swap_dims`, `expand_dims`, `drop`, `reset_coords`, `copy`, `astype`, `item`
- [x] indexing: `loc`, `isel`, `sel`, `squeeze`, `interp`, `interp_like`, `reindex`, `reindex_like`
- [x] missing value handling: `isnull`, `notnull`, `combine_first`, `count`, `dropna`, `fillna`, `ffill`, `bfill`, `interpolate_na`, `where`, `isin`
- [x] comparisons: `equals`, `identical`, `broadcast_equals`
- [x] aggregation: `all`, `any`, `argmax`, `argmin`, `max`, `mean`, `median`, `min`, `prod`, `sum`, `std`, `var`
- [x] ndarray methods: `argsort`, `clip`, `conj`, `conjugate`, `imag`, `searchsorted`, `round`, `real`, `T`, `cumsum`, `cumprod`, `rank`
- [x] reshaping and reorganizing: `transpose`, `stack`, `unstack`, `set_index`, `reset_index`, `reorder_levels`, `shift`, `roll`, `sortby`, `to_unstacked_dataset`
- [x] arithmetic: unary (-, abs, round), binary (+, *, @)
- [x] ufuncs (univariate: `sin`, `cos`, bivariate: `minimum`, `maximum`)
- [x] grouped operations: `assign_coords`, `first`, `last`, `fillna`, `where`, `quantile`
- [x] computation: `reduce`, `groupby`, `groupby_bins`, `rolling`, `rolling_exp`, `coarsen`, `resample`, `diff`, `dot`, `quantile`, `differentiate`, `integrate`
The parts of the API that are currently not covered by this PR are:
* top level:
- combining: `align`, `concat`, `merge`, `auto_combine`, `combine_by_coords`, `combine_nested`
- computation: `broadcast`, `dot`, `apply_ufunc`
* dataarray:
- computation: `get_axis_num`
* dataset
From what is already done, `mypy .` fails because of `pint` (this the same as with `quantities` in #2956). What would I do to fix that?",2019-08-22T14:03:55Z,2020-04-07T06:37:40Z,2019-10-17T03:13:40Z,2019-10-17T03:13:40Z,55b1ac0c80bb3c9f1f239106849bf0713905b2cf,,,0,21853d70ff900c7f097dbbc5711cc3b4e0ce88b7,1f813389d4b76354c8566d6759382e24cee91a0a,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3238,
319912904,MDExOlB1bGxSZXF1ZXN0MzE5OTEyOTA0,3329,closed,0,fix the name of the return value in the swap_dims docstrings,14808389,"
- [ ] Tests added
- [x] Passes `black . && mypy . && flake8`
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API",2019-09-21T00:01:15Z,2019-09-21T21:44:15Z,2019-09-21T01:16:11Z,2019-09-21T01:16:11Z,4617e68bd14250a0da1448c66f25b2f44f8b60c8,,,0,2c8e23c83a1bd0c4f90b3aa1df8f4a9580a60db6,df259331c5b66088f67738338e0b1b3f940e09c2,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3329,
319994886,MDExOlB1bGxSZXF1ZXN0MzE5OTk0ODg2,3331,closed,0,Improve the documentation of swap_dims,14808389,"This adds examples to both `Dataset.swap_dims` and `DataArray.swap_dims` (and fixes an oversight on my part in #3329).
From #2838, it seems that there was the intention to rename it, but as far as I can tell, that decision is not official yet (and `Dataset` even got its own new `rename_dims`).
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2019-09-21T22:06:13Z,2019-09-22T19:02:36Z,2019-09-22T16:30:25Z,2019-09-22T16:30:25Z,a5fe56a081ef59a7fffd1408bb18df2c9dfb4d1e,,,0,0313df94474ef2073025290ef37e729347045d96,4617e68bd14250a0da1448c66f25b2f44f8b60c8,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3331,
320078345,MDExOlB1bGxSZXF1ZXN0MzIwMDc4MzQ1,3333,closed,0,More doc fixes,14808389,"While going through the docs, I noticed several issues:
* in `reshaping.rst`, a code block gets hidden because of a missing newline
* in `api.rst`, the section `What parts of xarray are considered public API?` is referenced (I think), but the link is broken.
* the code samples in `DataArray.plot` are not recognized as such because of missing newlines
* the documentation of `Dataset.plot.scatter` in the API reference is broken
This PR tries to fix all of those, but while the first three issues are easy to fix, I'm not sure whether my proposed fix for the one involving `scatter` is correct: I've added `plot.dataset_plot.scatter` to `plot.__all__` (exposing `xr.plot.scatter`) and changed `api.rst` to reference `plot.scatter` instead of `Dataset.plot.scatter`. It seems harmless to me, but the information that `scatter` only exists for `Dataset` is less visible. Is that the way to fix this?
- [x] Passes `black . && mypy . && flake8`
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2019-09-22T20:09:36Z,2019-09-23T10:46:34Z,2019-09-23T01:08:43Z,2019-09-23T01:08:43Z,6ec1da202e5abaf317f49ba8dda348ef572b279d,,,0,ee9a05eb8e57429c90cea9075608c75ae10cc525,a5fe56a081ef59a7fffd1408bb18df2c9dfb4d1e,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3333,
328256427,MDExOlB1bGxSZXF1ZXN0MzI4MjU2NDI3,3400,closed,0,Fixes to the resample docs,14808389,"
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
The docs of `resample` fail to mention that resampling only works with datetime-like coords: the only part where one could get this from is the examples (the pandas docs are much more explicit). I'm not sure whether it would be good to also point this out in the function description. Thoughts?",2019-10-15T12:58:24Z,2019-10-16T21:33:21Z,2019-10-16T18:54:27Z,2019-10-16T18:54:27Z,1f813389d4b76354c8566d6759382e24cee91a0a,,,0,ce79ef96b1a9832c1661762748f3ebea831856a1,3f9069ba376afa35c0ca83b09a6126dd24cb8127,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3400,
332552328,MDExOlB1bGxSZXF1ZXN0MzMyNTUyMzI4,3447,closed,0,tests for datasets with units,14808389,"As a follow-up to #3238, this adds tests for datasets. Replacing `assert_equal_with_units` with `assert_identical` and adding tests for the toplevel functions are not included, these will be new PRs.
- [x] Tests added
- [x] Passes `black . && mypy . && flake8`
As a reference for myself, this is the list of methods from the documentation of `Dataset`:
- [x] creation: `Dataset()`
- [x] contents: `copy`, `assign`, `assign_coords`, `assign_attrs`, `pipe`, `merge`, `rename`, `rename_vars`, `rename_dims`, `swap_dims`, `expand_dims`, `drop`, `drop_dims`, `set_coords`, `reset_coords`
- [x] comparisons: `equals`, `broadcast_equals`, `identical`
- [x] indexing: `loc`, `isel`, `sel`, `head`, `tail`, `thin`, `squeeze`, `interp`, `interp_like`, `reindex`, `reindex_like`, `set_index`, `reset_index`, `reorder_levels`
- [x] missing value handling: `isnull`, `notnull`, `combine_first`, `count`, `dropna`, `fillna`, `ffill`, `bfill`, `interpolate_na`, `where`, `isin`
- [x] computation: `apply`, `reduce`, `groupby`, `groupby_bins`, `rolling`, `rolling_exp`, `coarsen`, `resample`, `diff`, `quantile`, `differentiate`, `integrate`
- [x] aggregation: `all`, `any`, `argmax`, `argmin`, `max`, `min`, `mean`, `median`, `prod`, `sum`, `std`, `var`
- [x] ndarray methods: `astype`, `argsort`, `clip`, `conj`, `conjugate`, `imag`, `round`, `real`, `cumsum`, `cumprod`, `rank`
- [x] grouped operations: `assign`, `assign_coords`, `first`, `last`, `fillna`, `where`, `quantile`
- [x] reshaping and reorganizing: `transpose`, `stack`, `unstack`, `to_stacked_array`, `shift`, `roll`, `sortby`
these methods are not covered:
- creation: `decode_cf`
- dictionary interface: `__getitem__`, `__setitem__`, `__delitem__`, `update`, `items`, `values`
- `broadcast_like` (since I also forgot this for `DataArray`, I'll create a new PR for it)",2019-10-25T14:56:53Z,2019-11-09T14:17:44Z,2019-11-09T04:21:27Z,2019-11-09T04:21:27Z,ffc32755ca98d11208b6403d424ebcc2ba5bc4fa,,,0,7ab5e49db788e6dbaf4493c00f02d102190fd889,0e8debfe28286b5fe1f3d27e8dcc8466a62aca6d,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3447,
334326126,MDExOlB1bGxSZXF1ZXN0MzM0MzI2MTI2,3469,closed,0,Fix integrate docs,14808389," - [ ] Tests added
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
This updates the name in the parameter list of `Dataset.integrate` and adds an example. Also, the note in `DataArray.integrate` referred to `coord` which does not exist. I guess in the end to make it match `Dataset.integrate` it would be better to rename that parameter from `dim` to `coord`, but that would mean changing the API.",2019-10-30T15:18:14Z,2019-10-30T17:46:52Z,2019-10-30T17:46:34Z,2019-10-30T17:46:34Z,c0af5e7bdca537038a68d660a3d8320d6b0c9592,,,0,8f3729f7038fd74f18bb1ea8401527eff11f5797,59f88f776f290f216531d074b6e73a50a9f7c37c,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3469,
338223595,MDExOlB1bGxSZXF1ZXN0MzM4MjIzNTk1,3493,closed,0,Tests for module-level functions with units,14808389,"This PR adds tests that cover the module level functions of the public API, similar to #3238 and #3447.
- [x] Tests added
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
As a reference for myself, these are the functions listed by the docs:
* [x] `apply_ufunc`
* [x] `align`
* [x] `broadcast`
* [x] `concat`
* [x] `merge`
* [x] `combine_by_coords`
* [x] `combine_nested`
* [ ] `auto_combine` (deprecated)
* [x] masking / selecting: `where`
* [x] replication: `full_like`, `ones_like`, `zeros_like`
* [x] `dot`
* [ ] `map_blocks`
Functions not covered by this PR:
* `auto_combine` (deprecated)
* `map_blocks` (dask specific, should be the same as `apply_ufunc` without dask)
",2019-11-07T20:20:33Z,2019-11-15T14:49:33Z,2019-11-14T01:24:08Z,2019-11-14T01:24:08Z,4358762d7ccf0d81dfbbc37d9c0665d53fe9c426,,,0,2c6e6047d095d4d5e6f277fb3f98a3a895671c0b,4e9240a2087ffbf119919e1ac98046bbf164f94d,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3493,
339175527,MDExOlB1bGxSZXF1ZXN0MzM5MTc1NTI3,3508,closed,0,add missing pint integration tests,14808389,"This adds the tests that were missed by #3238 and #3447.
- [x] Tests added
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
This should be ready to merge, but I'm almost certain that while going through #3238 and #3447 and trying to fix obvious mistakes I will find more missing tests.
Missing tests:
* [x] `Dataset.broadcast_like` and `DataArray.broadcast_like`
* [x] `DataArray.head`, `DataArray.tail` and `DataArray.thin`",2019-11-10T18:13:49Z,2019-11-10T23:42:14Z,2019-11-10T23:41:52Z,2019-11-10T23:41:52Z,4e9240a2087ffbf119919e1ac98046bbf164f94d,,,0,57685ddf66cd477b8f7e23971991488d05c595f2,f14edf326d41ce96be5d8fd42d56e80e3faf5ce7,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3508,
340182852,MDExOlB1bGxSZXF1ZXN0MzQwMTgyODUy,3516,closed,0,Silence sphinx warnings,14808389,"This PR tries to silence most sphinx warnings. 5d9d263 is a collection of changes that silence warnings, but they also reduce the readability of the plain text docstrings, so I'd especially appreciate feedback on these.
There are still some warnings left, due to various reasons:
* the ufunc warnings are inherited from numpy
* some are due to duplicate target names in `whats-new.rst` (e.g. `CF Conventions` but also developer names).
* two files are not included in any toctree (`README.rst` and `api-hidden.rst`)
* references in `whats-new.rst` to labels that were either renamed or removed
* conflicting definitions for properties
* the CI also lists a lot of broken references to other functions / methods, which do not show for me
To fix these, I would
* update the numpy docstrings upstream or find a way to ignore these warnings (probably both)
* reference both files from somewhere
* track down the labels the references refer to and add them back, or disable the links
but I have no idea how to deal with the duplicate target names, duplicate definitions of properties, where to put the references to both files or if it would be better to leave the broken references broken. I did not look at the long list of broken references the CI shows since I can't reproduce it.
- [x] short-term fix for #3370
- [x] Passes `black . && mypy . && flake8`
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2019-11-13T00:50:14Z,2019-11-20T02:07:30Z,2019-11-19T15:32:26Z,2019-11-19T15:32:26Z,dc559ea4a0b043908b5539641c2d22ab9a051b19,,,0,20dbc5127377b906c053db5d521a7d6d48572cfc,45fd0e63f43cf313b022a33aeec7f0f982e1908b,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3516,
340709224,MDExOlB1bGxSZXF1ZXN0MzQwNzA5MjI0,3527,closed,0,Add DatasetGroupBy.quantile,14808389,"This adds `DatasetGroupBy.quantile` by moving `DataArrayGroupBy.quantile` to `GroupBy` as proposed in https://github.com/pydata/xarray/issues/3018#issuecomment-507749287.
The tests are a modified copy of the ones from #2828. What confuses me is that `expected_yy` in `test_ds_groupby_quantile` needs the `transpose` whereas the equivalent in `test_da_groupby_quantile` doesn't. Does anyone have an idea about why that is?
- [x] Closes #3525
- [x] Tests added
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API",2019-11-13T23:03:07Z,2019-11-15T23:55:14Z,2019-11-15T19:58:02Z,2019-11-15T19:58:02Z,52d48450f6291716a90f4f7e93e15847942e0da0,,,0,5f9ca06ef6bd4fcae3605ad8a55ad9085471bd37,c0ef2f616e87e9f924425bcd373ac265f14203cb,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3527,
343496380,MDExOlB1bGxSZXF1ZXN0MzQzNDk2Mzgw,3554,closed,0,Fix documentation,14808389,"It seems we introduced a warning in `whats-new.rst` and we dropped `Dataset.drop` and `DataArray.drop` from the documentation (which were only deprecated).
xref #3552
- [x] Passes `black . && mypy . && flake8`
",2019-11-20T17:57:56Z,2019-11-22T00:19:59Z,2019-11-21T23:01:49Z,2019-11-21T23:01:49Z,9717681cf010549e0931c09d17dd57a111a6afef,,,0,e4316c264f140079ca6fd4cd6ba8416aa9892de1,8d09879748d2e201ac6de7345e71fa7320801131,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3554,
343771055,MDExOlB1bGxSZXF1ZXN0MzQzNzcxMDU1,3557,closed,0,merge scipy19 docs,14808389,"This PR tries to merge the scipy19-docs branch into master while also making sure that the readthedocs build does not fail (see #3199 and #3369).
- [x] Passes `black . && mypy . && flake8`
There is also a [preview page](https://xarray-keewis.readthedocs.io/en/scipy19-docs/), but it currently [fails](https://readthedocs.org/projects/xarray-keewis/builds/) because conda is taking too much memory (which the official builds do not). Does anyone know why that is?",2019-11-20T23:25:50Z,2019-11-25T11:29:50Z,2019-11-22T01:15:32Z,2019-11-22T01:15:32Z,b0064b253aee5a33fcb2570fbde049bb61648229,,,0,8222468dbd12b5cc0ff7eb51d00356b11bde3b65,8d09879748d2e201ac6de7345e71fa7320801131,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3557,
346226131,MDExOlB1bGxSZXF1ZXN0MzQ2MjI2MTMx,3576,closed,0,Examples for quantile,14808389,"Following up to #3527, this adds examples for `DataArray.quantile`, `Dataset.quantile` and `GroupBy.quantile` (which is inherited by both `DatasetGroupBy` and `DataArrayGroupBy`).
- [x] Passes `black . && mypy . && flake8`
",2019-11-27T12:56:10Z,2019-11-28T15:56:22Z,2019-11-28T03:58:07Z,2019-11-28T03:58:07Z,be2ff9d2a756e50bcdf39484d527a8a91348621a,,,0,e3305e745cd7eef4c31b18617522aefe723c9262,7dfdfcaa481fe6b42302f231cb02c35601c628db,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3576,
346236294,MDExOlB1bGxSZXF1ZXN0MzQ2MjM2Mjk0,3577,closed,0,use cftime's intersphinx,14808389,"Now that Unidata/cftime#133 is merged, we can link to the `cftime` documentation using intersphinx (silencing a few more sphinx warnings).
- [x] Passes `black . && mypy . && flake8`
",2019-11-27T13:20:40Z,2019-11-27T21:26:30Z,2019-11-27T19:40:11Z,2019-11-27T19:40:11Z,4c26d6a639df1d08a3093cd2948a2e9a0107028b,,,0,7441d5cc470da6d91ce3d324fa14890e153fe26f,7dfdfcaa481fe6b42302f231cb02c35601c628db,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3577,
346762998,MDExOlB1bGxSZXF1ZXN0MzQ2NzYyOTk4,3581,closed,0,add a whatsnew entry for quantile examples,14808389,"Since I forgot to add them before the merge of #3576, this needs a new PR.
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API",2019-11-28T15:56:14Z,2019-11-28T17:19:42Z,2019-11-28T17:19:05Z,2019-11-28T17:19:05Z,1e0f108f630e5c43de6c125c5d738a2a0f4a8282,,,0,91b9564280553c46fc5e3baf57ed4392a3e58c25,be2ff9d2a756e50bcdf39484d527a8a91348621a,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3581,
348462006,MDExOlB1bGxSZXF1ZXN0MzQ4NDYyMDA2,3589,closed,0,Resolve the version issues on RTD,14808389,"The trick mentioned in https://github.com/pydata/xarray/issues/3567#issuecomment-561270215 works locally, but I don't know whether that's also the case for RTD. Since my own RTD setup cannot go past the environment creation stage: can someone with the appropriate rights on the official setup try this out for me?
Adding `xarray` to `doc.yml` is something temporary that has to be removed before the merge, but I think it is necessary to make sure the version collision occurs.
- [x] Closes #3567
- [x] Passes `black . && mypy . && flake8`
",2019-12-03T17:39:23Z,2019-12-03T19:18:24Z,2019-12-03T18:59:41Z,2019-12-03T18:59:40Z,ed05f9862622b00f40f7b9b99ccdb0ab3766ff0f,,,0,1a075fe84273ef06942f43d38d6645cc8f042dd8,69c85b85a1ef5d13b6ca51b6b655a1f719cc5abf,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3589,
348506924,MDExOlB1bGxSZXF1ZXN0MzQ4NTA2OTI0,3591,closed,0,update doc.yml,14808389,"Remove `xarray` from `doc.yml` which got added in order to test whether #3589 truly fixes the issue mentioned in #3567.
",2019-12-03T19:24:05Z,2019-12-05T17:58:39Z,2019-12-05T16:21:21Z,2019-12-05T16:21:21Z,cf17317f3570a2a1db2b2e665ea148f931b96c5c,,,0,0ad289c90a057b02825847d22a71a7af07718539,ed05f9862622b00f40f7b9b99ccdb0ab3766ff0f,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3591,
348636115,MDExOlB1bGxSZXF1ZXN0MzQ4NjM2MTE1,3592,closed,0,Silence sphinx warnings: Round 2,14808389,"As a follow-up to #3516, this silences the last warnings without `-n`, so once the doctest issue below is fixed we could replace `-n` with `-W --keep-going` and have the CI fail should a PR introduce new warnings.
There is, however, a problem with the doctest output for the 3D result of `GroupBy.quantile`: since the repr of a DataArray with at least 3 dimensions contains blank lines, it complains about a block quote ending without a blank line.
Also, the complaints from #3516 about duplicate definitions of attributes were caused by the `Attributes` section in the docstring of `DataArray`. I fixed this by removing the whole section, but we probably want to first make sure this does not remove any information (or maybe someone has a different idea?).
- [x] Passes `black . && mypy . && flake8`
",2019-12-04T01:09:30Z,2019-12-06T15:38:54Z,2019-12-06T15:37:46Z,2019-12-06T15:37:46Z,4c51aa2c2ed953a59ab2c8ba5e127cd988ba67dd,,,0,4114febcfe8872d901735bccf1e5d28755befaf3,87a25b64898c94ea1e2a2e7a06d31ef602b116bf,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3592,
349630510,MDExOlB1bGxSZXF1ZXN0MzQ5NjMwNTEw,3600,closed,0,Fix pint integration tests,14808389,"This cleans up the tests which became a bit of a mess. Once that is done, we can actively work on fixing #3594.
- [x] Tests added
- [x] Passes `black . && mypy . && flake8`
",2019-12-05T20:27:38Z,2019-12-09T17:30:08Z,2019-12-09T10:25:52Z,2019-12-09T10:25:51Z,5c674e6212ed5a5daeb3f289f023d6abc48417ae,,,0,c926d582ab3e6949400b3d7d4694cdc74f8e52e2,87a25b64898c94ea1e2a2e7a06d31ef602b116bf,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3600,
350258061,MDExOlB1bGxSZXF1ZXN0MzUwMjU4MDYx,3602,closed,0,silence sphinx warnings round 3,14808389,"In this last ""sphinx warnings"" PR the goal is to silence all nit-picky warnings that are not related to napoleon's interpretation of parameter types. ~In https://github.com/pydata/xarray/issues/3370#issuecomment-562582121 I posted ways to define type aliases (so `dict-like` points to the term `mapping` on https://docs.python.org/3/ and `array-like` to the appropriate page in the numpy docs) or to ignore words like `of`. This PR applies these to silence all the nit-picky warnings (which mostly means broken links).~
~As a reference for myself, the documentation of numpydoc's sphinx config options is here: https://numpydoc.readthedocs.io/en/latest/install.html#sphinx-config-options~ `numpydoc` does not have anything to do with this, we are blocked by a bug in `napoleon` (see #3370).
At the moment only the autodoc / autosummary / ~numpydoc~ napoleon warnings remain, with a few exceptions in `whats-new.rst`.
In theory we could also re-enable `-n` and use the `nitpick_ignore` settings to ignore any unfixable warnings, but I'm undecided about whether that would be a good idea. Thoughts?
- [x] Closes #3370
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2019-12-07T01:02:44Z,2019-12-17T16:45:18Z,2019-12-17T16:25:27Z,2019-12-17T16:25:27Z,6ad59b93f814b48053b1a9eea61d7c43517105cb,,,0,c1aacb9bc94d08f91de5469a8639b978f84817f8,2ee89c36a7ed512a221d38e09e7637429ced22d3,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3602,
352136111,MDExOlB1bGxSZXF1ZXN0MzUyMTM2MTEx,3611,closed,0,Pint support for top-level functions,14808389,"This PR tries to get the pint integration tests (see #3594) to pass. To make sure this does not become a giant PR, it is limited to the top-level functions and the work on the tests for `DataArray` and `Dataset` will be done in other PRs.
I added pint master to the `upstream-dev` CI since that way CI finally helps finding bugs. Should I have edited `py36-min-nep18` instead?
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
Also, I finally ran into a situation where I have to use `assert_allclose` instead of `assert_equal_with_units`. However, `assert_allclose` does not check for identical units, I think? Would it make sense to copy the code of `assert_allclose` and add the strict unit checking or would it be better to just use `assert_allclose` and something like `assert extract_units(expected) == extract_units(actual)`?
Failing tests list from #3594:
- `align`: ~needs more investigation~ ~partially blocked by `where`, `IndexVariable` and a bug in `assert_equal_with_units` and / or the tests, also a behaviour decision on align~ works (but units in `IndexVariable` still fail)
- `combine_by_coords`: ~needs more investigation~ ~partially blocked by `IndexVariable` and a test bug (due to #3483)~ works (but units in `IndexVariable` still fail)
- `combine_nested`: ~needs more investigation~ ~blocked by `reindex`~ works (but units in `IndexVariable` still fail)
- `concat`: ~needs more investigation~ works (but units in `IndexVariable` still fail)
- `merge`: ~needs more investigation~ works (but units in `IndexVariable` still fail)
- `full_like`: ~`pint` currently does not implement `copyto`~ blocked by hgrecco/pint#882
- `where`: ~needs more investigation~ ~unit is stripped because `pint` does not implement `astype` and test bug in `test_where_dataset`~ works
- `dot`: ~`pint` currently does not implement `einsum`~ works",2019-12-11T22:04:13Z,2020-03-09T11:35:27Z,2020-03-09T07:40:46Z,2020-03-09T07:40:46Z,9f97c4384f6456a5582f2bf7277c90be110fce92,,,0,2eff81db0996ebcce546e8df08d619858e1c580f,fd08842e81576f5ea6b826e31bc2031bcca79de2,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3611,
354154894,MDExOlB1bGxSZXF1ZXN0MzU0MTU0ODk0,3636,closed,0,Support swap_dims to dimension names that are not existing variables,14808389," - [x] Closes #1855
- [x] Tests added
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2019-12-17T15:07:15Z,2020-01-08T18:28:56Z,2020-01-08T18:27:29Z,2020-01-08T18:27:29Z,080caf4246fe2f4d6aa0c5dcb65a99b376fa669b,,,0,6551f933eabf089722029f436710cfaca2d82ee7,b3d3b4480b7fb63402eb6c02103bb8d6c7dbf93a,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3636,
354254427,MDExOlB1bGxSZXF1ZXN0MzU0MjU0NDI3,3639,closed,0,update readthedocs.yml,14808389,"This uses the new version of the readthedocs configuration. As usual, my setup failed on the creation of the environment, so we should try to check that before a merge.
- [x] Closes #3623",2019-12-17T18:43:24Z,2019-12-17T23:23:37Z,2019-12-17T23:22:17Z,2019-12-17T23:22:17Z,471a5d6ce3eb10a521c8eebd3b97f72461405f19,,,0,8dcc289e6c4853cd2d479308a8f0a7062cb056b9,6ad59b93f814b48053b1a9eea61d7c43517105cb,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3639,
354872657,MDExOlB1bGxSZXF1ZXN0MzU0ODcyNjU3,3643,closed,0,Pint support for DataArray,14808389,"This is part of the effort to add support for pint (see #3594) on `DataArray`. This depends on #3611, so we should merge that first.
- [x] Tests added
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
list of failing tests from #3594:
- `__init__`: Needs unit support in IndexVariable, blocked by #1603
- aggregation:
+ `pint` currently does not implement `prod`
+ calling `np.median` returns a numpy scalar instead of a `DataArray` because `DataArray` does not implement `__array_function__`
+ everything else works
- bivariate ufuncs: fixed by hgrecco/pint#951 (but the unit won't be correct if the array is not passed first. See hgrecco/pint#1019)
- numpy methods: `rank` only works with `numpy.ndarray` (uses `bottleneck`)
- `ffill`, `bfill`: uses `bottleneck`, which does not support NEP-18?
- `where`: works (but the choice of treating `array(nan)` and `array(0)` as special needs to be discussed)
- `interpolate_na`: enforces the use of `numpy.vectorize` which does not support NEP18
- `combine_first`: works, but does not test indexing (which should fail)
- `equals`, `identical`: works (right now `identical` returns the same as `equals`)
- `drop_sel`, `sel`, `loc`: indexes strip units (#1603)
- `interp`: uses `scipy.interpolate.interp1d` which strips units
- `interp_like`: same as `interp`
- `to_unstacked_dataset`: blocked by IndexVariable
- `quantile`: works (but needs a new `pint` version since it uses `numpy.nanquantile`
- `rolling`: uses `numpy.lib.stride_tricks.as_strided` which is not supported by NEP18
- `rolling_exp`: numbagg",2019-12-18T23:49:29Z,2020-04-29T16:12:35Z,2020-04-29T16:12:24Z,2020-04-29T16:12:24Z,3820fb77256682d909c1e41d962e29bec0edd62d,,,0,4303d6b92a33b67045b7d84a2856ff165fa9a7fd,b62a3fb2e96e6d88bb866453958a902fd782adc8,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3643,
355235652,MDExOlB1bGxSZXF1ZXN0MzU1MjM1NjUy,3645,closed,0,raise an error when renaming dimensions to existing names,14808389,"Is `ValueError` the appropriate error here? I'm also not sure about the addition to the documentation of `rename_dims`.
- [x] Closes #3438
- [x] Tests added
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2019-12-19T16:34:24Z,2020-01-09T01:47:10Z,2020-01-09T01:46:46Z,2020-01-09T01:46:45Z,ef6e6a7b86f8479b9a1fecf15ad5b88a2326b31e,,,0,5cd2aeaf37eecabdade443f22453c751a7d89782,8fc9ecedc87b5d878363b233e260c87fd632fa0f,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3645,
357579849,MDExOlB1bGxSZXF1ZXN0MzU3NTc5ODQ5,3654,closed,0,Tests for variables with units,14808389,"As promised in #3493, this adds integration tests for units. I'm doing this now rather than later since I encountered a few cases in #3643 where a increased test coverage for variables would have been helpful.
- [x] Tests added
- [x] Passes `black . && mypy . && flake8`
",2019-12-28T20:21:06Z,2020-01-15T16:59:00Z,2020-01-15T16:53:01Z,2020-01-15T16:53:01Z,3955c37959a81d6e83c6253962d374ee2f5019b6,,,0,a852aef81fca113ed27e0b348ef90d7c861fa261,b3d3b4480b7fb63402eb6c02103bb8d6c7dbf93a,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3654,
362698166,MDExOlB1bGxSZXF1ZXN0MzYyNjk4MTY2,3693,closed,0,allow passing any iterable to drop when dropping variables,14808389,"This fixes a regression in the deprecated `drop` method.
- [x] Closes #3552
- [x] Tests added
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-01-14T15:33:38Z,2020-01-14T16:13:30Z,2020-01-14T16:13:24Z,2020-01-14T16:13:24Z,e0fd48052dbda34ee35d2491e4fe856495c9621b,,,0,7e8916b91194041d18aac6e706e34720d8faf18f,40423457928245d216f973530904df1c93110f6c,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3693,
364359492,MDExOlB1bGxSZXF1ZXN0MzY0MzU5NDky,3706,closed,0,Pint support for variables,14808389,"I realized that most of the operations depend on `Variable`, which means that this should be the first step to making the other tests pass. This PR copies from #3611, making that PR a work-in-progress again until I remove those parts.
- [x] Closes #3783
- [x] Passes `black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
These are the current failures:
* `np.prod`: not implemented by `pint` yet, but should work once it is
* comparisons: `identical` fails to detect same value, but in different units (like `1 m` and `100 cm`) as different. This is hard to implement in a way that does not include `isinstance` or `hasattr` checks.
* `rank`: not implemented for non-ndarrays, so maybe we should mark this as `skip`?
* `rolling_window`: `nputils._rolling_window` uses `np.lib.stride_tricks.as_strided`, which cannot be overridden by `pint`. We probably have to use something different?
* `shift`: ~this tries to trim, then concatenate a filled array, but I think this should use `np.pad` after trimming? Are there any disadvantages to that?~ it uses `numpy.pad` now which is supported since `dask==0.18` or `dask==0.19`
* `concat`: ~this was a misconception on my part, I didn't realize this was a classmethod. After fixing that this still fails because I assumed `Variable.concat` used the dimension names to reshape the arrays. It does not, so this fails:~ I rewrote the test to pass arrays that don't cause the failure
```python
xr.Variable.concat([xr.Variable((""x"", ""y""), ...), xr.Variable((""y"", ""z""), ...)], dim=""y"")
```
* `pad_with_fill_value`: ~I think this is a bug in `pint` (see hgrecco/pint#992)~ fixed on pint master
Does anyone have any comments on these before I start fixing them? @dcherian?",2020-01-17T23:36:45Z,2020-02-24T00:09:54Z,2020-02-23T19:13:08Z,2020-02-23T19:13:08Z,47476eb400497215b114c2abddc457a057205f63,,,0,b51caa42d05566d1fe41d8bd155a9f2195b9e96a,52ee5dfe73b51b55cc90f2140f2cd54a2e7946a0,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3706,
368690448,MDExOlB1bGxSZXF1ZXN0MzY4NjkwNDQ4,3728,closed,0,allow formatting the diff of ndarray attributes,14808389,"This allows to have `ndarray` instances in attributes, which is the case for the dataset from `xarray/tests/data/example.uamiv`. It won't fix the cause for the error of #3711, though, because that seems to non-deterministic.
- [x] partial fix to #3711
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && && flake8`
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-01-29T17:56:32Z,2020-02-24T11:23:37Z,2020-02-23T19:13:46Z,2020-02-23T19:13:45Z,858eba6f1a99b4b1e37ab16f76d4bd060c5598fb,,,0,62efdccbb1162477f877f81e4c331b61fba45249,28577dd2e84f77adeac698e2d60187c69f7f4fa0,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3728,
369167502,MDExOlB1bGxSZXF1ZXN0MzY5MTY3NTAy,3732,closed,0,Documentation fixes,14808389,"The recent update of `pandas` makes our documentation raise warnings. This disables building documentation pages for the index attributes removed / renamed by `pandas` and ignores a warning raised by `dask.dataframe` (this should be fixed there, instead).
I didn't check for new attributes / broken links on the object pages (e.g. the page for `CFTimeIndex`), I'll do that in a new PR.
",2020-01-30T16:25:39Z,2020-01-30T18:34:03Z,2020-01-30T18:33:22Z,2020-01-30T18:33:22Z,5cf3b0840bf9d8f4f2a5874ed000f91afcf883b1,,,0,18d99555f4ca5522534f65b93502f7a318901745,7c32c8ae77557178d618abe65924baf89667b55c,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3732,
378315908,MDExOlB1bGxSZXF1ZXN0Mzc4MzE1OTA4,3787,closed,0,always use dask_array_type for isinstance calls,14808389,"This makes sure we use `dask_array_type` instead of `dask_array.Array` for `isinstance` calls.
- [x] Closes #3779
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API",2020-02-21T14:41:17Z,2020-02-24T00:10:51Z,2020-02-23T19:34:35Z,2020-02-23T19:34:34Z,66625c9947a647a4a547dc151f45b192dbb2bd20,,,0,f6459d9c2c50fefdebd0cf5597a01b452c9c1c04,90e734a55792f3c19e795df110fc3501c609d191,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3787,
378329438,MDExOlB1bGxSZXF1ZXN0Mzc4MzI5NDM4,3788,closed,0,remove datetime tests with pint,14808389,"Since it does not make sense to try to wrap `datetime` objects in `pint`, I'm removing those tests. They still exposed a bug in the compatibility code of `isnat`: if `dask` is installed, the code would always use `pd.isnull`.
- [x] Closes #3778
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-02-21T15:10:09Z,2020-02-28T15:16:21Z,2020-02-28T15:16:14Z,2020-02-28T15:16:14Z,20e6236f250d1507d22daf06d38b283a83c12e44,,,0,abfa3583263066ce049f6c519cb1bc07fcf679bc,fd08842e81576f5ea6b826e31bc2031bcca79de2,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3788,
379635678,MDExOlB1bGxSZXF1ZXN0Mzc5NjM1Njc4,3797,closed,0,install most documentation requirements using pip,14808389,"RTD seems to have quite a lot of memory issues. In theory, they could upgrade to allow up to 2GB of RAM per project, but since `conda-forge` will probably continue to grow in the future, that would only be a short-term fix. `pip` does not have this issue (at least not as much), but we cannot solely rely on it since we also depend on packages that either don't provide wheels (`cartopy` and `cf-units`) or are not available on PyPI (`hdf5`?).
At the moment, the builds still fail, we probably need to add non-python dependencies such as `hdf5`.
- [x] Closes #3796
",2020-02-25T15:03:04Z,2020-03-13T11:18:07Z,2020-03-13T11:17:54Z,,1cda5ee89787381246c0378623b7435328e69d1b,,,0,5eb037f193cf2c12e02feb28464987538eaad062,18e34cc8746ea2ce7be785edcaeee0bd7d4a0200,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3797,
385211775,MDExOlB1bGxSZXF1ZXN0Mzg1MjExNzc1,3847,closed,0,provide a error summary for assert_allclose,14808389,"right now, unlike `assert_identical` and `assert_equals`, `assert_allclose` simply prints the mismatching data without providing a summary about what failed. This tries to fix that by allowing the `compat` parameter to `formatting.diff_array_repr` and `formatting.diff_dataset_repr` to be a callable and by rewriting `assert_allclose` to only have one assert statement per type.
- [x] Closes #3617, closes #1690?
- [x] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
There are still more tests to write but I would like to get early feedback about this approach vs. adding a `""allclose""` compat type in addition to the existing `""equals""` and `""identical""` to the formatting functions.",2020-03-08T01:06:20Z,2020-06-13T17:53:08Z,2020-06-13T17:53:03Z,2020-06-13T17:53:03Z,2ba530026fb273a2882869a6e09ede053a0f081b,,,0,1b268516ae29fd3bc9f017a3b5340b95bcf1eb3e,8051c47686ae23062f9008785563d62327735002,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3847,
386931658,MDExOlB1bGxSZXF1ZXN0Mzg2OTMxNjU4,3857,closed,0,Blacken the doctest code in docstrings,14808389,"With a bit of preparation this is the result of running [black-doctest](https://github.com/keewis/black-doctest) on the repository. The tool itself is experimental but I didn't find any issues after manually reviewing the changes. The exact call was:
```bash
python -m blackdoc .
```
I'm not too sure what line length we use for docstrings (I used the default of `88` for this run), but if we'd like a different number we can just rerun the tool.
`python -m pytest --doctest-modules xarray/core` still fails but from what I saw these failures are not due to changes in this PR.
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-03-11T21:36:08Z,2020-03-16T19:18:47Z,2020-03-14T21:25:47Z,2020-03-14T21:25:47Z,cafab46aac8f7a073a32ec5aa47e213a9810ed54,,,0,6a35f9fee15b8636443c18788f7e4333aa8be721,739b34767ddd19b6168af05ee749b527266c104d,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3857,
392531316,MDExOlB1bGxSZXF1ZXN0MzkyNTMxMzE2,3878,closed,0,reword the whats-new entry for unit support,14808389,"Reword the `whats-new.rst` entry for #3611 and #3706 so we can release without claiming full unit support.
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-03-23T17:26:28Z,2020-03-23T18:03:09Z,2020-03-23T18:03:05Z,2020-03-23T18:03:05Z,c32d7bdda1ab00f37989e57605a851ca07c30d82,,,0,ae459478025aa4e032d4528a6870fa21b00f42e0,9eec56c833da6dca02c3e6c593586fd201a534a0,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3878,
395119713,MDExOlB1bGxSZXF1ZXN0Mzk1MTE5NzEz,3909,closed,0,update the docstring of diff,14808389,"As per #1040, don't document the `dim` parameter of `Dataset.diff` and `DataArray.diff` as optional.
- [x] Fixes #1040
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-03-28T16:32:45Z,2020-03-28T18:40:00Z,2020-03-28T18:18:21Z,2020-03-28T18:18:21Z,6852d01b2e2315b2d7244315f61bf7ecfbc19206,,,0,6933f4c159b5a7a895ce4964682cefd9d62d1f9d,b084064fa62d3dedc3706c2f6c2dff90940fec27,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3909,
395142697,MDExOlB1bGxSZXF1ZXN0Mzk1MTQyNjk3,3911,closed,0,Update pre-commit-config.yaml,14808389,"This limits the `pre-commit` `isort` hook to python files and updates the used `flake8` version.
- [x] Closes #3750
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-03-28T19:30:16Z,2020-03-28T20:58:20Z,2020-03-28T20:58:16Z,2020-03-28T20:58:15Z,ca6bb8561f2977509fc5bf53eae0efd080c0a952,,,0,6cae81280b00cd2536ef6ead232f21962299f05c,79513b7453f0b284ac5abcacf96fede702d6150c,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3911,
395302245,MDExOlB1bGxSZXF1ZXN0Mzk1MzAyMjQ1,3918,closed,0,add pint to the output of show_versions,14808389,"
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-03-29T19:07:45Z,2020-03-29T21:12:39Z,2020-03-29T21:12:35Z,2020-03-29T21:12:35Z,dbfb0ee5c36213fbe5547c55fe890cabbc11546a,,,0,71906cd7262184094f093a5dfae9ba694a74a445,1416d5ae475c0875e7a5d76fa4a8278838958162,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3918,
395321455,MDExOlB1bGxSZXF1ZXN0Mzk1MzIxNDU1,3919,closed,0,add a CI that tests xarray with all optional dependencies but dask,14808389,"Was using the `py38` environment the correct choice? I'm also not sure if adding a new CI was as simple as adding two lines, but that's something I will see once the CI runs :grin:
Edit: `dask`, `dask-core` and `distributed` get pulled in by other packages, so it seems there is a bit more investigation necessary.
- [x] Closes #3794
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-03-29T21:09:45Z,2020-04-03T20:32:59Z,2020-04-03T19:48:19Z,2020-04-03T19:48:18Z,8a1c933d8c351eae58ef0af2fef74134463d2544,,,0,8ec3af7db2ada90d3b1292e3bb5f070bf6aadebf,eb8e43b717651cdbf65b09226d97661ce60ba446,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3919,
395324791,MDExOlB1bGxSZXF1ZXN0Mzk1MzI0Nzkx,3920,closed,0,reactivate the macos CI,14808389,"the packaging issue has been closed, so this tries to reactivate the MacOS CI.
- [x] Closes #3867
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-03-29T21:32:51Z,2020-03-29T22:13:31Z,2020-03-29T22:13:26Z,2020-03-29T22:13:26Z,eb8e43b717651cdbf65b09226d97661ce60ba446,,,0,40d11e927ab826975ed6129dc12329402a6dc66e,dbfb0ee5c36213fbe5547c55fe890cabbc11546a,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3920,
401656175,MDExOlB1bGxSZXF1ZXN0NDAxNjU2MTc1,3960,open,0,examples for special methods on accessors,14808389,"This starts adding the parametrized accessor examples from #3829 to the accessor documentation as suggested by @jhamman. Since then the `weighted` methods have been added, though, so I'd like to use a different example instead (ideas welcome).
Also, this feature can be abused to add functions to the main `DataArray` / `Dataset` namespace (by registering a function with the `register_*_accessor` decorators, see the second example). Is this something we want to explicitly discourage?
(~When trying to build the docs locally, sphinx keeps complaining about a code block without code. Not sure what that is about~ seems the `ipython` directive does not allow more than one expression, so I used `code` instead)
- [x] Closes #3829
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-04-09T21:34:30Z,2022-06-09T14:50:17Z,,,d6a53b777015e7e07220dc50b0d77418c0e24975,,,0,a116ee58a0ab55e07dec4861d78dc21d949cd0d3,d1e4164f3961d7bbb3eb79037e96cae14f7182f8,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3960,
404033294,MDExOlB1bGxSZXF1ZXN0NDA0MDMzMjk0,3975,closed,0,pint support for Dataset,14808389,"This is part of the effort to add support for `pint` (see #3594) to `Dataset` objects (although it will probably be a test-only PR, just like #3643).
- [x] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
The list of failing tests from #3594:
* Dataset methods
- `__init__`: Needs unit support in IndexVariable, and merge does not work yet (test bug is also possible)
- aggregation: `xarray` does not implement `__array_function__` (see #3917)
- `rank`: depends on `bottleneck` and thus only works with `numpy.array`
- `ffill`, `bfill`: uses `bottleneck`
- `interpolate_na`: uses `numpy.vectorize`, which does not support NEP-18, yet
- `equals`, `identical`: works (but no units / unit checking in `IndexVariable`)
- `broadcast_like`: works (but no units / unit checking in `IndexVariable`)
- `to_stacked_array`: no units in `IndexVariable`
- `sel`, `loc`: no units in `IndexVariable`
- `interp`, `reindex`: partially blocked by `IndexVariable`. `reindex` works with units in `data`, but `interp` uses `scipy`
- `interp_like`, `reindex_like`: same as `interp` / `reindex`
- `quantile`: works, but needs `pint` >= 0.12
- `groupby_bins`: needs `pint` >= 0.12 (for `isclose`)
- `rolling`: uses `numpy.lib.stride_tricks.as_strided`
- `rolling_exp`: uses `numbagg` (supports NEP-18, but `pint` doesn't support its functions)",2020-04-15T23:11:15Z,2020-06-17T20:40:12Z,2020-06-17T20:40:07Z,2020-06-17T20:40:07Z,66e77309ad48a5ad0dbe774c5500bb52775b9372,,,0,91b95a4960f727d3d0715361b1c20cde2409126d,2ba530026fb273a2882869a6e09ede053a0f081b,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3975,
404573114,MDExOlB1bGxSZXF1ZXN0NDA0NTczMTE0,3978,closed,0,use preformatted text for the code in the issue template,14808389,"Using backticks does not work in the summary, so we need to use html tags (i.e. `xr.show_versions()`) instead.
A demo:
Output of xr.show_versions()
```
...
```
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API",2020-04-16T18:02:22Z,2020-04-17T13:46:01Z,2020-04-17T05:59:14Z,2020-04-17T05:59:14Z,cb3326e0b9d80efdf099013d3d9664a6797d74af,,,0,e74790bbaa4aa2c58f91c0acbdda456692852087,2c77eb531b6689f9f1d2adbde0d8bf852f1f7362,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3978,
406619093,MDExOlB1bGxSZXF1ZXN0NDA2NjE5MDkz,3988,closed,0,built-in accessor documentation,14808389,"We currently use `property` to attach our built-in accessors (`plot`, `dt` and `str`) to the `DataArray` and `Dataset` classes. However, because `property` returns itself when trying to access it as a class attribute, this does not work when generating the documentation (`sphinx` inspects classes, not class instances).
This adds a `property`-like descriptor that works on both classes and instance objects (the name could be more descriptive) and uses that to document the `Dataset.plot.*` and `DataArray.plot.*` methods (see the [rendered documentation](https://xarray-keewis.readthedocs.io/en/accessor-documentation/api.html)). I have not been able to get `sphinx` to work with `_PlotMethods.__slots__`, though.
A few questions / comments on this:
1. I noticed we have `DataArray.plot.__call__` and `xarray.plot.plot` but not `DataArray.plot.plot`. Is that something that is worth adding?
2. The functions decorated with the custom property define docstrings which currently are lost. Should we patch them on their return values?
3. Right now, the error message when accidentally trying to call e.g. `xr.DataArray.plot.line()` is not very helpful:
```pytb
AttributeError: 'NoneType' object has no attribute 'dims'
```
4. Now that we can document the accessors, we need to think about how to structure `api.rst`. For `plot` and `str`, we could just list methods / attributes in subsections of `DataArray` / `Dataset` (or keep the `Plotting` / `str` / ... sections and add class subsections?), but `dt` is more complicated since it dispatches for `datetime` and `timedelta`
- [x] Closes #3625
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
Edit: err, it seems I used the branch I pushed to the main repository for a documentation preview for this...",2020-04-21T11:39:36Z,2020-06-13T17:52:51Z,2020-06-13T17:52:46Z,2020-06-13T17:52:46Z,e26b80f3b813d84520eef4d371a2609fd09182e3,,,0,4940b53e253a639cc75e4fbe6599fdc4c81c3e55,e8bd8665e8fd762031c2d9c87987d21e113e41cc,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3988,
406625226,MDExOlB1bGxSZXF1ZXN0NDA2NjI1MjI2,3989,closed,0,Fix distributed tests on upstream-dev,14808389," - [x] Closes #3987
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-04-21T11:53:02Z,2020-04-21T13:59:49Z,2020-04-21T12:53:45Z,2020-04-21T12:53:45Z,b62a3fb2e96e6d88bb866453958a902fd782adc8,,,0,bf8edde2cabd28dfeee986e6f039659b716f90be,6a6f2c8748464c89a61dbdbc9636bce78a965369,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3989,
406828495,MDExOlB1bGxSZXF1ZXN0NDA2ODI4NDk1,3990,closed,0,Silence sphinx warnings,14808389,"This again silences a few warnings, mostly by fixing or removing links. Together with #3988, this silences all warnings unrelated to the docstrings (unfortunately, the bug in `napoleon` was not fixed, yet)
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-04-21T18:20:09Z,2020-04-22T10:21:42Z,2020-04-22T10:21:39Z,2020-04-22T10:21:39Z,0cd14a564cbc46b33e7c12e9a254c3b287dd3993,,,0,cb51a5575147689aa01f50dd3970a81d2b6030e6,b62a3fb2e96e6d88bb866453958a902fd782adc8,MEMBER,,13221727,https://github.com/pydata/xarray/pull/3990,
409715153,MDExOlB1bGxSZXF1ZXN0NDA5NzE1MTUz,4012,closed,0,Apply blackdoc to the documentation,14808389,"This applies `black` to the code in the documentation using [`blackdoc`](https://github.com/keewis/blackdoc). The tool itself is not stable or released yet, but this demonstrate the upcoming support for `rst` code blocks, including the ipython sphinx directive. There are a few issues with the latter, e.g. the semi-colon to suppress output will be removed by `black`. In a few cases this changes the other outputs, mostly plots. I think we might fix/work around that by moving the line decorator to the last line that should be plotted (which is what I did), but we could also use the ipython syntax with cell decorators:
```python
@savefig ...
In [1]: # code
...: # with multiple lines
```
Also, while I checked the changes manually, please don't take my word for it: I'm really not sure I didn't miss anything. I know this is a rather large PR so I'm fine with waiting.
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-04-27T20:00:15Z,2020-04-29T16:20:01Z,2020-04-29T16:10:10Z,2020-04-29T16:10:10Z,8834afa9f617bd201eba00374bb55d96dccec96b,,,0,27af0d43888318f1c7bd630102e46488a8a23d4b,33a66d6380c26a59923922ee11e8ffcf0b4f379f,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4012,
417489873,MDExOlB1bGxSZXF1ZXN0NDE3NDg5ODcz,4057,closed,0,fix the failing flake8 CI,14808389,"With its recent release, `pycodestyle` introduced `E741` which flags parameters named `l` (lowercase `L`) since that tends to be confused with `1` (the digit) or maybe even `(` or `)` depending on the font. The names actually don't matter in both cases since the first method is abstract and the second method is a dummy.
- [x] Closes #4056
- [x] Passes `isort -rc . && black . && mypy . && flake8`
",2020-05-13T16:54:28Z,2020-05-13T17:35:51Z,2020-05-13T17:35:46Z,2020-05-13T17:35:46Z,8051c47686ae23062f9008785563d62327735002,,,0,7099069f17405f1f151b7c07c0c41287a8e348cf,c73e9589da06730848a876b1c277bf1ad389372f,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4057,
418957747,MDExOlB1bGxSZXF1ZXN0NDE4OTU3NzQ3,4070,closed,0,remove the backslash escapes and typehint fragments in the API docs,14808389,"The reason for those fragments is that `napoleon` and `numpydoc` somehow conflict with each other. From a quick glance I couldn't find anything that breaks without `numpydoc`, but I might be missing something.
For reference, here's the new [API page](https://xarray-keewis.readthedocs.io/en/fix-signature-escapes/api.html).
- [x] Closes #3178
- [x] Passes `isort -rc . && black . && mypy . && flake8`
",2020-05-16T11:55:23Z,2020-05-19T16:49:31Z,2020-05-19T16:49:26Z,2020-05-19T16:49:26Z,f38b0c15aa90c6812118047ae637ee67048db51f,,,0,d23c48b27a64a03263c56dc2828da8e07e814e81,2542a63f6ebed1a464af7fc74b9f3bf302925803,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4070,
424150604,MDExOlB1bGxSZXF1ZXN0NDI0MTUwNjA0,4102,closed,0,cache rasterio example files,14808389,"To make building the documentation a bit faster (by 5-10 minutes for me), this adds a `xr.tutorial.open_rasterio` function with a signature and behavior that is almost identical to `tutorial.open_dataset` (when we replace the `open_*` functions with `open_dataset(..., format=""..."")` we should do that for the tutorial functions, too).
It uses `requests.get` instead of [`urllib.request.urlretrieve`](https://docs.python.org/3/library/urllib.request.html#urllib.request.urlretrieve) so that would be a new dependency. I'm not sure if that's an issue since it's installed in the `bare-minimum` CI's environment.
The `tutorial.open_dataset` code could be rewritten to use the same structure but I wanted to get feedback on `open_rasterio` first.
Edit: I also changed the default cache directory to `~/.cache/xarray_tutorial_data` with a fallback to the old default if `~/.cache` does not exist
- [x] Closes #3986
- [x] Tests added (but that's just a comparison between cached and uncached)
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-05-27T22:43:04Z,2021-03-24T17:58:48Z,2021-03-24T17:56:49Z,2021-03-24T17:56:49Z,8452120e52862df564a6e629d1ab5a7d392853b0,,,0,b532879c42c1a6641e9571ad22e32821a3795ad7,ec4e8b5f279e28588eee8ff43a328ca6c2f89f01,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4102,
426034064,MDExOlB1bGxSZXF1ZXN0NDI2MDM0MDY0,4117,closed,0,use numpy's new intersphinx url,14808389,"With the recent documentation changes, `numpy` also changed the location of the intersphinx inventory (`objects.inv`). This makes sure we use the new location.",2020-06-01T15:03:34Z,2020-06-02T14:48:42Z,2020-06-01T23:11:09Z,2020-06-01T23:11:09Z,93b2d040ff17baffd1db976acf4e6cd0c8291045,,,0,bd982b5a0cc087ad1fbc71637179ae11c2ec9444,fd9e620a84389170138cc014ee5a0213718beb78,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4117,
432437679,MDExOlB1bGxSZXF1ZXN0NDMyNDM3Njc5,4138,closed,0,Fix the upstream-dev pandas build failure,14808389,"As pointed out by @TomAugspurger in https://github.com/pydata/xarray/issues/4133#issuecomment-641332231, there are pre-built nightly wheels for `numpy`, `scipy` and `pandas` in the [scipy-wheels-nightly repository](https://anaconda.org/scipy-wheels-nightly/).
Not sure how frequently these are updated, though, at least the `numpy` wheel doesn't really seem to be built daily.
- [x] Closes #4133
",2020-06-10T12:58:29Z,2020-06-11T10:10:50Z,2020-06-11T02:14:49Z,2020-06-11T02:14:49Z,4071125feedee690364272e8fde9b94866f85bc7,,,0,d5651f35c13fe1d49925455c53e8e3db13c1376c,2a288f6ed4286910fcf3ab9895e1e9cbd44d30b4,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4138,
433605313,MDExOlB1bGxSZXF1ZXN0NDMzNjA1MzEz,4149,closed,0,speed up map_blocks,14808389,"I'm not sure if I broke something, but this is what I would suggest to use instead of putting xarray objects into an object array. The list of arguments is normally far less than 100 elements, so using python for that should not be a problem.
Edit: we're back to a more reasonable 6 minutes for the CI (the build itself takes about 3 minutes)
- [x] might close #4147
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-06-12T10:41:35Z,2020-06-12T15:22:23Z,2020-06-12T15:03:20Z,2020-06-12T15:03:20Z,59a239710e0510f0cad28c7a521d8827a6633c36,,,0,6f12b72b7d204443b38417000ae17f9820390adf,8f688ea92ae8416ecc3e18f6e060dad16960e9ac,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4149,
433616647,MDExOlB1bGxSZXF1ZXN0NDMzNjE2NjQ3,4150,closed,0,parameter documentation for DataArray.sel,14808389,"I noticed yesterday that `DataArray.sel` doesn't document its parameters. Instead, it points to `Dataset.sel` (using the `See Also` section).
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-06-12T11:06:21Z,2020-06-12T15:22:39Z,2020-06-12T15:03:56Z,2020-06-12T15:03:56Z,48fbee08711bf01a4de9a822e0721608f7dd3093,,,0,2fedb75a86c5060e83349c38558d10bc3d8bed51,8f688ea92ae8416ecc3e18f6e060dad16960e9ac,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4150,
436094247,MDExOlB1bGxSZXF1ZXN0NDM2MDk0MjQ3,4163,closed,0,silence UnitStrippedWarnings,14808389,"Now that the tests are cleaned up, it is time to fix the numerous ""unit stripped"" warnings. We'll get there by promoting all `UnitStrippedWarning`s to errors (using `filterwarnings`) and fixing / xfailing the failing tests.
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API
",2020-06-17T21:02:16Z,2020-07-02T17:29:28Z,2020-07-02T16:13:59Z,2020-07-02T16:13:59Z,e216720ae8168d3e9fb5470cf45f0d382ebc6e20,,,0,f5ef2f577d51e295f694729a9299f95cb3ef0a4c,bdcfab524ef1c852abe6dabcfabc7292f058fddc,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4163,
438192833,MDExOlB1bGxSZXF1ZXN0NDM4MTkyODMz,4170,closed,0,use builtin python types instead of the numpy alias,14808389,"Not sure if this enough, but that's something the CI will tell me, right?
- [x] might close #4168
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-06-22T21:43:19Z,2020-06-22T22:52:19Z,2020-06-22T22:51:57Z,2020-06-22T22:51:57Z,2a8cd3b0545851cff2773d493e30d5c84aa1c4db,,,0,ea8d8b92cacb80e85ded72b25b121941866333fe,b9e6a36ff7a0ca3593165cf191f4152666fa4a66,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4170,
439268301,MDExOlB1bGxSZXF1ZXN0NDM5MjY4MzAx,4174,closed,0,use assert_allclose in the aggregation-with-units tests,14808389,"I can't really test this, but I think the errors in #4172 should be fixed by using `assert_allclose` instead of `assert_equal` / `assert_identical`.
- [x] Closes #4172
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-06-24T15:02:41Z,2020-06-24T18:25:47Z,2020-06-24T18:24:55Z,2020-06-24T18:24:54Z,5121d867a50af328353153a3bbc7656c154a602f,,,0,f562e4b9dc715a75223b0a0b29275f065840f353,fb5fe79a2881055065cc2c0ed3f49f5448afdf32,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4174,
439395195,MDExOlB1bGxSZXF1ZXN0NDM5Mzk1MTk1,4177,closed,0,Blackdoc,14808389,"This adds `blackdoc` to the `pre-commit` configuration. Since `pre-commit` has to be installed manually and can be disabled by `pre-commit uninstall` or by using `git commit -n` this is not a breaking change, ~but we should probably also add a section to `contributing.rst`~ done.
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-06-24T18:53:55Z,2020-06-27T12:33:58Z,2020-06-27T08:31:12Z,2020-06-27T08:31:12Z,732750a06aef2025b206ba6ff765f5acc53bfa25,,,0,301c0580ad557e0c8f55b8363339def3e4d93a07,65ca92a5c0a4143d00dd7a822bcb1d49738717f1,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4177,
442813582,MDExOlB1bGxSZXF1ZXN0NDQyODEzNTgy,4191,closed,0,use the latest image of RTD,14808389,This switches back to using the `latest` image on RTD (we tried using `stable` when we had build issues a few months ago and forgot to switch back after they were resolved).,2020-07-01T16:37:02Z,2020-07-01T18:05:04Z,2020-07-01T18:05:00Z,2020-07-01T18:04:59Z,5377687473ecb78db085b47f4f5774eb1df93970,,,0,cfb5dfc606deda92f52266f536235763f7074f2d,54b9450b9b9b1805831b2a891dbf7aa321583096,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4191,
444279236,MDExOlB1bGxSZXF1ZXN0NDQ0Mjc5MjM2,4199,closed,0,fix sphinx warnings,14808389,"This adds back the fail-on-warnings flag we lost during the move the RTDs PR preview, and also fixes the warnings that have accumulated since then.
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-07-04T12:29:57Z,2020-07-07T18:17:36Z,2020-07-07T14:52:27Z,2020-07-07T14:52:27Z,f3ca63a4ac5c091a92085b477a0d34c08df88aa6,,,0,6a6b209ffa5f1416ed87752b9e077f787edfbba0,87f671e3cb5e1b43c7d8fe8666e5fc1f904008d6,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4199,
444299197,MDExOlB1bGxSZXF1ZXN0NDQ0Mjk5MTk3,4201,closed,0,fix the failing matplotlib upstream-dev tests,14808389,"These tests were failing because a private attribute was removed.
- [x] Closes #4200
- [ ] Tests added
- [x] Passes `isort -rc . && black . && mypy . && flake8`
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-07-04T15:45:54Z,2020-07-04T17:25:16Z,2020-07-04T17:24:15Z,2020-07-04T17:24:15Z,03c8562bda56cbd90e571a5beb41f44fba064813,,,0,688a29a395a4066b5be0e9840dca67fcb41a1e67,87f671e3cb5e1b43c7d8fe8666e5fc1f904008d6,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4201,
444701115,MDExOlB1bGxSZXF1ZXN0NDQ0NzAxMTE1,4204,closed,0,update isort CI and pre-commit hook,14808389,"Now that the conda-forge feedstock has been updated, we would see a failing `isort` CI because of the removed `-rc` (short for `--recursive`). I also updated the version used by `pre-commit` to the `5.0.4` version released about an hour ago, which allows us to remove the file regex as recommended by @asottile in https://github.com/pydata/xarray/issues/3750#issuecomment-624402070 (we couldn't follow that advice before since we were using the `use_parentheses` setting which was broken on `4.3.21`)
- [x] Closes #4202
- [ ] Tests added
- [x] Passes `isort . && black . && mypy . && flake8`
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-07-06T11:00:24Z,2020-07-16T19:14:04Z,2020-07-16T19:13:58Z,2020-07-16T19:13:57Z,1be777fe725a85b8cc0f65a2bc41f4bc2ba18043,,,0,dbefbf2ca6d087dffdd8a56d3a9eca2372c81112,52043bc57f20438e8923790bca90b646c82442ad,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4204,
445309994,MDExOlB1bGxSZXF1ZXN0NDQ1MzA5OTk0,4206,closed,0,pin isort,14808389,"Since the new versions of `isort` want to reformat `import dask.array as da` styled imports, this pins the `isort` version for now.
We can undo this in #4204 and – if we decide they're harmless – also apply the changes `isort` suggests.
- [ ] Tests added
- [ ] Passes `isort -rc . && black . && mypy . && flake8`
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-07-07T10:12:13Z,2020-07-07T15:18:55Z,2020-07-07T14:50:30Z,2020-07-07T14:50:30Z,64c13918492a4b9ef5431ca7461e039a4bd69c95,,,0,7e8f1346ea6475f3f048a4a692d3cd02854f1c7d,03c8562bda56cbd90e571a5beb41f44fba064813,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4206,
449439006,MDExOlB1bGxSZXF1ZXN0NDQ5NDM5MDA2,4227,closed,0,pin pytest,14808389,"This pins `pytest` to a version that is not `6.0.0rc1`. We just have to remember to remove the pin once a new version (a new release candidate or `6.0.0`) was released.
- [x] Closes #4225
",2020-07-15T12:07:48Z,2020-07-15T12:23:32Z,2020-07-15T12:23:27Z,,96530ca80a5313597165b8b2462ce0e1b64280fd,,,0,8a478546c3bf8a0b741275ebcf54bc4f67e56066,52043bc57f20438e8923790bca90b646c82442ad,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4227,
451103999,MDExOlB1bGxSZXF1ZXN0NDUxMTAzOTk5,4237,closed,0,per-variable fill values,14808389,"This allows specifying different fill values per variable, defaulting to `dtypes.NA`. There's no documentation updates, yet: I'll work on that once I'm sure I found every function for which this change makes sense.
Here's a demo on how this works:
```python
In [3]: ds = xr.Dataset(
...: {""a"": (""x"", [2, 3]), ""b"": (""x"", [-9, 4])},
...: coords={""x"": [0, 1], ""u"": (""x"", [""a"", ""b""])},
...: )
...: ds
Out[3]:
Dimensions: (x: 2)
Coordinates:
* x (x) int64 0 1
u (x)
Dimensions: (x: 2)
Coordinates:
* x (x) int64 -1 0
u (x) object nan 'a'
Data variables:
a (x) float64 nan 2.0
b (x) float64 nan -9.0
In [5]: ds.reindex(x=[-1, 0], fill_value={""u"": ""z"", ""a"": 10})
Out[5]:
Dimensions: (x: 2)
Coordinates:
* x (x) int64 -1 0
u (x)
- [x] Closes #4165
- [x] Tests added
- [x] Passes `isort . && black . && mypy . && flake8`
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-07-17T12:52:17Z,2020-08-24T22:14:27Z,2020-08-24T22:03:15Z,2020-08-24T22:03:15Z,a36d0a1d4657c848dcdd76d0ecb9c783ad464057,,,0,bcaf16e336f72f1141e7434d0234e19eeeb2b128,d9ebcafaddf0bb80052d30f43ca5ea18a5c7229f,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4237,
455171006,MDExOlB1bGxSZXF1ZXN0NDU1MTcxMDA2,4248,closed,0,allow customizing the inline repr of a duck array,14808389,"This calls the duck array's `_repr_short_` (does not have to be that name, might also be `_repr_inline_` or something else) if it exists, which can make e.g. `pint.Quantity`'s inline repr a lot more useful. We might also be able to use that to get rid of our `inline_dask_repr` and `inline_sparse_repr` functions by pushing that upstream (or by monkeypatching).
- [x] possibly closes #2773
- [x] Tests added
- [x] Passes `isort . && black . && mypy . && flake8`
- [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-07-22T14:54:03Z,2020-08-06T16:46:07Z,2020-08-06T15:49:08Z,2020-08-06T15:49:08Z,7ba19e12cc569dea91edabd7f5dd6717270a13f7,,,0,f6161f3e45ed5200efa1d885a79c49480a3719fd,98dc1f4ea18738492e074e9e51ddfed5cd30ab94,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4248,
455295570,MDExOlB1bGxSZXF1ZXN0NDU1Mjk1NTcw,4254,closed,0,fix the RTD timeouts,14808389,"This attempts to fix the RTD timeouts. I think these are due to a warning from `matplotlib`, which we can probably just ignore for now.
- [x] attempts to close #4249
- [ ] Tests added
- [x] Passes `isort . && black . && mypy . && flake8`
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-07-22T18:56:16Z,2020-07-23T16:10:55Z,2020-07-22T21:17:59Z,2020-07-22T21:17:59Z,a081d01df11610adea7a48acee5a71d9eb5ffd16,,,0,77de762d87f49fc7858c0e92b86134bdc993c861,1be777fe725a85b8cc0f65a2bc41f4bc2ba18043,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4254,
455614718,MDExOlB1bGxSZXF1ZXN0NDU1NjE0NzE4,4256,closed,0,fix matplotlib errors for single level discrete colormaps,14808389,"~I'm not quite sure what happened, but our upstream-dev CI doesn't fail anymore. Looking at the build log, the install of the dev version of `matplotlib` seems to fail, so this tries to additionally remove the `matplotlib-base` package to see if the error comes up again if we make sure we get the dev version of `matplotlib`.~
`matplotlib` released a preview version to PyPI so we can run our tests again. This follows the suggestion from https://github.com/pydata/xarray/issues/4226#issuecomment-663030222: convert single levels to degenerate levels.
- [x] Closes #4226, towards #4947
- [x] Passes `pre-commit run --all-files`
",2020-07-23T10:24:26Z,2021-03-07T13:31:42Z,2021-03-07T13:31:37Z,2021-03-07T13:31:37Z,54d581791467325c0d90c0c53b014a37670b8a0a,,,0,01088e80b3557796209216556d87aa3d7acc310e,37522e991a32ee3c0ad1a5ff8afe8e3eb1885550,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4256,
456174556,MDExOlB1bGxSZXF1ZXN0NDU2MTc0NTU2,4264,closed,0,update howto release guide numbers,14808389,"#4217 didn't update the task item numbers, this fixes that.",2020-07-24T09:11:22Z,2020-07-26T19:17:38Z,2020-07-26T19:16:20Z,2020-07-26T19:16:20Z,8151390c3a7c324b6a208a9a3d994d56b4382d8e,,,0,367d889eb5ec03afbe8440e7229f72bd2b95e46d,349c5960f2008099ec99223b005df6552d3f85f9,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4264,
456598787,MDExOlB1bGxSZXF1ZXN0NDU2NTk4Nzg3,4268,closed,0,warn about the removal of the ufuncs,14808389,"As noted in #4116, using the functions in `xarray.ufuncs` will emit a warning stating that we'd remove those functions after support for `numpy < 1.17` was dropped. This also adds that to the API docs.",2020-07-25T10:35:45Z,2020-07-31T22:15:28Z,2020-07-31T21:30:43Z,2020-07-31T21:30:43Z,9058114f70d07ef04654d1d60718442d0555b84b,,,0,91e516a7b8154ecc156669591301ee34f760cf8e,b1c7e315e8a18e86c5751a0aa9024d41a42ca5e8,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4268,
456601317,MDExOlB1bGxSZXF1ZXN0NDU2NjAxMzE3,4269,closed,0,enable fail_on_warning for the docs CI,14808389,"RTD's sphinx extension released a new version since #4199, so let's try enabling the `fail_on_warning` setting again.
- [x] Passes `isort . && black . && mypy . && flake8`
",2020-07-25T11:01:39Z,2020-07-27T15:03:48Z,2020-07-27T14:04:49Z,2020-07-27T14:04:49Z,a198218ddabe557adbb04311b3234ec8d20419e7,,,0,ae8f969e960ab865d8b855b3328050039d1a4b84,8151390c3a7c324b6a208a9a3d994d56b4382d8e,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4269,
456610689,MDExOlB1bGxSZXF1ZXN0NDU2NjEwNjg5,4270,closed,0,remove the compatibility code in duck_array_ops.allclose_or_equiv,14808389,"#3847 added compatibility code for `dask < 2.9.1`. Since we bumped to `2.9` this code can be safely removed. If we can't require `dask >= 2.9.1` yet, we can wait with the merge of this PR until we can bump `dask` again.
- [x] Passes `isort . && black . && mypy . && flake8`
",2020-07-25T12:39:30Z,2020-07-26T19:13:12Z,2020-07-26T19:13:06Z,2020-07-26T19:13:06Z,9d6b174eef5a7f179f104605a3cd48d6b372405a,,,0,0ad47e0dbc7ba3f386ae4ba71d2d4bcc3dc7b4f2,b1c7e315e8a18e86c5751a0aa9024d41a42ca5e8,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4270,
458685179,MDExOlB1bGxSZXF1ZXN0NDU4Njg1MTc5,4286,closed,0,Silence sphinx warnings,14808389,"This prepares our docstrings for the improvements to `napoleon` in the upcoming `sphinx` release (~I'm not aware of a fixed date, though~ it's going to be released around Aug 08, so in about a week from now). `napoleon` now has a stricter syntax for parameter type specs with `napoleon_use_param = True`, which allows it to link to all referenced types.
We can't do much about the inherited docstrings, though, so we'd probably have to fix that upstream.
- [ ] works towards closing #3370
- [x] Passes `isort . && black . && mypy . && flake8`
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-07-29T20:48:17Z,2020-08-19T15:22:21Z,2020-08-19T14:59:44Z,2020-08-19T14:59:44Z,d9ebcafaddf0bb80052d30f43ca5ea18a5c7229f,,,0,419dd0181eda1c0cbdb00d151b07a8f0408e50e7,a7fb5a9fa1a2b829181ea9e4986b959f315350dd,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4286,
463624181,MDExOlB1bGxSZXF1ZXN0NDYzNjI0MTgx,4316,closed,0,silence the known docs CI issues,14808389,"In order to get our docs CI running again and to help find issues with the documentation (we already missed a few), this pins `pandas` to 1.0 (copied from #4296). Once we merged #4292 and fixed #4287 (mostly by using the upcoming `sphinx` 3.2 release), we can undo this.
",2020-08-05T20:25:41Z,2020-08-05T21:32:05Z,2020-08-05T21:31:46Z,2020-08-05T21:31:46Z,98dc1f4ea18738492e074e9e51ddfed5cd30ab94,,,0,ffffe6d35f000a16be4595b3d08488376cc0e515,1101eca6a50bb832d6812fbe78852dad2f0306cf,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4316,
464874928,MDExOlB1bGxSZXF1ZXN0NDY0ODc0OTI4,4323,closed,0,Use sphinx-accessors-autosummary,14808389,"Since I released a initial version of `sphinx-accessors-autosummary` (to `PyPI`, `conda-forge` requires a bit more work), I think we can start using it in `xarray`, too.
This also extends the docs on accessors to mention that package.
- [x] Closes #4152, closes #3361
- [x] Passes `isort . && black . && mypy . && flake8`
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
- [ ] New functions/methods are listed in `api.rst`
",2020-08-07T23:19:52Z,2020-08-09T22:48:59Z,2020-08-09T22:45:49Z,2020-08-09T22:45:48Z,1791c3b6f9852edca977c68c0bf52ed4406ef7b0,,,0,c444f33bf93405716ef25596e14e8a636283663e,df7b2eae3a26c1e86bd5f1dd7dab9cc8c4e53914,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4323,
465015798,MDExOlB1bGxSZXF1ZXN0NDY1MDE1Nzk4,4326,closed,0,pin sphinx,14808389,"The recently released `sphinx` 3.2 version includes a new type preprocessor that will warn about a few issues. These will be fixed / silenced in #4286, but to avoid a failing docs CI let's pin `sphinx` for now. I'm also pinning to `sphinx=3.1` instead of `sphinx<=3.1` because that is required for `sphinx-autosummary-accessors` to work properly.
",2020-08-08T10:36:23Z,2020-08-08T11:10:40Z,2020-08-08T11:10:34Z,2020-08-08T11:10:34Z,6e9edff57e22c02aa45163ca00732259eb53c0a7,,,0,f0835466a87ab411182c5e2d0867bac4420debfd,1d3dee08291c83d13c46c9b4ede99020942df2f1,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4326,
465798492,MDExOlB1bGxSZXF1ZXN0NDY1Nzk4NDky,4332,closed,0,install sphinx-autosummary-accessors from conda-forge,14808389,"`sphinx-autosummary-accessors` is now on [`conda-forge`](https://github.com/conda-forge/sphinx-autosummary-accessors-feedstock) and I hopefully fixed all issues with the package (but it would probably be good if someone with more experience with conda-forge packaging than me could review the feedstock).
This makes our docs CI install from `conda-forge` instead of PyPI.
",2020-08-11T00:35:52Z,2020-08-11T08:54:07Z,2020-08-11T08:54:04Z,2020-08-11T08:54:04Z,ceadecd586fa847f5212377f66f069731d1af68b,,,0,c78f68b451fa00979ef0506d99ccd7abc9feea2b,1791c3b6f9852edca977c68c0bf52ed4406ef7b0,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4332,
469745175,MDExOlB1bGxSZXF1ZXN0NDY5NzQ1MTc1,4350,closed,0,install the project on RTD,14808389,"The versions were broken because instead of installing we simply extended `sys.path`. That way, `sphinx` is able to find the correct version, but `setuptools_scm` can't put the version in the `METADATA` file in the installed egg. Instead, `pkg_resources.get_distribution(""xarray"").version` gets its version from a released version of `xarray` that was pulled in by a dependency (hence the old version in the title bar). To fix that, we need to install before building the documentation.
However, since RTD installs with `--upgrade --upgrade-strategy=eager` (which upgrades all packages to the most recent version), we can't install using their `pip` method. The `setuptools` method doesn't work either because `cfgrib` pulls in the most recent released version of `xarray`, and `setuptools` can't seem to overwrite / uninstall previously installed versions. To work around that, this installs using the `pip` section in the environment file.
- [x] Closes #4289",2020-08-18T21:01:59Z,2020-08-18T22:33:10Z,2020-08-18T22:32:51Z,2020-08-18T22:32:50Z,11d72d0eb7a0c5176b2543c497cd454a7f9c881e,,,0,f57166f71d92a10b71db06e5fda1cd5bada4d8e5,5198360c0bc28dd7528e909c6b6ccffe731474ad,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4350,
470332038,MDExOlB1bGxSZXF1ZXN0NDcwMzMyMDM4,4355,closed,0,update the instructions in the contributing guide,14808389,"Our contributing guide is out-of-date, we usually use merge commits instead of rebasing (which would require force-pushing). This has already lead to confusion, see #4314.
Also, I noticed that in `Delete your merged branch` it recommends to use `git branch -d ` after updating `master`. That doesn't work anymore because we've switched to squash-merges.
- [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
",2020-08-19T18:15:15Z,2020-08-20T21:40:05Z,2020-08-20T05:06:38Z,2020-08-20T05:06:38Z,526f735f4349c2d07e92be89b3122b9ffaa836bc,,,0,5246a79465cf0427bcdd1b4146f8f5b64055625e,e05fddea852d08fc0845f954b79deb9e9f9ff883,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4355,
470528223,MDExOlB1bGxSZXF1ZXN0NDcwNTI4MjIz,4358,closed,0,add a fallback_version to the setuptools_scm configuration,14808389,"Follow-up to #4299. While investigating version issues on RTD, I noticed that `setuptools_scm` allows configuring its behavior, and the custom `try: ... except ...` clause can be replaced by setting `fallback_version`. The advantage is that once we switch to `pyproject.toml` (for which we need to drop python 3.6), the changes are much more straightforward.
cc @crusaderky ",2020-08-20T00:27:42Z,2020-08-22T14:41:07Z,2020-08-22T14:39:45Z,2020-08-22T14:39:45Z,2bc8e33b319d54f9a6e89a88ac3161f4fb569fcf,,,0,7b7afe00f08406ed89a53175c5806af17b9a5fd2,e05fddea852d08fc0845f954b79deb9e9f9ff883,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4358,
471118019,MDExOlB1bGxSZXF1ZXN0NDcxMTE4MDE5,4359,closed,0,override the signature of plotfunc,14808389,"This fixes the documented signature of the plotting functions. Not sure if using a decorator to override `__wrapped__` is the best way to achieve this, though.
- [x] Closes #4152
- [x] Passes `isort . && black . && mypy . && flake8`
- [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
",2020-08-20T17:38:03Z,2020-09-06T23:05:11Z,2020-09-06T23:05:04Z,2020-09-06T23:05:04Z,5d6a7348d295d26347be3a91073d81f810b6558e,,,0,a14af0a33f9ca5d98ca2ba7d5a61ae5b79e136c6,9ee0f018aac45a83df7a65b1499263412dab9bed,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4359,
474373118,MDExOlB1bGxSZXF1ZXN0NDc0MzczMTE4,4381,closed,0,run black and blackdoc,14808389,"`black` changed their style (format docstrings and trailing comma handling mostly) in their new release. This simply runs that new version of `black` on the repository.
This is a separate PR so reviewing becomes easier.
Since it is an automatic change, this should be ready to be merged once the CI is green.",2020-08-27T00:23:04Z,2020-08-27T15:12:48Z,2020-08-27T14:56:38Z,2020-08-27T14:56:38Z,ce153852771fe6b0a45534df20b061a6f559842e,,,0,a0b3c221eec87b420c6fe67b2e59bd7f208e78dc,9c85dd5f792805bea319f01f08ee51b83bde0f3b,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4381,
474833563,MDExOlB1bGxSZXF1ZXN0NDc0ODMzNTYz,4384,closed,0,"black, v2",14808389,"Follow-up to #4381, removing some trailing commas.
",2020-08-27T17:03:58Z,2020-08-27T22:39:45Z,2020-08-27T18:02:11Z,2020-08-27T18:02:11Z,13caf96efb3f121e232a35aafceed80c832a9876,,,0,c2010097a112d751ed4b16171ef2b4fa9731764d,4aa7622b6ff16647df64fe69f39438b7cbe9576c,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4384,
476547812,MDExOlB1bGxSZXF1ZXN0NDc2NTQ3ODEy,4396,closed,0,update the isort and blackdoc pre-commit hooks,14808389,"Follow-up to #4388. Updates the versions of `isort` and `blackdoc` (by calling `pre-commit autoupdate`). The most recent version of `blackdoc` is important because it fixes the broken compatibility with `black` 20.08b1.
",2020-08-31T21:21:10Z,2020-08-31T22:00:17Z,2020-08-31T22:00:13Z,2020-08-31T22:00:13Z,2acd0fc6563c3ad57f16e6ee804d592969419938,,,0,fa93f352c4cb0742b4bff13791415ac6e1b08f4e,55480de69096cc5ae003f639c2c953066e829120,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4396,
480770321,MDExOlB1bGxSZXF1ZXN0NDgwNzcwMzIx,4408,closed,0,Fix doctests,14808389,"This is an attempt to fix the examples in our docstrings. With this, the output of:
```bash
python -m pytest --doctest-modules xarray --ignore xarray/tests
```
is
remaining warnings and errors
```
====================================================================================================== test session starts =======================================================================================================
platform linux -- Python 3.8.5, pytest-6.0.1, py-1.9.0, pluggy-0.13.1
rootdir: ..., configfile: setup.cfg
plugins: cov-2.10.0, env-0.6.2, hypothesis-5.23.11
collected 91 items
xarray/conventions.py FF [ 2%]
xarray/backends/api.py F [ 3%]
xarray/coding/cftime_offsets.py . [ 4%]
xarray/coding/cftimeindex.py .... [ 8%]
xarray/coding/strings.py F [ 9%]
xarray/core/accessor_dt.py ... [ 13%]
xarray/core/accessor_str.py . [ 14%]
xarray/core/alignment.py .. [ 16%]
xarray/core/combine.py .. [ 18%]
xarray/core/common.py ....F...... [ 30%]
xarray/core/computation.py ..... [ 36%]
xarray/core/dataarray.py ....................... [ 61%]
xarray/core/dataset.py .....F............. [ 82%]
xarray/core/extensions.py . [ 83%]
xarray/core/groupby.py . [ 84%]
xarray/core/indexing.py FF [ 86%]
xarray/core/merge.py . [ 87%]
xarray/core/nputils.py . [ 89%]
xarray/core/options.py . [ 90%]
xarray/core/parallel.py . [ 91%]
xarray/core/rolling.py .. [ 93%]
xarray/core/rolling_exp.py . [ 94%]
xarray/core/utils.py . [ 95%]
xarray/core/variable.py .. [ 97%]
xarray/plot/utils.py .. [100%]
============================================================================================================ FAILURES ============================================================================================================
___________________________________________________________________________________________ [doctest] xarray.conventions.BoolTypeArray ___________________________________________________________________________________________
048 Decode arrays on the fly from integer to boolean datatype
049
050 This is useful for decoding boolean arrays from integer typed netCDF
051 variables.
052
053 >>> x = np.array([1, 0, 1, 1, 0], dtype=""i1"")
054
055 >>> x.dtype
Expected:
dtype('>i2')
Got:
dtype('int8')
.../xarray/conventions.py:55: DocTestFailure
_______________________________________________________________________________________ [doctest] xarray.conventions.NativeEndiannessArray _______________________________________________________________________________________
021
022 >>> x = np.arange(5, dtype="">i2"")
023
024 >>> x.dtype
025 dtype('>i2')
026
027 >>> NativeEndiannessArray(x).dtype
028 dtype('int16')
029
030 >>> NativeEndiannessArray(x)[:].dtype
UNEXPECTED EXCEPTION: TypeError(""unexpected key type: "")
Traceback (most recent call last):
File ""~/.conda/envs/xarray/lib/python3.8/doctest.py"", line 1336, in __run
exec(compile(example.source, filename, ""single"",
File """", line 1, in
File "".../xarray/conventions.py"", line 44, in __getitem__
return np.asarray(self.array[key], dtype=self.dtype)
File "".../xarray/core/indexing.py"", line 1277, in __getitem__
array, key = self._indexing_array_and_key(key)
File "".../xarray/core/indexing.py"", line 1269, in _indexing_array_and_key
raise TypeError(""unexpected key type: {}"".format(type(key)))
TypeError: unexpected key type:
.../xarray/conventions.py:30: UnexpectedException
__________________________________________________________________________________________ [doctest] xarray.backends.api.save_mfdataset __________________________________________________________________________________________
1182 compute : bool
1183 If true compute immediately, otherwise return a
1184 ``dask.delayed.Delayed`` object that can be computed later.
1185
1186 Examples
1187 --------
1188
1189 Save a dataset into one netCDF per year of data:
1190
1191 >>> years, datasets = zip(*ds.groupby(""time.year""))
UNEXPECTED EXCEPTION: NameError(""name 'ds' is not defined"")
Traceback (most recent call last):
File ""~/.conda/envs/xarray/lib/python3.8/doctest.py"", line 1336, in __run
exec(compile(example.source, filename, ""single"",
File """", line 1, in
NameError: name 'ds' is not defined
.../xarray/backends/api.py:1191: UnexpectedException
_______________________________________________________________________________________ [doctest] xarray.coding.strings.StackedBytesArray ________________________________________________________________________________________
199 Wrapper around array-like objects to create a new indexable object where
200 values, when accessed, are automatically stacked along the last dimension.
201
202 >>> StackedBytesArray(np.array([""a"", ""b"", ""c""]))[:]
UNEXPECTED EXCEPTION: ValueError(""can only use StackedBytesArray if argument has dtype='S1'"")
Traceback (most recent call last):
File ""~/.conda/envs/xarray/lib/python3.8/doctest.py"", line 1336, in __run
exec(compile(example.source, filename, ""single"",
File """", line 1, in
File "".../xarray/coding/strings.py"", line 215, in __init__
raise ValueError(
ValueError: can only use StackedBytesArray if argument has dtype='S1'
.../xarray/coding/strings.py:202: UnexpectedException
________________________________________________________________________________________ [doctest] xarray.core.common.DataWithCoords.pipe ________________________________________________________________________________________
578 >>> def adder(data, arg):
579 ... return data + arg
580 ...
581 >>> def div(data, arg):
582 ... return data / arg
583 ...
584 >>> def sub_mult(data, sub_arg, mult_arg):
585 ... return (data * mult_arg) - sub_arg
586 ...
587 >>> x.pipe(adder, 2)
Differences (unified diff with -expected +actual):
@@ -2,6 +2,6 @@
Dimensions: (lat: 2, lon: 2)
Coordinates:
+ * lon (lon) int64 150 160
* lat (lat) int64 10 20
- * lon (lon) int64 150 160
Data variables:
temperature_c (lat, lon) float64 12.98 16.3 14.06 12.9
.../xarray/core/common.py:587: DocTestFailure
_____________________________________________________________________________________ [doctest] xarray.core.dataset.Dataset.filter_by_attrs ______________________________________________________________________________________
5719 ... },
5720 ... coords={
5721 ... ""lon"": ([""x"", ""y""], lon),
5722 ... ""lat"": ([""x"", ""y""], lat),
5723 ... ""time"": pd.date_range(""2014-09-06"", periods=3),
5724 ... ""reference_time"": pd.Timestamp(""2014-09-05""),
5725 ... },
5726 ... )
5727 >>> # Get variables matching a specific standard_name.
5728 >>> ds.filter_by_attrs(standard_name=""convective_precipitation_flux"")
Differences (unified diff with -expected +actual):
@@ -2,8 +2,8 @@
Dimensions: (time: 3, x: 2, y: 2)
Coordinates:
+ lon (x, y) float64 -99.83 -99.32 -99.79 -99.23
+ * time (time) datetime64[ns] 2014-09-06 2014-09-07 2014-09-08
+ lat (x, y) float64 42.25 42.21 42.63 42.59
reference_time datetime64[ns] 2014-09-05
- lat (x, y) float64 42.25 42.21 42.63 42.59
- * time (time) datetime64[ns] 2014-09-06 2014-09-07 2014-09-08
- lon (x, y) float64 -99.83 -99.32 -99.79 -99.23
Dimensions without coordinates: x, y
Data variables:
.../xarray/core/dataset.py:5728: DocTestFailure
____________________________________________________________________________________ [doctest] xarray.core.indexing._decompose_outer_indexer _____________________________________________________________________________________
971 -----
972 This function is used to realize the vectorized indexing for the backend
973 arrays that only support basic or outer indexing.
974
975 As an example, let us consider to index a few elements from a backend array
976 with a orthogonal indexer ([0, 3, 1], [2, 3, 2]).
977 Even if the backend array only supports basic indexing, it is more
978 efficient to load a subslice of the array than loading the entire array,
979
980 >>> backend_indexer = BasicIndexer(slice(0, 3), slice(2, 3))
UNEXPECTED EXCEPTION: TypeError('__init__() takes 2 positional arguments but 3 were given')
Traceback (most recent call last):
File ""~/.conda/envs/xarray/lib/python3.8/doctest.py"", line 1336, in __run
exec(compile(example.source, filename, ""single"",
File """", line 1, in
TypeError: __init__() takes 2 positional arguments but 3 were given
.../xarray/core/indexing.py:980: UnexpectedException
__________________________________________________________________________________ [doctest] xarray.core.indexing._decompose_vectorized_indexer __________________________________________________________________________________
893 -----
894 This function is used to realize the vectorized indexing for the backend
895 arrays that only support basic or outer indexing.
896
897 As an example, let us consider to index a few elements from a backend array
898 with a vectorized indexer ([0, 3, 1], [2, 3, 2]).
899 Even if the backend array only supports outer indexing, it is more
900 efficient to load a subslice of the array than loading the entire array,
901
902 >>> backend_indexer = OuterIndexer([0, 1, 3], [2, 3])
UNEXPECTED EXCEPTION: TypeError('__init__() takes 2 positional arguments but 3 were given')
Traceback (most recent call last):
File ""~/.conda/envs/xarray/lib/python3.8/doctest.py"", line 1336, in __run
exec(compile(example.source, filename, ""single"",
File """", line 1, in
TypeError: __init__() takes 2 positional arguments but 3 were given
.../xarray/core/indexing.py:902: UnexpectedException
======================================================================================================== warnings summary ========================================================================================================
xarray/core/common.py::xarray.core.common.DataWithCoords.resample
xarray/core/common.py::xarray.core.common.DataWithCoords.resample
xarray/core/common.py::xarray.core.common.DataWithCoords.resample
.../xarray/core/common.py:1230: FutureWarning: 'base' in .resample() and in Grouper() is deprecated.
The new arguments that you should use are 'offset' or 'origin'.
>>> df.resample(freq=""3s"", base=2)
becomes:
>>> df.resample(freq=""3s"", offset=""2s"")
grouper = pd.Grouper(
xarray/core/dataarray.py::xarray.core.dataarray.DataArray.argmax
xarray/core/dataarray.py::xarray.core.dataarray.DataArray.idxmax
.../xarray/core/dataarray.py:4090: DeprecationWarning: Behaviour of argmin/argmax with neither dim nor axis argument will change to return a dict of indices of each dimension. To get a single, flat index, please use np.argmin(da.data) or np.argmax(da.data) instead of da.argmin() or da.argmax().
result = self.variable.argmax(dim, axis, keep_attrs, skipna)
xarray/core/dataarray.py::xarray.core.dataarray.DataArray.argmin
xarray/core/dataarray.py::xarray.core.dataarray.DataArray.idxmin
.../xarray/core/dataarray.py:3987: DeprecationWarning: Behaviour of argmin/argmax with neither dim nor axis argument will change to return a dict of indices of each dimension. To get a single, flat index, please use np.argmin(da.data) or np.argmax(da.data) instead of da.argmin() or da.argmax().
result = self.variable.argmin(dim, axis, keep_attrs, skipna)
xarray/core/dataarray.py::xarray.core.dataarray.DataArray.roll
.../xarray/core/dataarray.py:2974: FutureWarning: roll_coords will be set to False in the future. Explicitly set roll_coords to silence warning.
ds = self._to_temp_dataset().roll(
xarray/core/dataset.py::xarray.core.dataset.Dataset.roll
:1: FutureWarning: roll_coords will be set to False in the future. Explicitly set roll_coords to silence warning.
-- Docs: https://docs.pytest.org/en/stable/warnings.html
==================================================================================================== short test summary info =====================================================================================================
FAILED xarray/conventions.py::xarray.conventions.BoolTypeArray
FAILED xarray/conventions.py::xarray.conventions.NativeEndiannessArray
FAILED xarray/backends/api.py::xarray.backends.api.save_mfdataset
FAILED xarray/coding/strings.py::xarray.coding.strings.StackedBytesArray
FAILED xarray/core/common.py::xarray.core.common.DataWithCoords.pipe
FAILED xarray/core/dataset.py::xarray.core.dataset.Dataset.filter_by_attrs
FAILED xarray/core/indexing.py::xarray.core.indexing._decompose_outer_indexer
FAILED xarray/core/indexing.py::xarray.core.indexing._decompose_vectorized_indexer
============================================================================================ 8 failed, 83 passed, 9 warnings in 3.73s ============================================================================================
```
where `DataWithCoords.pipe` and `Dataset.filter_by_attrs` fail mostly because the order of the coords is not deterministic. Should we sort before formatting the coords?
Does anyone know what `ds` in `save_mfdataset` should look like? Also, how do we fix the construction of `OuterIndexer` and `VectorizedIndexer`?
- [x] Closes #3837
- [ ] Tests added
- [x] Passes `isort . && black . && mypy . && flake8`
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
Edit: if we merge #4409 before this, we can make sure *all* doctests pass.
",2020-09-06T13:42:39Z,2020-09-11T21:27:06Z,2020-09-11T12:34:34Z,2020-09-11T12:34:34Z,23dc2fc9f2785c348ff821bf2da61dfa2206d283,,,0,25b0ab889291e729d20e9e00bbde9eea6c9a44dc,a6eccfa346b14d83a745cdbfe4718d8c046c5e12,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4408,
480823816,MDExOlB1bGxSZXF1ZXN0NDgwODIzODE2,4409,closed,0,Keep the original ordering of the coordinates,14808389,"In #4408, The formatting of `coords` turned out to be non-deterministic. This sorts the data variables, coordinates and dimensions without coordinates sections as well as the dimensions summary of `Dataset` objects.
No tests, yet, because I'm not quite sure sorting using the `str` representation of the key is the best way to make the formatting deterministic (so I'd appreciate reviews).
It might also be good to document somewhere that these sections are now sorted, and that it only makes sense to look at the order in the dimension summary of `DataArray` and `Variable` objects.
- [x] Closes #4072
- [ ] Tests added
- [x] Passes `isort . && black . && mypy . && flake8`
- [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
",2020-09-06T16:49:57Z,2020-09-18T21:05:19Z,2020-09-18T21:00:11Z,2020-09-18T21:00:10Z,b2c1550cffcac99ba48bb3d99751892eb150a6a6,,,0,00b44bd32c48af13c81c93c0124b57ff4ffb46a7,fd3eb216dc5758c52cb5fe7dc494c625c15c4fc8,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4409,
489542672,MDExOlB1bGxSZXF1ZXN0NDg5NTQyNjcy,4437,closed,0,add a ci for doctests,14808389,"Now that #4409 is merged, we can add a CI that makes sure all examples actually work.
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
",2020-09-18T21:11:01Z,2020-09-19T13:16:43Z,2020-09-19T10:38:12Z,2020-09-19T10:38:12Z,0af238c153f4a7c8b27d41893c9893e9db2b72f0,,,0,16a509b491eba4f855709b231009012a52ddb75c,b2c1550cffcac99ba48bb3d99751892eb150a6a6,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4437,
490946870,MDExOlB1bGxSZXF1ZXN0NDkwOTQ2ODcw,4448,closed,0,fix the sphinx build on RTD,14808389,"#4187 contained broken rst (a missing backtick), this fixes that.",2020-09-22T13:38:07Z,2020-09-22T15:08:05Z,2020-09-22T15:07:33Z,2020-09-22T15:07:33Z,57ae5a482e2e64f0fae30038c35e14a127d52a27,,,0,cdbe7bacd27fa5c3dae1f7d64843b056a9a85696,5654aee927586c2dcbc3f34d674ed5c9646326c1,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4448,
493109722,MDExOlB1bGxSZXF1ZXN0NDkzMTA5NzIy,4460,closed,0,fix Edit on GitHub,14808389,"This uses `scanpydoc`'s `github_url` jinja filter to fix the github url in our api docs, and to also always point to `master` (see https://github.com/pydata/xarray/pull/4440#issuecomment-695835133).
This currently does not work because we need support to enable the `DONT_OVERWRITE_SPHINX_CONTEXT` flag. We also might want to vendor `github_url` because it is only a small part of `scanpydoc`.
- [x] Closes #2821
- [x] Passes `isort . && black . && mypy . && flake8`
",2020-09-25T14:19:57Z,2020-10-04T20:11:49Z,2020-10-04T17:08:42Z,2020-10-04T17:08:42Z,45aab423b61c99278dd9b4d8a21915647afae623,,,0,9472bd19a4f2311d298e62ade6d890e6a95f64e6,c0399d3de144bf26a0e6b5a8abe2b1560576c552,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4460,
496512996,MDExOlB1bGxSZXF1ZXN0NDk2NTEyOTk2,4479,closed,0,update the pre-commit hooks,14808389,this updates the version of `blackdoc` pinned in `.pre-commit-hooks.yaml` (using `pre-commit autoupdate` so `isort` is also updated),2020-10-01T19:59:32Z,2020-10-01T20:33:52Z,2020-10-01T20:12:41Z,2020-10-01T20:12:41Z,5f8ddfeb30c4de373c0112082c2714faa4fbf559,,,0,e3cac1db829e641d745f4ca8eae643ab7dd843d8,5296ed18272a856d478fbbb3d3253205508d1c2d,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4479,
509227316,MDExOlB1bGxSZXF1ZXN0NTA5MjI3MzE2,4530,closed,0,document the duck array integration status,14808389,"With the initial (experimental) release of `pint-xarray` getting closer (see xarray-contrib/pint-xarray#25), I figured it might make sense to document the parts of the API of `xarray` which right now won't work with duck arrays, and to start maintaining a list of extensions like `pint-xarray`.
The remaining issues are taken from #3594, but I'm sure I missed something (e.g. plotting).
- [x] Passes `isort . && black . && mypy . && flake8`
- [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
",2020-10-23T21:33:36Z,2020-11-20T21:55:47Z,2020-11-20T21:04:21Z,2020-11-20T21:04:20Z,a2192158e3fbb94b2d972ff3e1693fffa65e50be,,,0,56228986b6fb65eaf42bce334047e0417acc3691,ef910b9f40f7ebe6528781a1418ddc40915952bb,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4530,
516859440,MDExOlB1bGxSZXF1ZXN0NTE2ODU5NDQw,4566,closed,0,Document external io libraries,14808389,"There are a few external libraries that add support for more I/O formats. This adds `xarray-mongodb` to a new section in `io.rst`, but we might just as well maintain that list in `related-projects.rst` and point to that list in `io.rst`. Same for #4530, where I started a list of duck array support libraries (currently only `pint-xarray`).
- [x] Closes #683
- [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
",2020-11-06T16:41:22Z,2020-12-07T01:07:24Z,2020-12-07T01:07:20Z,2020-12-07T01:07:20Z,ff6b1f542e52dc330e294fd367f846e02c2955a2,,,0,011c98b5f5da9d8a16fa46f82f14d50a48134781,8f67dcac429bb6bd33b990e4bbd1b607a31d7f52,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4566,
517193748,MDExOlB1bGxSZXF1ZXN0NTE3MTkzNzQ4,4567,closed,0,Update pre-commit hook versions,14808389,"`pre-commit autoupdate` also wants to update `mypy` to `0.790`, but running that prints a error:
```
xarray/core/utils.py:466: error: Value of type variable ""_LT"" of ""sorted"" cannot be ""K""
```
I'm not sure how to fix that, so I'll leave the upgrade to someone else.
",2020-11-07T21:21:36Z,2020-11-10T16:54:51Z,2020-11-10T16:54:47Z,2020-11-10T16:54:47Z,e71c7b4ea967c32fa1c9fd99209a0d4cc05e1577,,,0,1ced0174ca007c8aaf93d6beb2b4d67bc3e9c3bc,f10a6fe273402015a7caab26bf66d6923b35169b,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4567,
520916258,MDExOlB1bGxSZXF1ZXN0NTIwOTE2MjU4,4584,closed,0,Increase visibility of allowed failures,14808389,"Right now, allowed failures are hard to see, so this tries to add warnings to increase the visibility without removing the `allow_failure` flag.
- [x] related to #4574
",2020-11-14T00:34:46Z,2020-12-07T01:02:45Z,2020-12-07T01:02:39Z,2020-12-07T01:02:39Z,c4f37b82650e0f808da331f5cf482d22de82c258,,,0,ebb8c409150450601b68296bc3f06580c23f380f,8f67dcac429bb6bd33b990e4bbd1b607a31d7f52,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4584,
525298747,MDExOlB1bGxSZXF1ZXN0NTI1Mjk4NzQ3,4599,closed,0,clean up upstream-dev CI,14808389,"follow-up to #4583, which also added a PR upstream-dev CI. However, because the output of `pytest` has been redirected to a file, the failures are hard to diagnose. The fix is to duplicate `stdout` using `tee`.
~Additionally, we now have two upstream-dev CI, so I guess we should remove the old one?~ #4584 will probably set the upstream-dev CI to `allow_failure: true`, so it might be better to remove the new CI (or to somehow mark the new PR CI with `allow_failure: true` while not changing the scheduled CI).",2020-11-22T15:15:33Z,2020-11-23T18:47:37Z,2020-11-23T16:33:31Z,2020-11-23T16:33:31Z,603c37d037bc3f97665484b86ff62cd4e173844a,,,0,65346160994bb4c8838acef407d992f8594ccfc1,6daad0650b9869850eab4e7d87fd69545acf2994,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4599,
528280354,MDExOlB1bGxSZXF1ZXN0NTI4MjgwMzU0,4613,closed,0,document the option to pass a function to where,14808389," - [x] Closes #4223
- [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
",2020-11-26T22:05:53Z,2020-11-27T11:38:52Z,2020-11-27T05:58:04Z,2020-11-27T05:58:04Z,70c3817f5d09f3cec5e9966134aabd2fa5f786ff,,,0,57fa5a406ee989bdfdf5354c49f74424b5caeed2,5883a460b8fa9a72a2f12ee6495665bb7cc304f6,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4613,
528293588,MDExOlB1bGxSZXF1ZXN0NTI4MjkzNTg4,4615,closed,0,remove all inplace parameters from the public API,14808389,"As in #4561 this has been around for about 3 major versions. Not sure if it's too soon to remove it altogether, but I guess if we decide it is we can just wait with the merge until it is not.
- [x] Closes #3586
- [x] Passes `isort . && black . && mypy . && flake8`
",2020-11-26T23:15:14Z,2020-12-14T19:26:52Z,2020-12-12T23:10:11Z,2020-12-12T23:10:11Z,09aae0cfd42c5af61296a7de3329f246c843cddd,,,0,6daf6bf433f22f92684ddb9043bba18214bc2cc5,8f67dcac429bb6bd33b990e4bbd1b607a31d7f52,MEMBER,,13221727,https://github.com/pydata/xarray/pull/4615,