id,node_id,number,title,user,state,locked,assignee,milestone,comments,created_at,updated_at,closed_at,author_association,active_lock_reason,draft,pull_request,body,reactions,performed_via_github_app,state_reason,repo,type 1306543211,PR_kwDOAMm_X847f3yo,6792,Raise an error if you pass an invalid key in `chunks`,4806877,closed,0,,,3,2022-07-15T21:23:20Z,2022-08-02T15:57:50Z,2022-07-22T16:52:32Z,CONTRIBUTOR,,0,pydata/xarray/pulls/6792,"- [x] Tests added This was a minor issue that came up at the Dask BOF. Currently if the key of chunks dict isn't included in the dims then it gets silently ignored. This PR makes xarray raise an error instead. I'm not sure if this is the right place to put this change. So just let me know if it should go somewhere else. I changed an existing test. I am _pretty_ sure it was not intentionally using a key that isn't in the dims. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/6792/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1319621859,I_kwDOAMm_X85Op9Tj,6837,Clarify difference between `.load()` and `.compute()`,4806877,open,0,,,8,2022-07-27T14:07:33Z,2022-07-27T22:30:22Z,,CONTRIBUTOR,,,,"### What is your issue? I just realized that the difference between `.load()` and `.compute()` is that `.load()` operates inplace and `.compute()` returns a new xarray object.I have 2 suggestions for how this could be clearer: 1. Docs: the API docs for each method could reference the other. 2. Code: this might be too big a change, but maybe `.load()` should not return anything. Consider this example from pandas: ```python import pandas as pd df = pd.DataFrame({""air"": []}) df.rename({""air"": ""foo""}, axis=1, inplace=True) # returns None since df is renamed inplace ``` this matches the behavior of inplace actions in Python itself like `list.append` or `dict.update`. This would be a major breaking change though, and it might be easier to just remove `.load()` entirely. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/6837/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,issue 1301237961,PR_kwDOAMm_X847OKqc,6774,Make the `sel` error more descriptive when `method` is unset,4806877,closed,0,,,1,2022-07-11T21:17:07Z,2022-07-13T14:49:24Z,2022-07-12T20:33:00Z,CONTRIBUTOR,,0,pydata/xarray/pulls/6774,"- [x] Tests added This came up in the tutorial and I was wondering if the error could be made a little clearer. Not sure if the error message should hint that a user might want to use ``method``. ```python import numpy as np import pandas as pd import xarray as xr arr = xr.DataArray( data=np.arange(48).reshape(4, 2, 6), dims=(""u"", ""v"", ""time""), coords={ ""u"": [-3.2, 2.1, 5.3, 6.5], ""v"": [-1, 2.6], ""time"": pd.date_range(""2009-01-05"", periods=6, freq=""M""), }, ) arr.sel(u=5, time=""2009-04-28"") # I removed `method=""nearest""` ``` Before this PR: ```python-traceback ... KeyError: 5.0 ``` After this PR: ```python-traceback ... KeyError: ""not all values found in index 'u'. Did you mean to set `method=`?"" ``` ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/6774/reactions"", ""total_count"": 2, ""+1"": 2, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 392361367,MDExOlB1bGxSZXF1ZXN0MjM5NjUxOTU3,2618,Adding mask to open_rasterio,4806877,closed,0,,,17,2018-12-18T22:24:04Z,2021-06-24T13:44:33Z,2021-06-23T16:14:28Z,CONTRIBUTOR,,0,pydata/xarray/pulls/2618," - [x] Discussed in #1736 - [x] Tests added - [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API Not sure if this is the right approach @snowman2","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2618/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 573007307,MDExOlB1bGxSZXF1ZXN0MzgxNTk3Mzkw,3812,Turn on html repr by default,4806877,closed,0,,,6,2020-02-28T21:12:43Z,2020-03-26T02:19:22Z,2020-03-02T23:01:44Z,CONTRIBUTOR,,0,pydata/xarray/pulls/3812," - [x] Closes #3806 - [x] Passes `isort -rc . && black . && mypy . && flake8` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3812/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 572295802,MDU6SXNzdWU1NzIyOTU4MDI=,3806,Turn on _repr_html_ by default?,4806877,closed,0,,,3,2020-02-27T19:12:57Z,2020-03-02T23:01:44Z,2020-03-02T23:01:44Z,CONTRIBUTOR,,,,"I just wanted to open this to discuss turning the _repr_html_ on by default. This PR https://github.com/pydata/xarray/pull/3425 added it as a style option, but I suspect that more people will use if it is on by default. Does that seem like a reasonable change?","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3806/reactions"", ""total_count"": 4, ""+1"": 4, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,13221727,issue 525970896,MDU6SXNzdWU1MjU5NzA4OTY=,3553,ENH: Plotting backend options,4806877,open,0,,,0,2019-11-20T17:54:45Z,2019-12-17T11:38:58Z,,CONTRIBUTOR,,,,"Since pandas has implemented entry_points based plotting backends, it seems reasonable that xarray would do the same. This would make it even easier to produce holoviews plots (rendered in bokeh via hvplot), by using the `plot` method rather than by importing hvplot directly. #### Example ```python import xarray as xr air = xr.tutorial.open_dataset('air_temperature').load().air xr.options.plotting.backend = 'holoviews' air.isel(time=500).plot() ``` ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3553/reactions"", ""total_count"": 3, ""+1"": 3, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,issue 512071129,MDExOlB1bGxSZXF1ZXN0MzMyMTUyMDg4,3443,jupyterlab dark theme,4806877,closed,0,,,11,2019-10-24T17:08:27Z,2019-10-29T03:47:28Z,2019-10-29T03:47:28Z,CONTRIBUTOR,,0,pydata/xarray/pulls/3443," - [ ] Closes #xxxx - [ ] Tests added - [x] Passes `black . && mypy . && flake8` - [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API Follow on to #3425 to include support for jupyterlab dark theme. Note that this includes slight color changes. The most striking of which is that in jupyterlab light and regular notebook the even rows are white like the background. ## Jlab dark ## Jlab light ## notebook ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3443/reactions"", ""total_count"": 4, ""+1"": 4, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 510294810,MDExOlB1bGxSZXF1ZXN0MzMwNjk0MDc5,3425,Html repr,4806877,closed,0,,,54,2019-10-21T21:08:54Z,2019-10-25T07:00:26Z,2019-10-24T16:48:47Z,CONTRIBUTOR,,0,pydata/xarray/pulls/3425," This PR supersedes #1820 - see that PR for original discussion. See [this gist](https://nbviewer.jupyter.org/gist/jsignell/2b7843a6e4852198bf963fbd299e8d46) to try out the new MultiIndex and options functionality. - [x] Closes #1627, closes #1820 - [x] Tests added - [x] Passes `black . && mypy . && flake8` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API TODO: - [x] Add support for Multi-indexes - [x] Probably good to have some opt-in or fail back system in case where we (or users) know that the rendering will not work - [x] Add some tests ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3425/reactions"", ""total_count"": 2, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 2, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 512162755,MDExOlB1bGxSZXF1ZXN0MzMyMjI2NzU0,3444,Escaping dtypes,4806877,closed,0,,,2,2019-10-24T20:24:33Z,2019-10-24T21:51:18Z,2019-10-24T21:50:20Z,CONTRIBUTOR,,0,pydata/xarray/pulls/3444," - [ ] Closes #xxxx - [x] Tests added - [x] Passes `black . && mypy . && flake8` - [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API Follow-on to https://github.com/pydata/xarray/pull/3425 to make html_repr work with dtypes like '>>xr.open_mfdataset(['./ST4.2018092500.01h', './ST4.2018092501.01h'], engine='pynio', concat_dim='path') Dimensions: (x: 881, y: 1121, time: 2) Coordinates: lat (x, y) float32 23.116999 ... 45.618984 lon (x, y) float32 -119.023 ... -59.954613 * path (path) var_1 (time, x, y) float32 dask.array ``` For context I have implemented something similar in dask: https://github.com/dask/dask/pull/3908","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2550/reactions"", ""total_count"": 3, ""+1"": 3, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,13221727,issue 354324342,MDExOlB1bGxSZXF1ZXN0MjExMTE0MDUz,2384,Adding data kwarg to copy to create new objects with same structure as original,4806877,closed,0,,,17,2018-08-27T13:42:28Z,2018-09-19T13:04:39Z,2018-09-19T01:19:08Z,CONTRIBUTOR,,0,pydata/xarray/pulls/2384," - [x] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API (remove if this change should not be visible to users, e.g., if it is an internal clean-up, or if this is part of a larger project that will be documented later) This is a PR for the follow on work set out in https://github.com/pydata/xarray/pull/2375#issuecomment-415227870","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2384/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 352677925,MDExOlB1bGxSZXF1ZXN0MjA5OTMxMjYz,2375,Make `dim` optional on unstack,4806877,closed,0,,,13,2018-08-21T19:29:06Z,2018-09-05T16:01:23Z,2018-09-05T15:19:07Z,CONTRIBUTOR,,0,pydata/xarray/pulls/2375," - [x] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API (remove if this change should not be visible to users, e.g., if it is an internal clean-up, or if this is part of a larger project that will be documented later) Not sure if this is a desirable change but I thought it could be easily discussed as a PR. Just for context I was looking at flattening spatial data for machine learning pipelines and then reshaping after the output had been acquired. I have a NxM array called `b` and am flattening it like: ```python flat_input = b.stack(z=('y', 'x')) ``` Then I use that flat_input in my ML pipeline and get back an `np.array` (called `output`) which I want to unstack using all the metadata that went into stacking my original NxM array b. ```python xr.full_like(flat_input, output).unstack(dim='z') ``` This PR just makes the `dim` argument optional in unstack so that we can use ```python xr.full_like(flat_input, output).unstack() ``` As a follow on PR I was thinking of making a function called `xr.unstack_like(other: xr.DataArray|xr.Dataset, data: array_like)` to encompass this functionality. A couple questions: 1) Would something like `xr.unstack_like` be desirable? 2) Should we be using `xr.full_like` in this way? The documentation in xarray and numpy only mentions scalars, but arrays work fine in both. If this is a supported behavior I could add docs, and if not perhaps a copy and overwrite is a better approach? Here is a gist of the workflow using a tweaked datashader example and datashader example data https://gist.github.com/jsignell/79a6cf2da5c1458211d9dcf34d4417df","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2375/reactions"", ""total_count"": 4, ""+1"": 4, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 268171878,MDExOlB1bGxSZXF1ZXN0MTQ4NTAyNDE0,1654,[DOCS] PyNIO is now available on conda-forge,4806877,closed,0,,,1,2017-10-24T20:19:28Z,2017-10-24T20:20:02Z,2017-10-24T20:19:59Z,CONTRIBUTOR,,0,pydata/xarray/pulls/1654,"Just a docs change. Updated instructions for installing PyNIO to use conda-forge. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/1654/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 183792892,MDExOlB1bGxSZXF1ZXN0ODk4OTEzNzQ=,1052,catch numpy arrays in attrs before converting to dict,4806877,closed,0,,,4,2016-10-18T20:22:50Z,2016-10-25T18:19:50Z,2016-10-25T18:19:45Z,CONTRIBUTOR,,0,pydata/xarray/pulls/1052,"Makes it easier to dump to json (after conversation on #917) ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/1052/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 167091064,MDExOlB1bGxSZXF1ZXN0Nzg1MTAyMDk=,917,added to_dict function for xarray objects,4806877,closed,0,,,23,2016-07-22T17:14:03Z,2016-10-17T20:33:02Z,2016-08-11T21:54:25Z,CONTRIBUTOR,,0,pydata/xarray/pulls/917,"After the conversation #432 ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/917/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 72145600,MDU6SXNzdWU3MjE0NTYwMA==,406,millisecond and microseconds support,4806877,closed,0,,987654,5,2015-04-30T12:38:27Z,2015-05-01T20:33:10Z,2015-05-01T20:33:10Z,CONTRIBUTOR,,,,"netcdf4python supports milliseconds and microseconds: https://github.com/Unidata/netcdf4-python/commit/22d439d6d3602171dc2c23bca0ade31d3c49ad20 would it be possible to support in X-ray? ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/406/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,13221727,issue