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 2278499376,PR_kwDOAMm_X85uhFke,8997,"Zarr: Optimize `region=""auto""` detection",2448579,open,0,,,1,2024-05-03T22:13:18Z,2024-05-04T21:47:39Z,,MEMBER,,0,pydata/xarray/pulls/8997,"1. This moves the region detection code into `ZarrStore` so we only open the store once. 2. Instead of opening the store as a dataset, construct a `pd.Index` directly to ""auto""-infer the region. The diff is large mostly because a bunch of code moved from `backends/api.py` to `backends/zarr.py`","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8997/reactions"", ""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 2215762637,PR_kwDOAMm_X85rMHpN,8893,Avoid extra read from disk when creating Pandas Index.,2448579,open,0,,,1,2024-03-29T17:44:52Z,2024-04-08T18:55:09Z,,MEMBER,,0,pydata/xarray/pulls/8893," ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8893/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 2224297504,PR_kwDOAMm_X85rpGUH,8906,Add invariant check for IndexVariable.name,2448579,open,0,,,1,2024-04-04T02:13:33Z,2024-04-05T07:12:54Z,,MEMBER,,1,pydata/xarray/pulls/8906," @benbovy this seems to be the root cause of #8646, the variable name in `Dataset._variables` does not match `IndexVariable.name`. A good number of tests seem to fail though, so not sure if this is a good chck. - [ ] Closes #xxxx - [ ] Tests added - [ ] 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/8906/reactions"", ""total_count"": 2, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 2, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 2064698904,PR_kwDOAMm_X85jLHsQ,8584,Silence a bunch of CachingFileManager warnings,2448579,closed,0,,,1,2024-01-03T21:57:07Z,2024-04-03T21:08:27Z,2024-01-03T22:52:58Z,MEMBER,,0,pydata/xarray/pulls/8584,,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8584/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 2102852029,PR_kwDOAMm_X85lMXU0,8675,Fix NetCDF4 C version detection,2448579,closed,0,,,1,2024-01-26T20:23:54Z,2024-01-27T01:28:51Z,2024-01-27T01:28:49Z,MEMBER,,0,pydata/xarray/pulls/8675,"This fixes the failure locally for me. cc @max-sixty ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8675/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 2066129022,PR_kwDOAMm_X85jP678,8587,Silence another warning in test_backends.py,2448579,closed,0,,,1,2024-01-04T18:20:49Z,2024-01-05T16:13:05Z,2024-01-05T16:13:03Z,MEMBER,,0,pydata/xarray/pulls/8587,"Using 255 as fillvalue for int8 arrays will not be allowed any more. Previously this overflowed to -1. Now specify that instead. On numpy 1.24.4 ``` >>> np.array([255], dtype=""i1"") DeprecationWarning: NumPy will stop allowing conversion of out-of-bound Python integers to integer arrays. The conversion of 255 to int8 will fail in the future. array([-1], dtype=int8) ``` ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8587/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 2052694433,PR_kwDOAMm_X85ilhQm,8565,Faster encoding functions.,2448579,closed,0,,,1,2023-12-21T16:05:02Z,2024-01-04T14:25:45Z,2024-01-04T14:25:43Z,MEMBER,,0,pydata/xarray/pulls/8565,"Spotted when profiling some write workloads. 1. Speeds up the check for multi-index 2. Speeds up one string encoder by not re-creating variables when not necessary. @benbovy is there a better way?","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8565/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 2052610515,PR_kwDOAMm_X85ilOq9,8564,Fix mypy type ignore,2448579,closed,0,,,1,2023-12-21T15:15:26Z,2023-12-21T15:41:13Z,2023-12-21T15:24:52Z,MEMBER,,0,pydata/xarray/pulls/8564,,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8564/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 2021754904,PR_kwDOAMm_X85g8gnU,8506,Deprecate `squeeze` in GroupBy.,2448579,closed,0,,,1,2023-12-02T00:08:50Z,2023-12-02T00:13:36Z,2023-12-02T00:13:36Z,MEMBER,,0,pydata/xarray/pulls/8506,"- [x] Closes #2157 - [ ] Tests added - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` Could use a close-ish review.","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8506/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1989212292,PR_kwDOAMm_X85fOYwT,8444,Remove keep_attrs from resample signature,2448579,closed,0,,,1,2023-11-12T02:57:59Z,2023-11-12T22:53:36Z,2023-11-12T22:53:35Z,MEMBER,,0,pydata/xarray/pulls/8444," - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst`","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8444/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1471673992,PR_kwDOAMm_X85EFDiU,7343,Fix mypy failures,2448579,closed,0,,,1,2022-12-01T17:16:44Z,2023-11-06T04:25:52Z,2022-12-01T18:25:07Z,MEMBER,,0,pydata/xarray/pulls/7343,,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/7343/reactions"", ""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1689364566,PR_kwDOAMm_X85PbeOv,7796,Speed up .dt accessor by preserving Index objects.,2448579,closed,0,,,1,2023-04-29T04:22:10Z,2023-11-06T04:25:42Z,2023-05-16T17:55:48Z,MEMBER,,0,pydata/xarray/pulls/7796," - [ ] Closes #xxxx - [ ] Tests added - [ ] 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/7796/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1954535213,PR_kwDOAMm_X85dZT47,8351,"[skip-ci] Add benchmarks for Dataset binary ops, chunk",2448579,closed,0,,,1,2023-10-20T15:31:36Z,2023-10-20T18:08:40Z,2023-10-20T18:08:38Z,MEMBER,,0,pydata/xarray/pulls/8351,"xref #8339 xref #8350 ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8351/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1954360112,PR_kwDOAMm_X85dYtpz,8349,[skip-ci] dev whats-new,2448579,closed,0,,,1,2023-10-20T14:02:07Z,2023-10-20T17:28:19Z,2023-10-20T14:54:30Z,MEMBER,,0,pydata/xarray/pulls/8349," - [ ] Closes #xxxx - [ ] Tests added - [ ] 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/8349/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1950480317,PR_kwDOAMm_X85dLkAj,8334,Whats-new: 2023.10.0,2448579,closed,0,,,1,2023-10-18T19:22:06Z,2023-10-19T16:00:00Z,2023-10-19T15:59:58Z,MEMBER,,0,pydata/xarray/pulls/8334,,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8334/reactions"", ""total_count"": 1, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 1, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 923355397,MDExOlB1bGxSZXF1ZXN0NjcyMTI5NzY4,5480,Implement weighted groupby,2448579,open,0,,,1,2021-06-17T02:57:17Z,2023-07-27T18:09:55Z,,MEMBER,,1,pydata/xarray/pulls/5480," - xref #3937 - [ ] Tests added - [ ] Passes `pre-commit run --all-files` - [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst` - [ ] New functions/methods are listed in `api.rst` Initial proof-of-concept. Suggestions to improve this are very welcome. Here's some convenient testing code ``` python import xarray as xr ds = xr.tutorial.open_dataset('rasm').load() month_length = ds.time.dt.days_in_month weights = month_length.groupby('time.season') / month_length.groupby('time.season').sum() actual = ds.weighted(month_length).groupby(""time.season"").mean() expected = (ds * weights).groupby('time.season').sum(skipna=False) xr.testing.assert_allclose(actual, expected) ``` I've added info to the repr ``` python ds.weighted(month_length).groupby(""time.season"") ``` ``` WeightedDatasetGroupBy, grouped over 'season' 4 groups with labels 'DJF', 'JJA', 'MAM', 'SON'. weighted along dimensions: time by 'days_in_month' ```","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/5480/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1666853925,PR_kwDOAMm_X85OQT4o,7753,Add benchmark against latest release on main.,2448579,closed,0,,,1,2023-04-13T17:35:33Z,2023-04-18T22:08:58Z,2023-04-18T22:08:56Z,MEMBER,,0,pydata/xarray/pulls/7753,This adds a benchmark of `HEAD` vs the latest tag on `main`.,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/7753/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1658287592,PR_kwDOAMm_X85N0Ad4,7735,Avoid recasting a CFTimeIndex,2448579,closed,0,,,1,2023-04-07T02:45:55Z,2023-04-11T21:12:07Z,2023-04-11T21:12:05Z,MEMBER,,0,pydata/xarray/pulls/7735,"xref #7730 ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/7735/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1232835029,PR_kwDOAMm_X843qWEU,6592,Restore old MultiIndex dropping behaviour,2448579,closed,0,,,1,2022-05-11T15:26:44Z,2022-10-18T19:15:42Z,2022-05-11T18:04:41Z,MEMBER,,0,pydata/xarray/pulls/6592," - [x] Closes #6505 - [x] Tests added","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/6592/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1306904506,PR_kwDOAMm_X847g-W3,6798,Drop multi-indexes when assigning to a multi-indexed variable,2448579,closed,0,,,1,2022-07-16T21:13:05Z,2022-07-21T14:46:59Z,2022-07-21T14:46:58Z,MEMBER,,0,pydata/xarray/pulls/6798,"- [x] Closes #6505 - [x] Tests added","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/6798/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1221258144,PR_kwDOAMm_X843FiC3,6539,Direct usage questions to GH discussions,2448579,closed,0,,,1,2022-04-29T16:55:22Z,2022-04-30T02:03:46Z,2022-04-30T02:03:45Z,MEMBER,,0,pydata/xarray/pulls/6539,,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/6539/reactions"", ""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1200810062,PR_kwDOAMm_X842C5t3,6477,Propagate MultiIndex variables in broadcast,2448579,closed,0,,,1,2022-04-12T01:58:39Z,2022-04-13T14:49:35Z,2022-04-13T14:49:24Z,MEMBER,,0,pydata/xarray/pulls/6477,"xref #6293 - [x] Closes #6430 - [x] Tests added","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/6477/reactions"", ""total_count"": 3, ""+1"": 3, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 539171948,MDExOlB1bGxSZXF1ZXN0MzU0MTk0MDE0,3637,concat keeps attrs from first variable.,2448579,closed,0,,,1,2019-12-17T16:20:22Z,2022-01-05T18:57:38Z,2019-12-24T13:37:04Z,MEMBER,,0,pydata/xarray/pulls/3637," - [x] Closes #2060, closes #2575, xref #1614 - [x] Tests added - [x] Passes `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/3637/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 664568885,MDExOlB1bGxSZXF1ZXN0NDU1Nzg5Mjk2,4259,Improve some error messages: apply_ufunc & set_options.,2448579,closed,0,,,1,2020-07-23T15:23:57Z,2022-01-05T18:57:23Z,2020-07-25T23:04:55Z,MEMBER,,0,pydata/xarray/pulls/4259,"Makes some error messages clearer ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/4259/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 687325506,MDExOlB1bGxSZXF1ZXN0NDc0NzcwMjEy,4383,Dask/cleanup,2448579,closed,0,,,1,2020-08-27T15:14:19Z,2022-01-05T18:57:23Z,2020-09-02T20:03:03Z,MEMBER,,0,pydata/xarray/pulls/4383,"Some dask array cleanups 1. switch to using `dask.array.map_blocks` instead of `Array.map_blocks` (duck dask array compatibility) 2. Stop vendoring `meta_from_array` and `median`","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/4383/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 589835599,MDExOlB1bGxSZXF1ZXN0Mzk1MjgzNzU4,3916,facetgrid: fix case when vmin == vmax,2448579,closed,0,,,1,2020-03-29T16:59:14Z,2022-01-05T18:57:20Z,2020-04-03T19:48:55Z,MEMBER,,0,pydata/xarray/pulls/3916," - [x] Closes #3734 - [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 ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3916/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 490514191,MDExOlB1bGxSZXF1ZXN0MzE1MTA2NzA0,3288,Remove deprecated concat kwargs.,2448579,closed,0,,,1,2019-09-06T20:41:31Z,2022-01-05T18:57:02Z,2019-09-09T18:34:14Z,MEMBER,,0,pydata/xarray/pulls/3288," - [x] Passes `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/3288/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1038409453,PR_kwDOAMm_X84tyqhR,5905,[skip-ci] v0.20.0: whats-new for release,2448579,closed,0,,,1,2021-10-28T11:35:00Z,2022-01-05T18:56:55Z,2021-11-01T21:15:22Z,MEMBER,,0,pydata/xarray/pulls/5905,"Whats-new fixes for the release. Feel free to push to this branch with more improvements.","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/5905/reactions"", ""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1094502107,PR_kwDOAMm_X84wkWcB,6141,"Revert ""Deprecate bool(ds) (#6126)""",2448579,closed,0,,,1,2022-01-05T15:58:27Z,2022-01-05T16:57:33Z,2022-01-05T16:57:32Z,MEMBER,,0,pydata/xarray/pulls/6141,"This reverts commit d6ee8caa84b27d4635ec3384b1a06ef4ddf2d998. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/6141/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1045266457,PR_kwDOAMm_X84uHoD5,5943,whats-new for 0.20.1,2448579,closed,0,,,1,2021-11-04T22:25:49Z,2021-11-05T17:00:24Z,2021-11-05T17:00:23Z,MEMBER,,0,pydata/xarray/pulls/5943,,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/5943/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 970815025,MDExOlB1bGxSZXF1ZXN0NzEyNzA3OTY2,5708,Add .git-blame-ignore-revs,2448579,closed,0,,,1,2021-08-14T04:04:10Z,2021-08-23T16:42:11Z,2021-08-23T16:42:09Z,MEMBER,,0,pydata/xarray/pulls/5708,"I found it useful to ignore big reformatting commits in git blame. See https://www.michaelheap.com/git-ignore-rev/ it's opt-in using a command-line flag or you can set ``` git config --global blame.ignoreRevsFile .git-blame-ignore-revs ``` Thoughts on adding it to the repo? If so, are there more commits we can add? ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/5708/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 959380582,MDExOlB1bGxSZXF1ZXN0NzAyNTAzNTA0,5670,Flexible Indexes: Avoid len(index) in map_blocks,2448579,closed,0,,,1,2021-08-03T18:30:18Z,2021-08-05T13:28:48Z,2021-08-05T08:08:48Z,MEMBER,,0,pydata/xarray/pulls/5670,"xref https://github.com/pydata/xarray/pull/5636/files#r679823542 avoid `len(index)` in two places.","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/5670/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 926421732,MDExOlB1bGxSZXF1ZXN0Njc0NzI4MzAw,5506,Refactor dataset groupby tests,2448579,closed,0,,,1,2021-06-21T17:04:34Z,2021-06-22T16:26:16Z,2021-06-22T16:00:15Z,MEMBER,,0,pydata/xarray/pulls/5506," - xref #5409 Just moves the tests out, in preparation for numpy_groupies work There are a few tests for `.assign` and `.fillna` (for e.g.) still present in `test_dataset` The DataArray tests are not a simple copy and paste :( ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/5506/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 776595030,MDExOlB1bGxSZXF1ZXN0NTQ3MDUzOTM5,4744,Speed up Dataset._construct_dataarray,2448579,closed,0,,,1,2020-12-30T19:03:05Z,2021-01-05T17:32:16Z,2021-01-05T17:32:13Z,MEMBER,,0,pydata/xarray/pulls/4744," - [ ] Tests added - [x] Passes `isort . && black . && mypy . && flake8` - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` Significantly speeds up `_construct_dataarray` by iterating over `._coord_names` instead of `.coords`. This avoids unnecessarily constructing a `DatasetCoordinates` object and massively speeds up repr construction for datasets with large numbers of variables. Construct a 2000 variable dataset ```python import numpy as np import xarray as xr a = np.arange(0, 2000) b = np.core.defchararray.add(""long_variable_name"", a.astype(str)) coords = dict(time=np.array([0, 1])) data_vars = dict() for v in b: data_vars[v] = xr.DataArray( name=v, data=np.array([3, 4]), dims=[""time""], coords=coords ) ds0 = xr.Dataset(data_vars) ``` Before: ``` %timeit ds0['long_variable_name1999'] %timeit ds0.__repr__() 1.33 ms ± 23 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each) 2.66 s ± 52.7 ms per loop (mean ± std. dev. of 7 runs, 1 loop each) ``` After: ``` %timeit ds0['long_variable_name1999'] %timeit ds0.__repr__() 10.5 µs ± 203 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each) 84.2 ms ± 1.28 ms per loop (mean ± std. dev. of 7 runs, 10 loops each) ```","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/4744/reactions"", ""total_count"": 2, ""+1"": 2, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 773121631,MDExOlB1bGxSZXF1ZXN0NTQ0MjYzMjMw,4722,Add Zenodo DOI badge,2448579,closed,0,,,1,2020-12-22T17:31:33Z,2020-12-23T17:07:09Z,2020-12-23T17:06:59Z,MEMBER,,0,pydata/xarray/pulls/4722,,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/4722/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 677231206,MDExOlB1bGxSZXF1ZXN0NDY2MzgxNjY5,4335,Add @mathause to current core developers.,2448579,closed,0,,,1,2020-08-11T22:10:45Z,2020-08-11T22:51:35Z,2020-08-11T22:51:06Z,MEMBER,,0,pydata/xarray/pulls/4335," ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/4335/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 602771945,MDExOlB1bGxSZXF1ZXN0NDA1NzAwOTk4,3983,Better chunking error messages for zarr backend,2448579,closed,0,,,1,2020-04-19T17:19:53Z,2020-04-22T19:28:03Z,2020-04-22T19:27:59Z,MEMBER,,0,pydata/xarray/pulls/3983,Make some zarr error messages more helpful.,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3983/reactions"", ""total_count"": 1, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 1, ""eyes"": 0}",,,13221727,pull 589833027,MDExOlB1bGxSZXF1ZXN0Mzk1MjgxODgw,3913,Use divergent colormap if lowest and highest level span 0,2448579,closed,0,,,1,2020-03-29T16:45:56Z,2020-04-07T15:59:12Z,2020-04-05T13:41:25Z,MEMBER,,0,pydata/xarray/pulls/3913," - [x] Closes #3524 - [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 ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3913/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 573964634,MDExOlB1bGxSZXF1ZXN0MzgyMzc1OTcz,3817,map_blocks: allow user function to add new unindexed dimension.,2448579,closed,0,,,1,2020-03-02T13:12:25Z,2020-03-21T19:51:12Z,2020-03-21T19:51:07Z,MEMBER,,0,pydata/xarray/pulls/3817," - [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 Small change that makes `map_blocks` apply functions that add new unindexed dimensions.","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3817/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 564780280,MDExOlB1bGxSZXF1ZXN0Mzc0OTQ3OTE3,3769,concat now handles non-dim coordinates only present in one dataset,2448579,closed,0,,,1,2020-02-13T15:55:30Z,2020-02-23T20:48:19Z,2020-02-23T19:45:18Z,MEMBER,,0,pydata/xarray/pulls/3769," - [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 ``` da1 = xr.DataArray([1, 2, 3], dims=""x"", coords={""x"": [1, 2, 3], ""y"": 1}) da2 = xr.DataArray([4, 5, 6], dims=""x"", coords={""x"": [4, 5, 6]}) xr.concat([da1, da2], dim=""x"") ``` This use case is quite common since you can get `da1` from something like `bigger_da1.sel(y=1)` On master this raises an uninformative `KeyError` because `'y'` is not present in all datasets. This is because `coords=""different""` by default which means that we are checking for equality. However `coords='different'`(and the equality check) is meaningless when the variable is only present in one of the objects to be concatenated. This PR skips equality checking when a variable is only present in one dataset and raises a nicer error message when it is present in more than one but not all datasets. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3769/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 534450028,MDExOlB1bGxSZXF1ZXN0MzUwMzQ1NDQ0,3605,fix dask master test,2448579,closed,0,,,1,2019-12-07T20:42:35Z,2019-12-09T15:40:38Z,2019-12-09T15:40:34Z,MEMBER,,0,pydata/xarray/pulls/3605," - [x] Closes #3603 ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3605/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 530744399,MDExOlB1bGxSZXF1ZXN0MzQ3MzM3Njg5,3585,Add bottleneck & rasterio git tip to upstream-dev CI,2448579,closed,0,,,1,2019-12-01T14:57:02Z,2019-12-01T18:57:06Z,2019-12-01T18:57:03Z,MEMBER,,0,pydata/xarray/pulls/3585,,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3585/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 526930276,MDExOlB1bGxSZXF1ZXN0MzQ0MzA2NjA0,3559,Reimplement quantile with apply_ufunc,2448579,closed,0,,,1,2019-11-22T01:16:29Z,2019-11-25T15:58:06Z,2019-11-25T15:57:49Z,MEMBER,,0,pydata/xarray/pulls/3559,"Adds support for dask arrays. - [x] Closes #3326 - [x] Tests added - [x] Passes `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/3559/reactions"", ""total_count"": 1, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 1, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 522308594,MDExOlB1bGxSZXF1ZXN0MzQwNTMyNzUx,3519,"propagate indexes in to_dataset, from_dataset",2448579,closed,0,,,1,2019-11-13T15:49:35Z,2019-11-22T15:47:22Z,2019-11-22T15:47:18Z,MEMBER,,0,pydata/xarray/pulls/3519,happy to make changes!,"{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3519/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 507515103,MDExOlB1bGxSZXF1ZXN0MzI4NDkyMjY0,3403,Another groupby.reduce bugfix.,2448579,closed,0,,,1,2019-10-15T22:30:23Z,2019-10-25T21:01:16Z,2019-10-25T21:01:12Z,MEMBER,,0,pydata/xarray/pulls/3403," - [x] Closes #3402 - [x] Tests added - [x] Passes `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/3403/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 500371226,MDExOlB1bGxSZXF1ZXN0MzIyODU3OTYy,3357,Add how do I ... section,2448579,closed,0,,,1,2019-09-30T16:00:34Z,2019-09-30T21:12:28Z,2019-09-30T21:12:23Z,MEMBER,,0,pydata/xarray/pulls/3357," - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API Thoughts on adding something like this? ![image](https://user-images.githubusercontent.com/2448579/65895684-5f4f9d80-e39b-11e9-8758-5d2a51c07208.png) ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3357/reactions"", ""total_count"": 4, ""+1"": 3, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 1, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 494681363,MDExOlB1bGxSZXF1ZXN0MzE4Mzg2NjI2,3314,move auto_combine deprecation to 0.14,2448579,closed,0,,,1,2019-09-17T15:04:38Z,2019-09-17T18:50:09Z,2019-09-17T18:50:06Z,MEMBER,,0,pydata/xarray/pulls/3314,"- [x] Closes #3280 This undoes the `auto_combine` deprecation until we figure out the best way to proceed. (I am not very familiar with `auto_combine` so someone else should look over this. The tests all pass though...)","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3314/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 385452676,MDExOlB1bGxSZXF1ZXN0MjM0NDIwNzYx,2581,fix examples,2448579,closed,0,,,1,2018-11-28T20:54:44Z,2019-08-15T15:33:09Z,2018-11-28T22:30:36Z,MEMBER,,0,pydata/xarray/pulls/2581," - [x] Closes #2580 Use `open_dataset.load()` instead of `load_dataset()`","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2581/reactions"", ""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 328573601,MDExOlB1bGxSZXF1ZXN0MTkyMDc1OTM2,2210,Remove height=12in from facetgrid example plots.,2448579,closed,0,,,1,2018-06-01T15:56:52Z,2019-08-15T15:33:03Z,2018-06-01T16:15:50Z,MEMBER,,0,pydata/xarray/pulls/2210," - [x] Closes #2208 (remove if there is no corresponding issue, which should only be the case for minor changes) This fixes it for me locally. The height was forced to be 12in, while width is 100%. I'm not sure why this was added in the first place.","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2210/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 322365966,MDExOlB1bGxSZXF1ZXN0MTg3NTE3MTUx,2120,Prevent Inf from screwing colorbar scale.,2448579,closed,0,,,1,2018-05-11T16:55:34Z,2019-08-15T15:32:51Z,2018-05-12T06:36:37Z,MEMBER,,0,pydata/xarray/pulls/2120," - [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) The current version uses `pd.isnull` to remove invalid values from input data when making a colorbar. `pd.isnull([np.inf])` is False which means `_determine_cmap_params` returns Inf for colorbar limits which screws everything up. This PR changes `pd.isnull` to `np.isfinite`.","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2120/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 445776616,MDExOlB1bGxSZXF1ZXN0MjgwMTQwODcz,2973,More support for missing_value.,2448579,closed,0,,,1,2019-05-19T03:41:56Z,2019-06-12T15:32:32Z,2019-06-12T15:32:27Z,MEMBER,,0,pydata/xarray/pulls/2973," - [x] Closes #2871 - [x] Tests added - [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/2973/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 331795471,MDExOlB1bGxSZXF1ZXN0MTk0NDM5NDgz,2229,Bugfix for faceting line plots.,2448579,closed,0,,,1,2018-06-13T00:04:43Z,2019-04-12T16:31:18Z,2018-06-20T16:26:37Z,MEMBER,,0,pydata/xarray/pulls/2229,"Closes #2239 Fixes a broken doc image: http://xarray.pydata.org/en/stable/plotting.html#id4 The tests passed previously because there was no metadata associated with the test DataArray. I've assigned some now, that should be good enough.","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2229/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 391295532,MDExOlB1bGxSZXF1ZXN0MjM4ODU1NzM4,2608,.resample now supports loffset.,2448579,closed,0,,,1,2018-12-14T22:07:06Z,2019-04-12T16:29:09Z,2018-12-19T05:12:59Z,MEMBER,,0,pydata/xarray/pulls/2608," - [x] Tests added - [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/2608/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 391440525,MDExOlB1bGxSZXF1ZXN0MjM4OTQ5ODI2,2611,doc fixes.,2448579,closed,0,,,1,2018-12-16T06:47:07Z,2018-12-17T21:57:36Z,2018-12-17T21:57:36Z,MEMBER,,0,pydata/xarray/pulls/2611," - [x] Closes #2610 Quickfixes to make things work locally. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2611/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 374183531,MDExOlB1bGxSZXF1ZXN0MjI1OTQ0MTg4,2513,Make sure datetime object arrays are converted to datetime64,2448579,closed,0,,,1,2018-10-26T00:33:07Z,2018-10-27T16:34:58Z,2018-10-27T16:34:54Z,MEMBER,,0,pydata/xarray/pulls/2513," - [x] Closes #2512 (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) ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2513/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 364419418,MDExOlB1bGxSZXF1ZXN0MjE4NjA5NTgz,2444,facetgrid: properly support cbar_kwargs.,2448579,closed,0,,,1,2018-09-27T10:59:44Z,2018-10-25T16:06:57Z,2018-10-25T16:06:54Z,MEMBER,,0,pydata/xarray/pulls/2444," - [x] Closes #1504, closes #1717, closes #1735 - [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) #1735 is stalled, so I jumped in. I've added an error if `cbar_ax` is provided as an option for `FacetGrid`. Don't think it's really needed. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2444/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 356381494,MDExOlB1bGxSZXF1ZXN0MjEyNjU3NTU1,2395,Properly support user-provided norm.,2448579,closed,0,,,1,2018-09-03T07:04:45Z,2018-09-05T06:53:35Z,2018-09-05T06:53:30Z,MEMBER,,0,pydata/xarray/pulls/2395," - [x] Closes #2381 (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) ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2395/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 282344188,MDExOlB1bGxSZXF1ZXN0MTU4NTQwODI1,1786,_plot2d: Rotate x-axis ticks if datetime subtype,2448579,closed,0,,,1,2017-12-15T07:43:19Z,2018-05-10T05:12:19Z,2018-01-03T16:37:56Z,MEMBER,,0,pydata/xarray/pulls/1786,"Rotate x-axis dateticks by default, just as for plot.line() - [x] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [x] Passes ``git diff upstream/master **/*py | flake8 --diff`` (remove if you did not edit any Python files) - [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) ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/1786/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 308107438,MDExOlB1bGxSZXF1ZXN0MTc3MTI5MTA1,2012,Add weighted mean docs.,2448579,closed,0,,,1,2018-03-23T16:57:29Z,2018-03-23T22:55:32Z,2018-03-23T22:51:57Z,MEMBER,,0,pydata/xarray/pulls/2012,"I like @fujiisoup's weighted mean demo in this stack overflow example: https://stackoverflow.com/questions/48510784/xarray-rolling-mean-with-weights I thought it'd be a useful addition to the docs on rolling. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2012/reactions"", ""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull