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 707647715,MDExOlB1bGxSZXF1ZXN0NDkyMDEzODg4,4453,Simplify and restore old behavior for deep-copies,1217238,closed,0,,,3,2020-09-23T20:10:33Z,2023-09-14T03:06:34Z,2023-09-14T03:06:33Z,MEMBER,,1,pydata/xarray/pulls/4453,"Intended to fix https://github.com/pydata/xarray/issues/4449 The goal is to restore behavior to match what we had prior to https://github.com/pydata/xarray/pull/4379 for all types of `data` other than `np.ndarray` objects Needs tests! - [ ] Closes #xxxx - [ ] Tests added - [ ] 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` ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/4453/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 327166000,MDExOlB1bGxSZXF1ZXN0MTkxMDMwMjA4,2195,WIP: explicit indexes,1217238,closed,0,,,3,2018-05-29T04:25:15Z,2022-03-21T14:59:52Z,2022-03-21T14:59:52Z,MEMBER,,0,pydata/xarray/pulls/2195,"Some utility functions that should be useful for https://github.com/pydata/xarray/issues/1603 Still very much a work in progress -- it would be great if someone has time to finish writing any of these in another PR!","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2195/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 494943997,MDExOlB1bGxSZXF1ZXN0MzE4NTk1NDE3,3316,"Clarify that ""scatter"" is a plotting method in what's new.",1217238,closed,0,,,3,2019-09-18T02:02:22Z,2019-09-18T03:47:46Z,2019-09-18T03:46:35Z,MEMBER,,0,pydata/xarray/pulls/3316,"When I read this, I thought it was referring to scattering data somehow :). ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3316/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 456963929,MDExOlB1bGxSZXF1ZXN0Mjg4ODcwMDQ0,3027,Ensure explicitly indexed arrays are preserved,1217238,closed,0,,,3,2019-06-17T14:21:18Z,2019-06-23T16:53:11Z,2019-06-23T16:49:23Z,MEMBER,,0,pydata/xarray/pulls/3027,"Fixes https://github.com/pydata/xarray/issues/3009 Previously, indexing an ImplicitToExplicitIndexingAdapter object could directly return an ExplicitlyIndexed object, which could not be indexed normally, e.g., `x[index]` could result in an object that could not be indexed properly. This resulted in broken behavior with dask's new `_meta` attribute. I'm pretty sure this fix is appropriate, but it does introduce two failing tests with xarray on dask master. In particular, there are now errors raised inside two tests from dask's `blockwise_meta` helper function: ``` > return meta.astype(dtype) E AttributeError: 'ImplicitToExplicitIndexingAdapter' object has no attribute 'astype' ``` cc @mrocklin @pentschev - [x] Tests added ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3027/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 396989505,MDExOlB1bGxSZXF1ZXN0MjQzMDM5NzQ4,2661,Remove broken Travis-CI builds,1217238,closed,0,,,3,2019-01-08T16:40:24Z,2019-01-08T18:34:04Z,2019-01-08T18:34:00Z,MEMBER,,0,pydata/xarray/pulls/2661,"Remove the optional condaforge-rc, netcdf4-dev and pynio-dev builds. These have been continuously failing (due to broken installs), so we shouldn't waste time/energy running them. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2661/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 324286237,MDExOlB1bGxSZXF1ZXN0MTg4OTMyODgx,2158,Fix dtype=S1 encoding in to_netcdf(),1217238,closed,0,,,3,2018-05-18T06:30:55Z,2018-06-01T01:09:45Z,2018-06-01T01:09:38Z,MEMBER,,0,pydata/xarray/pulls/2158," - [x] Closes #2149 (remove if there is no corresponding issue, which should only be the case for minor changes) - [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) @crusaderky please take a look. Testing here is not as thorough as in https://github.com/pydata/xarray/pull/2150 yet, but it does include a regression test.","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2158/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 300499762,MDExOlB1bGxSZXF1ZXN0MTcxNTY4MjAw,1945,Add seaborn import to toy weather data example.,1217238,closed,0,,,3,2018-02-27T05:37:09Z,2018-02-27T19:12:53Z,2018-02-27T19:12:53Z,MEMBER,,0,pydata/xarray/pulls/1945,"It looks like this got inadvertently removed with the flake8 fix in #1925. - [x] Closes #1944 ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/1945/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 278335633,MDExOlB1bGxSZXF1ZXN0MTU1NzY3NDc2,1752,Refactor xarray.conventions into VariableCoder,1217238,closed,0,,,3,2017-12-01T02:15:01Z,2017-12-23T13:38:41Z,2017-12-14T17:43:04Z,MEMBER,,0,pydata/xarray/pulls/1752,"Building off of discussion in #1087, I would like to propose refactoring xarray.conventions to use an interface based on VariableCoder objects with encode() and decode() methods. The idea is make it easier to write new backends, by making decoding variables according to CF conventions as simple as calling decode() on each coder in a list of coders, with encoding defined by calling the same list of encoders in the opposite order. As a proof of concept, here I implement only a single Coder. In addition to making use of xarray's existing lazy indexing behavior, I have written it so that dask arrays are decoded using dask (which would solve #1372) Eventually, we should port all the coders in xarray.conventions to this new format. This is probably best saved for future PRs -- help would be appreciated! - [x] Tests added / passed - [x] Passes ``git diff upstream/master **/*py | flake8 --diff`` ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/1752/reactions"", ""total_count"": 2, ""+1"": 2, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 267339197,MDExOlB1bGxSZXF1ZXN0MTQ3OTIwOTE1,1643,Deprecate Dataset.T as an alias for Dataset.transpose(),1217238,closed,0,,,3,2017-10-21T01:04:33Z,2017-11-02T19:01:59Z,2017-10-22T01:04:17Z,MEMBER,,0,pydata/xarray/pulls/1643," - [x] Closes #1232 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [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/1643/reactions"", ""total_count"": 2, ""+1"": 2, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 213265588,MDExOlB1bGxSZXF1ZXN0MTEwMDc1Mjk0,1305,Clarify licenses for bundled code,1217238,closed,0,,,3,2017-03-10T07:30:29Z,2017-03-11T23:28:38Z,2017-03-11T23:28:38Z,MEMBER,,0,pydata/xarray/pulls/1305,"They are all now called out explicitly in the README as well. - [x] closes #1254 - [x] passes ``git diff upstream/master | flake8 --diff``","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/1305/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 193467825,MDExOlB1bGxSZXF1ZXN0OTY1MDgyNjU=,1153,"Add drop=True argument to isel, sel and squeeze",1217238,closed,0,,,3,2016-12-05T11:02:14Z,2016-12-16T03:27:11Z,2016-12-16T03:27:11Z,MEMBER,,0,pydata/xarray/pulls/1153,"Fixes #242 This is useful for getting rid of extraneous scalar variables that arise from indexing, and in particular will resolve an issue for optional indexes: https://github.com/pydata/xarray/pull/1017#issuecomment-260777664","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/1153/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 124566831,MDExOlB1bGxSZXF1ZXN0NTQ4OTgwNjY=,695,Build docs on RTD using conda,1217238,closed,0,,,3,2016-01-01T23:23:01Z,2016-01-02T01:31:20Z,2016-01-02T01:31:17Z,MEMBER,,0,pydata/xarray/pulls/695,"It works! To preview, see http://xray.readthedocs.org/en/rtd-conda/ Fixes #602 ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/695/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 120508785,MDExOlB1bGxSZXF1ZXN0NTI3MzYwOTc=,670,Add broadcast function to the API,1217238,closed,0,,,3,2015-12-04T23:41:56Z,2016-01-01T22:13:17Z,2016-01-01T22:13:05Z,MEMBER,,0,pydata/xarray/pulls/670,"This is a renaming and update of the existing `xray.broadcast_arrays` function, which now works properly in the light of #648. xref #649 cc @rabernat ## Examples Broadcast two data arrays against one another to fill out their dimensions: ``` >>> a = xray.DataArray([1, 2, 3], dims='x') >>> b = xray.DataArray([5, 6], dims='y') >>> a array([1, 2, 3]) Coordinates: * x (x) int64 0 1 2 >>> b array([5, 6]) Coordinates: * y (y) int64 0 1 >>> a2, b2 = xray.broadcast(a, b) >>> a2 array([[1, 1], [2, 2], [3, 3]]) Coordinates: * x (x) int64 0 1 2 * y (y) int64 0 1 >>> b2 array([[5, 6], [5, 6], [5, 6]]) Coordinates: * y (y) int64 0 1 * x (x) int64 0 1 2 ``` Fill out the dimensions of all data variables in a dataset: ``` >>> ds = xray.Dataset({'a': a, 'b': b}) >>> ds2, = xray.broadcast(ds) # use tuple unpacking to extract one dataset >>> ds2 Dimensions: (x: 3, y: 2) Coordinates: * x (x) int64 0 1 2 * y (y) int64 0 1 Data variables: a (x, y) int64 1 1 2 2 3 3 b (x, y) int64 5 6 5 6 5 6 ``` ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/670/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 105927249,MDExOlB1bGxSZXF1ZXN0NDQ3MzczODA=,569,BUG: ensure xray works with pandas 0.17.0,1217238,closed,0,,1307323,3,2015-09-11T01:12:55Z,2015-10-21T07:05:48Z,2015-09-11T06:23:56Z,MEMBER,,0,pydata/xarray/pulls/569,"We were using some internal routines in pandas to convert object of datetime objects arrays to datetime64. Predictably, these internal routines have now changed, breaking xray. This is definitely my fault but also bad luck -- I had a guard against the internal function dissappearing, but not against the keyword arguments changing. In any case, this fix ensures forwards compatibility with the next release of pandas, which will be coming out next week. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/569/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 103966239,MDExOlB1bGxSZXF1ZXN0NDM3MjQxODQ=,554,Fixes for complex numbers,1217238,closed,0,,1307323,3,2015-08-31T00:36:57Z,2015-10-21T07:05:47Z,2015-09-01T20:28:51Z,MEMBER,,0,pydata/xarray/pulls/554,"Fixes #553 Also ensures we skip NaN when aggregating with complex dtypes. ~~Still needs release notes.~~ ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/554/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 71994342,MDExOlB1bGxSZXF1ZXN0MzQ0MDc4MDE=,405,Add robust retry logic when accessing remote datasets,1217238,closed,0,,987654,3,2015-04-29T21:25:47Z,2015-05-01T20:33:46Z,2015-05-01T20:33:45Z,MEMBER,,0,pydata/xarray/pulls/405,"Accessing data from remote datasets now has retrying logic (with exponential backoff) that should make it robust to occasional bad responses from DAP servers. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/405/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 59032389,MDExOlB1bGxSZXF1ZXN0MzAwNTY0MDk=,337,Cleanup (mostly documentation),1217238,closed,0,,799013,3,2015-02-26T07:40:01Z,2015-02-27T22:22:47Z,2015-02-26T07:43:37Z,MEMBER,,0,pydata/xarray/pulls/337,,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/337/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 29879804,MDExOlB1bGxSZXF1ZXN0MTM4MjM3NzI=,77,ENH: Dataset.reindex_like and DatasetArray.reindex_like,1217238,closed,0,,,3,2014-03-21T05:12:53Z,2014-06-12T17:30:21Z,2014-04-09T03:05:43Z,MEMBER,,0,pydata/xarray/pulls/77,"This provides an interface for re-indexing a dataset or dataset array using the coordinates from another object. Missing values along any coordinate are replaced by `NaN`. This method is directly based on the pandas method `DataFrame.reindex_like` (and the related series and panel variants). Eventually, I would like to build upon this functionality to add a `join` method to `xray.align` with the possible values `{'outer', 'inner', 'left', 'right'}`, just like `DataFrame.align`. This PR depends on PR #71, since I use its improved `copy` method for datasets. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/77/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 28123550,MDExOlB1bGxSZXF1ZXN0MTI4MzQwMDU=,15,Version now contains git commit ID,1217238,closed,0,,,3,2014-02-23T18:17:04Z,2014-06-12T17:29:51Z,2014-02-23T20:22:49Z,MEMBER,,0,pydata/xarray/pulls/15,"Thanks to some code borrowed from pandas, setup.py now reports the development version of xray as something like ""0.1.0.dev-de28cd6"". I also took this opportunity to add xray.**version**. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/15/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 28297980,MDExOlB1bGxSZXF1ZXN0MTI5MzIxMDU=,20,Handle mask_and_scale ourselves instead of using netCDF4,1217238,closed,0,,,3,2014-02-26T00:19:15Z,2014-06-12T17:29:32Z,2014-02-28T22:33:16Z,MEMBER,,0,pydata/xarray/pulls/20,"This lets us use NaNs instead of masked arrays to indicate missing values. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/20/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull