home / github

Menu
  • Search all tables
  • GraphQL API

pull_requests

Table actions
  • GraphQL API for pull_requests

176 rows where user = 14371165

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: state, draft, created_at (date), updated_at (date), closed_at (date), merged_at (date)

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
509426702 MDExOlB1bGxSZXF1ZXN0NTA5NDI2NzAy 4532 closed 0 Improve Dataset and DataArray docstrings Illviljan 14371165 Improve docstrings of Dataset and DataArray by * moving the init docs to the class doc * adding examples on how to initialize the classes with a small calculation example. - [x] Closes #4345 2020-10-24T12:46:47Z 2020-10-27T19:48:50Z 2020-10-27T19:47:51Z 2020-10-27T19:47:51Z 1808be42754fb9123922e1b9d2da21e7115ea1b3     0 749ff6f6ca3413beb3ec5f415e32d7842371c69d adc55ac4d2883e0c6647f3983c3322ca2c690514 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/4532  
547799096 MDExOlB1bGxSZXF1ZXN0NTQ3Nzk5MDk2 4750 closed 0 Limit number of data rows shown in repr Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #4736 - [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` Test example: ```python a = np.arange(0, 2000) b = np.core.defchararray.add("long_variable_name", a.astype(str)) c = np.arange(0, 30) d = np.core.defchararray.add("attr_", c.astype(str)) e = {k: 2 for k in d} coords = dict(time=da.array([0, 1])) data_vars = dict() for v in b: data_vars[v] = xr.DataArray( name=v, data=da.array([3, 4]), dims=["time"], coords=coords, ) ds0 = xr.Dataset(data_vars) ds0.attrs = e ``` Looks like this with 24 max rows of interesting data: ```python print(ds0) Out[15]: <xarray.Dataset> Dimensions: (time: 2) Coordinates: * time (time) int32 0 1 Data variables: long_variable_name0 (time) int32 dask.array<chunksize=(2,), meta=np.ndarray> long_variable_name1 (time) int32 dask.array<chunksize=(2,), meta=np.ndarray> long_variable_name2 (time) int32 dask.array<chunksize=(2,), meta=np.ndarray> long_variable_name3 (time) int32 dask.array<chunksize=(2,), meta=np.ndarray> long_variable_name4 (time) int32 dask.array<chunksize=(2,), meta=np.ndarray> long_variable_name5 (time) int32 dask.array<chunksize=(2,), meta=np.ndarray> long_variable_name6 (time) int32 dask.array<chunksize=(2,), meta=np.ndarray> long_variable_name7 (time) int32 dask.array<chunksize=(2,), meta=np.ndarray> long_variable_name8 (time) int32 dask.array<chunksize=(2,), meta=np.ndarray> long_variable_name9 (time) int32 dask.array<chunksize=(2,), meta=np.ndarray> long_variable_name10 (time) int32 dask.array<chunksize=(2,), meta=np.ndarray> long_variable_name11 (time) int32 dask.array<chunksize=(2,), meta=np.n… 2021-01-02T21:14:50Z 2021-01-04T02:13:52Z 2021-01-04T02:13:52Z 2021-01-04T02:13:51Z a6dbb11071edf423fe5250b4eca427f4302fd5f5     0 adf455f78de4c6290263e8bec61d3932330f26e7 0f1eb96c924bad60ea87edd9139325adabfefa33 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/4750  
548268889 MDExOlB1bGxSZXF1ZXN0NTQ4MjY4ODg5 4762 closed 0 Print number of variables in repr Illviljan 14371165 Show the printed and total number of variables in the repr. - [x] Passes `isort . && black . && mypy . && flake8` ```python import numpy as np import xarray as xr a = np.arange(0, 15) b = np.core.defchararray.add("long_variable_name", a.astype(str)) c = np.arange(0, 25) d = np.core.defchararray.add("attr_", c.astype(str)) e = {k: 2 for k in d} coords = dict(time=da.array([0, 1])) data_vars = dict() for v in b: data_vars[v] = xr.DataArray( name=v, data=np.array([0, 1]).astype(bool), dims=["time"], coords=coords, ) ds1 = xr.Dataset(data_vars) ds1.attrs = e # The repr now shows how many attributes in total there are: print(ds1) Out[10]: <xarray.Dataset> Dimensions: (time: 2) Coordinates: * time (time) int32 0 1 Data variables: (12/15) long_variable_name0 (time) bool False True long_variable_name1 (time) bool False True long_variable_name2 (time) bool False True long_variable_name3 (time) bool False True long_variable_name4 (time) bool False True long_variable_name5 (time) bool False True ... long_variable_name9 (time) bool False True long_variable_name10 (time) bool False True long_variable_name11 (time) bool False True long_variable_name12 (time) bool False True long_variable_name13 (time) bool False True long_variable_name14 (time) bool False True Attributes: (12/25) attr_0: 2 attr_1: 2 attr_2: 2 attr_3: 2 attr_4: 2 attr_5: 2 ... attr_19: 2 attr_20: 2 attr_21: 2 attr_22: 2 attr_23: 2 attr_24: 2 ``` 2021-01-04T14:13:17Z 2021-05-18T18:17:50Z 2021-01-12T00:21:19Z 2021-01-12T00:21:19Z 81ed5075fa02ac484f7448f15e0d7e621ab8b187     0 a05b8ef7f12f0b9f3a898c47d65023601a6b2d0f 65beab891bdc947a4369d067096161c4a5494146 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/4762  
550321955 MDExOlB1bGxSZXF1ZXN0NTUwMzIxOTU1 4771 closed 0 Always force dask arrays to float in missing.interp_func Illviljan 14371165 `scipy.interpolate.interp1d` always forces float so make sure that `da.blockwise` understands that as well. - [x] Workaround for #4770 - [x] Tests added - [x] Passes `isort . && black . && mypy . && flake8` 2021-01-06T10:18:55Z 2021-05-18T18:17:30Z 2021-01-12T10:15:28Z 2021-01-12T10:15:28Z 9bb0302b8dc46687a4118bab10285aa831d967c4     0 51e0d2f20176a4ff1fad3d4d3def6c4ea8a9dbcb 31d540f9d668fc5f8c1c92165f950c568778db01 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/4771  
550938402 MDExOlB1bGxSZXF1ZXN0NTUwOTM4NDAy 4776 closed 0 Speed up missing._get_interpolator Illviljan 14371165 Importing scipy.interpolate is slow and should only be done when necessary. Test case from 200ms to 6ms. <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Related to #4739 - [x] Passes `isort . && black . && mypy . && flake8` <sub>By default, the upstream dev CI is disabled on pull request and push events. You can override this behavior per commit by adding a `[test-upstream]` tag to the first line of the commit message.</sub> 2021-01-07T09:32:40Z 2021-05-18T18:17:06Z 2021-01-08T15:55:39Z 2021-01-08T15:55:39Z 8ff8113cb164e9f7eef648e05358d371c7d69f75     0 75ec5733ee55fc53778a702defacc0204902dcc8 bc49e277a45212f7ef33165d7fa1247c219ce276 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/4776  
556366571 MDExOlB1bGxSZXF1ZXN0NTU2MzY2NTcx 4820 open 0 Add dataset line plot Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #4235 - [x] Tests added - [x] 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` TODO: * markersize/linewidth should work, easy if linewidth is only defined. But the hue/linewidth combo is trickier. * Possible, see post further down for details. Should be done in dataarray version in a future PR. * hue only works with coordinates. Should it work with variables? How to do that? groupby? * Leave it for coordinates only for now. * Should lines always be sorted to avoid weird lines? * Handled in dataarray version * linewidth not shown anywhere * line plots doesn't have the nice `legend_elements` function that scatter has which makes it a little bit more tricky. It can still be shown in the legend though. Adds `ds.plot.line`. The function wraps `ax.plot` which should feel pretty homely for most matplotlib users. It was a mess getting the colorbar to work because scatter returns a mappable that colorbar can handle but plot returns a list of line2ds that it can't handle. You also can't add cmaps directly to ax.plot, so to avoid for loops I changed the default color settings instead. Feel free to break it. Example: ![bild](https://user-images.githubusercontent.com/14371165/104847719-244fe100-58e2-11eb-815c-46940b7fc40e.png) 2021-01-17T15:40:39Z 2022-06-09T14:50:17Z     cbb6eab4de6060bbc31aab7a50fc7246bdb376e3     1 1dfad9fae173def3fd85c2ce1e8b3c1739fbb42f d1e4164f3961d7bbb3eb79037e96cae14f7182f8 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/4820  
564448387 MDExOlB1bGxSZXF1ZXN0NTY0NDQ4Mzg3 4850 closed 0 Allow "unit" in label_from_attrs Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> It is also popular to call units `unit`. Allow both keys to be appended to labels in plots. 2021-01-30T16:02:34Z 2021-05-18T18:16:58Z 2021-01-30T16:26:04Z 2021-01-30T16:26:04Z 5735e163bea43ec9bc3c2e640fbf25a1d4a9d0c0     0 aade3b23a2c4a8101cf905ab93db9afe34c38d89 39048f95c5048b95505abc3afaec3bf386cbdf10 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/4850  
573075390 MDExOlB1bGxSZXF1ZXN0NTczMDc1Mzkw 4909 closed 0 Add dataarray scatter with 3d support Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #xxxx - [x] Tests added - [x] 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` Add scatter plots for dataarrays. Then later remove the dataset version and replace it with a thin wrapper in a similar fashion to #4820. New stuff: - [x] Legend now displays colors and sizes in a similar fashion to Seaborn. - [x] New parameter `z` which allows 3d scatter plots. Example: Using `ds = xr.tutorial.scatter_example_dataset()`: ![image](https://user-images.githubusercontent.com/14371165/107875697-b2a78a80-6ec1-11eb-9275-ee4ca60bb903.png) 2021-02-14T11:15:50Z 2024-03-13T21:43:14Z 2021-07-17T21:07:31Z 2021-07-17T21:07:31Z 4cde7732595a5dacfc3866ff4357c4ad61a0bf5a     0 85e4ecdb5fcb282b72853174152d8ae457516250 c5ae48848b1fcf778e7a143b98ec30cf7a5a6ca8 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/4909  
586280610 MDExOlB1bGxSZXF1ZXN0NTg2MjgwNjEw 5008 closed 0 Allow dataset interpolation with different datatypes Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> Allow different datatypes (in particular booleans) to be interpolated instead of dropping them. - [x] Requires #4740. - [x] Closes #4761 - [x] Tests added - [x] Passes `pre-commit run --all-files` 2021-03-07T16:21:37Z 2021-05-25T12:57:30Z 2021-05-13T15:28:16Z 2021-05-13T15:28:15Z 1fa7b9ba8b695820474b0d045059995a34a1c684     0 d3f50414fb53ab7404a4c999a0aa84ce4f2a05db 6e14df62f0b01d8ca5b04bd0ed2b5ee45444265d MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5008  
592376396 MDExOlB1bGxSZXF1ZXN0NTkyMzc2Mzk2 5031 closed 0 Keep coord attrs when interpolating Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #4239 - [x] Closes #4839 - [x] Tests added - [x] Passes `pre-commit run --all-files` 2021-03-13T15:05:39Z 2021-05-18T18:16:10Z 2021-04-27T07:00:08Z 2021-04-27T07:00:07Z 0021cdab91f7466f4be0fb32dae92bf3f8290e19     0 25f161e63b7ef6975abc9d3dd7d064a09772dc0a 77b494b7b34f41d5ed60c5a8bba63ba799c7b18f MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5031  
592434012 MDExOlB1bGxSZXF1ZXN0NTkyNDM0MDEy 5033 closed 0 Allow using a custom engine class directly in xr.open_dataset Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #4838 - [x] Tests added - [x] Passes `pre-commit run --all-files` 2021-03-13T22:12:39Z 2021-05-18T18:16:28Z 2021-04-15T02:02:04Z 2021-04-15T02:02:03Z a3ad87225d6d30e902d0b954126ebabc3c3cf1a3     0 43f762c5f9e692a086c20f2c5e70f7cc1025c2ec f94de6b4504482ab206f93ec800608f2e1f47b19 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5033  
644076487 MDExOlB1bGxSZXF1ZXN0NjQ0MDc2NDg3 5297 closed 0 Add whats new for dataset interpolation with non-numerics Illviljan 14371165 Follow up for #5008 2021-05-13T16:00:51Z 2021-05-18T18:15:35Z 2021-05-13T16:30:21Z 2021-05-13T16:30:21Z 504caeafc5830937c5c315e552bd0486522c848c     0 8d32525c8bc63f0d3d7b1eb214880e4919deaf43 1fa7b9ba8b695820474b0d045059995a34a1c684 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5297  
644773858 MDExOlB1bGxSZXF1ZXN0NjQ0NzczODU4 5311 closed 0 Remove version checks for older versions than the min deps Illviljan 14371165 Found some checks that should always be true nowadays. 2021-05-14T15:01:17Z 2021-05-18T18:12:50Z 2021-05-15T04:36:15Z 2021-05-15T04:36:15Z 08955e20c0bef46d42ae97d7922a913f787223b2     0 295ad56fae9ea89b71167c65a07852b217fd7b07 9e84d093102c9d7b98fd03d25db0636ff4aaf073 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5311  
645121344 MDExOlB1bGxSZXF1ZXN0NjQ1MTIxMzQ0 5314 closed 0 Add version variable for optional imports in pycompat Illviljan 14371165 It was difficult to do version checks with optional imports so I added variables in pycompat and removed some of the imports I found. 2021-05-15T10:43:35Z 2021-05-18T18:13:32Z 2021-05-16T23:50:31Z 2021-05-16T23:50:31Z 601219b1bb32e66701493a0fcf3f886082e1661e     0 b41c11322fd9dd89beb57024c703c4724e32bc8c 08955e20c0bef46d42ae97d7922a913f787223b2 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5314  
645128648 MDExOlB1bGxSZXF1ZXN0NjQ1MTI4NjQ4 5315 closed 0 Use _unstack_once for valid dask and sparse versions Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Requires #5314 - [x] Passes `pre-commit run --all-files` 2021-05-15T11:42:57Z 2021-05-18T18:13:50Z 2021-05-17T22:49:18Z 2021-05-17T22:49:18Z 9165c266f52830384c399f0607a4123e65bb7803     0 7ee325d928d173a70ea55dda60bd7cef965b4073 2bb5d20fb2b4158390ab05aa6bf598b78f2caa9d MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5315  
645372217 MDExOlB1bGxSZXF1ZXN0NjQ1MzcyMjE3 5319 closed 0 Convert new_shape from list to tuple in _unstack_once Illviljan 14371165 Having `new_shape` as a `list` broke some checks in sparse. `.shape` is usually a tuple so I changed `new_shape` to be a tuple as well. sparse arrays errors one step further down now instead, at the item assignment... - Related to #5315 - [x] Passes `pre-commit run --all-files` 2021-05-16T20:04:05Z 2021-05-18T18:14:00Z 2021-05-16T23:50:10Z 2021-05-16T23:50:10Z cef9356339760204d31a47a8228eaafdc0aa3d65     0 5d87b4c9be44b8d2acf62393119d059a17728432 1843d8c9acaece9cc2df8b24d67460529603145e MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5319  
647900312 MDExOlB1bGxSZXF1ZXN0NjQ3OTAwMzEy 5345 closed 0 Remove npcompat.moveaxis Illviljan 14371165 Remove some compatibility code that doesn't seem necessary anymore. <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Passes `pre-commit run --all-files` 2021-05-19T17:41:31Z 2021-07-02T16:08:17Z 2021-06-17T17:18:28Z 2021-06-17T17:18:28Z 450958fb95b3f378e0b8ff8db5266ce38d973b33     0 c9b84148d9d0252a182c35686a4ec8cf6d7eb630 6d2a73018f3852e359f796b329731d8210e74f8a MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5345  
650786045 MDExOlB1bGxSZXF1ZXN0NjUwNzg2MDQ1 5365 closed 0 Add support for cross product Illviljan 14371165 Adds support for the cross product. New tricks possible thanks to xarray: * When coords are defined you can fill with 2 values instead of only 1 like numpy. * When coords are defined you can fill inbetween values as well instead of just appending zeros at the end like numpy. <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #3279 - [x] Tests added - [x] Passes `pre-commit run --all-files` - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` - [x] New functions/methods are listed in `api.rst` 2021-05-23T13:03:42Z 2022-08-12T09:00:21Z 2021-12-29T07:54:37Z 2021-12-29T07:54:37Z 379b5b757e5e84628629091296b099b856da1682     0 e6020e336bbbbaa70ca2e49c9c08e2eb5d56d14d 3960ea3ba08f81d211899827612550f6ac2de804 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5365  
662943315 MDExOlB1bGxSZXF1ZXN0NjYyOTQzMzE1 5443 closed 0 Fix invalid suggestion in error in apply_variable_ufunc Illviljan 14371165 The suggestion appears to be copy/paste-friendly but the format was slightly off. 2021-06-06T12:45:22Z 2021-07-02T16:06:47Z 2021-06-06T17:42:46Z 2021-06-06T17:42:46Z ce01f42134962b63d453657c5cb649ebf152283d     0 3e566cebcbb702228789575a606d99497feb9e26 e96f860d0e1d48e004b34d1dbc817a4a1a21e22f MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5443  
666258854 MDExOlB1bGxSZXF1ZXN0NjY2MjU4ODU0 5456 closed 0 Use checks from .pycompat in more places Illviljan 14371165 Found a few more places where modules are being imported just for version checking. 2021-06-09T19:34:46Z 2021-06-09T20:25:04Z 2021-06-09T20:01:24Z 2021-06-09T20:01:24Z 4434f034a36886609ac0492d3307954163ecbea6     0 d487ee57bbd645c06316df43d308f60282047505 ff1fbf5fc5ccef03fe724a743e8b4e30cb1ae5d4 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5456  
668897974 MDExOlB1bGxSZXF1ZXN0NjY4ODk3OTc0 5464 closed 0 Allow plotting categorical data Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #4260 - [x] Tests added - [x] Passes `pre-commit run --all-files` - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` ```python a = xr.DataArray( [0, 1, 2], dims=("dim_1"), coords=dict(dim_1=(["dim_1"], ["u", "v", "w"])), ) a.plot() ``` ![image](https://user-images.githubusercontent.com/14371165/121782053-0a23e180-cba8-11eb-9524-46bfe8c94b35.png) ```python a = xr.DataArray( [[0, 1, 2], [3, 4, 5]], dims=("dim_0", "dim_1"), coords=dict(dim_0=(["dim_0"], [0, 1]), dim_1=(["dim_1"], ["u", "v", "w"])), ) a.plot() ``` ![image](https://user-images.githubusercontent.com/14371165/121781955-89fd7c00-cba7-11eb-8032-9b562f288621.png) 2021-06-12T15:51:34Z 2021-07-18T21:19:21Z 2021-06-21T17:45:39Z 2021-06-21T17:45:39Z b52b29ddebf65316917cca362101751249cc2b08     0 43d669638d19f66703cdeda39bc7968cb6b7965e 5a14d7d398be7e0efc6d5c8920dc8886212c3b2a MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5464  
673873609 MDExOlB1bGxSZXF1ZXN0NjczODczNjA5 5494 closed 0 Fix typing in to_stacked_array Illviljan 14371165 Attempt to fix these errors found in #5365. ``` xarray/core/computation.py:1533: error: Argument "variable_dim" to "to_stacked_array" of "Dataset" has incompatible type "Hashable"; expected "str" [arg-type] xarray/core/computation.py:1533: error: Argument "sample_dims" to "to_stacked_array" of "Dataset" has incompatible type "Mapping[Hashable, int]"; expected "Sequence[Hashable]" [arg-type] ``` - [x] Passes `pre-commit run --all-files` 2021-06-19T12:31:26Z 2021-07-02T16:09:07Z 2021-06-24T18:21:03Z 2021-06-24T18:21:03Z 0ba275bad0bb1d80d7b766f049860a78e45858eb     0 6e8adb8b64214131f840ab03a6744a6c142ed5b9 c5ae48848b1fcf778e7a143b98ec30cf7a5a6ca8 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5494  
674085297 MDExOlB1bGxSZXF1ZXN0Njc0MDg1Mjk3 5502 closed 0 Use integer type hints in chunk functions Illviljan 14371165 Attempt to fix errors found in #5365. I've changed it to integers because when does it ever make sense to input 1.5 or a complex number? It will always be forced to integers anyway: https://github.com/dask/dask/blob/8aea537d925b794a94f828d35211a5da05ad9dce/dask/array/core.py#L2815 Integers don't work with Numbers: ``` xarray/core/computation.py:1576: error: Dict entry 0 has incompatible type "Hashable": "int"; expected "Hashable": "Union[None, Number, str, Tuple[Number, ...]]" [dict-item] xarray/core/computation.py:1576: error: Dict entry 0 has incompatible type "Hashable": "int"; expected "Hashable": "Union[None, Number, Tuple[Number, ...]]" [dict-item] xarray/core/computation.py:1536: error: Dict entry 0 has incompatible type "Hashable": "int"; expected "Hashable": "Union[None, Number, str, Tuple[Number, ...]]" [dict-item] ``` Floats don't work with Numbers: ``` xarray/core/computation.py:1536: error: Dict entry 0 has incompatible type "Hashable": "int"; expected "Hashable": "Union[None, Number, str, Tuple[Number, ...]]" [dict-item] xarray/core/computation.py:1578: error: Dict entry 0 has incompatible type "Hashable": "float"; expected "Hashable": "Union[None, Number, str, Tuple[Number, ...]]" [dict-item] xarray/core/computation.py:1578: error: Dict entry 0 has incompatible type "Hashable": "float"; expected "Hashable": "Union[None, Number, Tuple[Number, ...]]" [dict-item] ``` This workaround seems related to: https://github.com/python/mypy/issues/3186 - [ ] Closes #xxxx - [ ] 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` 2021-06-20T19:18:58Z 2021-07-02T16:07:43Z 2021-06-21T07:10:32Z 2021-06-21T07:10:31Z a73628317acd73cb55f03ad036708d493f4a8b54     0 5ece8639065d76513be1c56b68b909a61e9c1245 28d3349bbe8c9881448bba45785c1013b006d6f9 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5502  
677702179 MDExOlB1bGxSZXF1ZXN0Njc3NzAyMTc5 5532 closed 0 Remove self from classes in How to add new backends docs Illviljan 14371165 Copy pasting the examples in http://xarray.pydata.org/en/stable/internals/how-to-add-new-backend.html resulted in crashes. Make the docs copy/paste friendly by removing the self arguments. Example: ```python expected = xr.Dataset( dict(a=2 * np.arange(5)), coords=dict(x=("x", np.arange(5), dict(units="s"))) ) class CustomBackend(xr.backends.BackendEntrypoint): def open_dataset( self, filename_or_obj, drop_variables=None, **kwargs, ): return expected.copy(deep=True) xr.open_dataset("fake_filename", engine=CustomBackend) TypeError: open_dataset() missing 1 required positional argument: 'filename_or_obj' ``` This works if self is removed: ```python expected = xr.Dataset( dict(a=2 * np.arange(5)), coords=dict(x=("x", np.arange(5), dict(units="s"))) ) class CustomBackend(xr.backends.BackendEntrypoint): def open_dataset( filename_or_obj, drop_variables=None, **kwargs, ): return expected.copy(deep=True) xr.open_dataset("fake_filename", engine=CustomBackend) <xarray.Dataset> Dimensions: (a: 5, x: 5) Coordinates: * a (a) int32 0 2 4 6 8 * x (x) int32 0 1 2 3 4 Data variables: *empty* ``` <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Passes `pre-commit run --all-files` 2021-06-25T07:48:32Z 2021-07-02T16:07:16Z 2021-06-25T08:12:59Z 2021-06-25T08:12:59Z 697e9a9cdc2678cd867f774cb81a2032211ba942     0 f39e73c1751fc88154db44af83cc8dadbe91456d 0ba275bad0bb1d80d7b766f049860a78e45858eb MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5532  
678507430 MDExOlB1bGxSZXF1ZXN0Njc4NTA3NDMw 5540 open 0 Cache some properties Illviljan 14371165 Cache some small properties that are rather slow to calculate but doesn't change that often. Questions that needs to be resolved: - [ ] Can these properties change during the lifetime of the class? If so the cache needs to be reset when that happens. <!-- Feel free to remove check-list items aren't relevant to your change --> - [ ] Related to #3514 - [ ] 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` Notes * Mixin classes makes it difficult to cache properties. For example `ndim` in `NdimSizeLenMixin` cannot be easily be replaced with `cache_readonly`. 2021-06-27T12:22:16Z 2022-07-10T14:34:34Z     dff867e6da2d735107ea30b2efc90dd6bfbc1c98     1 3d117c320a143fd3d70b67ed2c707e1f9174cb6b ae2c3a74f1c2ca7dc41bbf34862b239b7e3c5651 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5540  
678512559 MDExOlB1bGxSZXF1ZXN0Njc4NTEyNTU5 5541 closed 0 Faster transpose Illviljan 14371165 Make the transpose faster. * `get_axis_num` seems slow, avoid triggering it unnecessarily for example when using 1d arrays. * .copy(deep=False) is the bottleneck for 1d arrays. Not sure if it can be dealt with though. <!-- Feel free to remove check-list items aren't relevant to your change --> - [ ] Closes #xxxx - [ ] 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` 2021-06-27T13:00:21Z 2021-06-27T19:58:14Z 2021-06-27T19:29:58Z 2021-06-27T19:29:58Z 1a0ac9993ef9eaa273d625d3ccef56b556abe53a     0 4e79b2b6610479ac39ef0f3a1f3ed0f99b583b9d 4fb34944ce853bca462b0d1c84787637f2d9e137 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5541  
678579221 MDExOlB1bGxSZXF1ZXN0Njc4NTc5MjIx 5542 open 0 Do not transpose 1d arrays during interpolation Illviljan 14371165 Seems a waste of time to transpose 1d arrays. <!-- Feel free to remove check-list items aren't relevant to your change --> - [ ] Closes #xxxx - [ ] 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` 2021-06-27T20:56:13Z 2022-10-12T20:12:11Z     a10a4e9bd17a6d255c663282261931b2bb398718     0 131ee1a706968185bdcfd0f8940cba526752af22 d1e4164f3961d7bbb3eb79037e96cae14f7182f8 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5542  
680968927 MDExOlB1bGxSZXF1ZXN0NjgwOTY4OTI3 5555 closed 0 Faster interpolation using meta Illviljan 14371165 Removing a commented improvement that required that the minimum version requirement for dask to be increased. - [x] Requires #5556 - [x] Passes `pre-commit run --all-files` 2021-06-30T15:13:44Z 2021-07-02T16:05:41Z 2021-07-02T12:49:50Z 2021-07-02T12:49:49Z 2f8623d4d9929b61ff4ebfd5232c12474420dfae     0 47b450ba1bf04c88def75ec80114da750bc46253 0e7c92c701bc7a426404fcf5559397f9781f9e80 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5555  
681113128 MDExOlB1bGxSZXF1ZXN0NjgxMTEzMTI4 5556 closed 0 Test test_missing.py without cftime installed Illviljan 14371165 The checks that didn't install cftime skipped the entire test_missing.py. Because cftime is also imported when importing the list of calenders `_CFTIME_CALENDERS`. Added also skips for the cases that assumed cftime was installed so they are correctly skipped. <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Passes `pre-commit run --all-files` 2021-06-30T18:31:08Z 2021-07-02T16:05:53Z 2021-07-01T04:47:12Z 2021-07-01T04:47:12Z 0e7c92c701bc7a426404fcf5559397f9781f9e80     0 a77360530d5e1f6ae3d0f66084fec7966e754c1b c5dbe98ce8957b6af5efa1308756296f7fa310c1 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5556  
692943162 MDExOlB1bGxSZXF1ZXN0NjkyOTQzMTYy 5622 open 0 Replace dataset scatter with the dataarray version Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [ ] Requires #4820 - [ ] 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` 2021-07-19T21:39:23Z 2022-10-15T20:11:34Z     71bd3a46e00a0d526fcf67dfcc24a9ccc4f503b2     1 5e8ce16d3150bf5f6454bdb25572ac53080554ea 8f6873026587f30f0ac10af740ebe947797208a1 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5622  
700860368 MDExOlB1bGxSZXF1ZXN0NzAwODYwMzY4 5661 closed 0 Speed up _mapping_repr Illviljan 14371165 Creating a ordered list for filtering purposes using `.items()` turns out being rather slow. Use `.keys()` instead as that doesn't trigger a bunch of dataarray initializations. - [x] Passes `pre-commit run --all-files` Test case: ```python import numpy as np import xarray as xr a = np.arange(0, 2000) data_vars = dict() for i in a: data_vars[f"long_variable_name_{i}"] = xr.DataArray( name=f"long_variable_name_{i}", data=np.arange(0, 20), dims=[f"long_coord_name_{i}_x"], coords={f"long_coord_name_{i}_x": np.arange(0, 20) * 2}, ) ds0 = xr.Dataset(data_vars) ds0.attrs = {f"attr_{k}": 2 for k in a} ``` Before: ```python %timeit print(ds0) 14.6 s ± 215 ms per loop (mean ± std. dev. of 7 runs, 1 loop each) ``` After: ```python %timeit print(ds0) 120 ms ± 2.06 ms per loop (mean ± std. dev. of 7 runs, 10 loops each) ``` 2021-08-01T08:44:17Z 2022-08-12T09:07:44Z 2021-08-02T19:45:16Z 2021-08-02T19:45:16Z 8f5b4a185b304ab68723c390b1ad88e57f9a60d6     0 704d14e731d4d8d633aeacb29b27e142766badd1 c44b816bf4a858af1bb621d96e1d3482db3976da MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5661  
700865417 MDExOlB1bGxSZXF1ZXN0NzAwODY1NDE3 5662 closed 0 Limit and format number of displayed dimensions in repr Illviljan 14371165 When there's a lot of dims, create a new line and continue printing. If there's even more dims that even a few rows can't display them all then limit the number of dims displayed in similar fashion to coordinates. Questions: * Where should this be used? Datasets, dataarrays, dimensions without coords? * Should `dim_summary_limited` be a straight replacement for `dim_summary`? I'm not super familiar with all the places it is used so I'm unsure. * Should we print the number of dims shown and the total number of dims? If yes, then we need to rethink how the dimensions are displayed, as it's not possible with the current style. See the example with short names. <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #5546 - [x] Tests added - [x] Passes `pre-commit run --all-files` - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` Test case: ```python import numpy as np import xarray as xr # A few dims with long names: a = np.arange(0, 24) data_vars = dict() for i in a: data_vars[f"long_variable_name_{i}"] = xr.DataArray( name=f"long_variable_name_{i}", data=np.arange(0, 20), dims=[f"long_coord_name_{i}_x"], coords={f"long_coord_name_{i}_x": np.arange(0, 20) * 2}, ) ds0 = xr.Dataset(data_vars) ds0.attrs = {f"attr_{k}": 2 for k in a} print(ds0) <xarray.Dataset> Dimensions: (long_coord_name_0_x: 20, long_coord_name_10_x: 20, long_coord_name_11_x: 20, long_coord_name_12_x: 20, long_coord_name_13_x: 20, long_coord_name_14_x: 20, long_coord_name_15_x: 20, long_coord_name_16_x: 20, long_coord_name_17_x: 20, long_coord_name_18_x: 20, long_coord_name_19_x: 20, long_coord_name_1_x: 20, long_coord_name_20_x: 20, long_coord_name_21_x: 20, long_coord_name… 2021-08-01T09:12:24Z 2022-08-12T09:07:49Z 2022-01-03T17:38:49Z 2022-01-03T17:38:48Z be4b9809b47e1816dbf6a37a263aeb77df95e6b7     0 be49eb7e442c3efbda6a7a47ad7a97130fd82223 2694046c748a51125de6d460073635f1d789958e MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5662  
702080186 MDExOlB1bGxSZXF1ZXN0NzAyMDgwMTg2 5667 open 0 Allow .attrs to support any dict-likes Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #5655 - [ ] 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` 2021-08-03T08:43:19Z 2022-10-12T18:08:25Z     2ff5b8bdd22e47e36d373aec4ccd7bc2d4d4a35b     1 0e6036f383614ba3795a9ad9035349c42d38c2c9 d1e4164f3961d7bbb3eb79037e96cae14f7182f8 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5667  
705406464 MDExOlB1bGxSZXF1ZXN0NzA1NDA2NDY0 5678 closed 0 Add typing to the OPTIONS dict Illviljan 14371165 This adds typing to the dict values. Using variables as keys is apparently not permitted by mypy so that part has been removed. Attempts to fix issues found in #5662. <!-- Feel free to remove check-list items aren't relevant to your change --> 2021-08-06T11:21:02Z 2024-03-13T21:45:54Z 2021-08-19T22:15:23Z 2021-08-19T22:15:23Z b7737f29e58df923b1fc6ba28a961a259fa98950     0 c11aac2f00edf3584d1eec508fc850fb8f17e084 2705c63e0c03a21d2bbce3a337fac60dd6f6da59 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5678  
705956031 MDExOlB1bGxSZXF1ZXN0NzA1OTU2MDMx 5684 closed 0 Initialize custom backends in open_dataset Illviljan 14371165 The backend classes are initialized in the `build_engine` function: https://github.com/pydata/xarray/blob/8b95da8e21a9d31de9f79cb0506720595f49e1dd/xarray/backends/plugins.py#L93 This wasn't the case for custom backends: https://github.com/pydata/xarray/blob/8b95da8e21a9d31de9f79cb0506720595f49e1dd/xarray/backends/plugins.py#L161 This PR initializes the engine, fixes the incorrect signature in the test (#5033) and reverts the doc changes done in #5532. <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Tests added - [x] Passes `pre-commit run --all-files` - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` 2021-08-07T23:07:33Z 2021-10-09T23:49:55Z 2021-10-09T23:49:55Z 2021-10-09T23:49:55Z fd424496f81c8802e5f9447b2e7fb7737ca7fb04     0 a4d12c1901790fdb084378b1142d498650740378 5499949b5937277dcd599a182201d0e2fc5e818e MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5684  
712191811 MDExOlB1bGxSZXF1ZXN0NzEyMTkxODEx 5702 closed 0 Move docstring for xr.set_options to numpy style Illviljan 14371165 While trying to figure out which types are allowed in #5678 I felt that the `set_options` docstring was rather hard to read. Moving it to typical numpy docstring style helped at least for me. 2021-08-13T09:05:56Z 2022-08-12T09:06:23Z 2021-08-19T22:27:39Z 2021-08-19T22:27:39Z e26aec9500e04f3b926b248988b976dbfcb9c632     0 89d02580e6a51a28ebcd7590631cf8d401e0d318 3956b73a7792f41e4410349f2c40b9a9a80decd2 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5702  
712214858 MDExOlB1bGxSZXF1ZXN0NzEyMjE0ODU4 5703 closed 0 Use the same bool validator as other inputs for use_bottleneck in xr.set_options Illviljan 14371165 Minor change to align with other booleans. 2021-08-13T09:36:03Z 2022-08-12T09:07:28Z 2021-08-13T13:41:42Z 2021-08-13T13:41:42Z 2705c63e0c03a21d2bbce3a337fac60dd6f6da59     0 2ddef9bb650091dcf1ea5c8960d24def3a4f5e4c 3956b73a7792f41e4410349f2c40b9a9a80decd2 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5703  
712223776 MDExOlB1bGxSZXF1ZXN0NzEyMjIzNzc2 5704 open 0 Allow in-memory arrays with open_mfdataset Illviljan 14371165 The docstring seems to imply that it's possible to get in-memory arrays: https://github.com/pydata/xarray/blob/4bb9d9c6df77137f05e85c7cc6508fe7a93dc0e4/xarray/backends/api.py#L732 But it doesn't seem possible because of: https://github.com/pydata/xarray/blob/4bb9d9c6df77137f05e85c7cc6508fe7a93dc0e4/xarray/backends/api.py#L899 This PR removes that `or` check, changes the default to `chunk={}`, and fixes the failing tests. <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Noticed in #5689 - [ ] Closes #7792 - [x] Tests added - [x] Passes `pre-commit run --all-files` - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` 2021-08-13T09:50:26Z 2023-04-29T06:58:26Z     2c505d513d75bc6c1c30854a5860343dd5daabe8     0 34442811c68fc38ddcda2370eb7b00bb943af73e d1e4164f3961d7bbb3eb79037e96cae14f7182f8 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5704  
714274870 MDExOlB1bGxSZXF1ZXN0NzE0Mjc0ODcw 5710 closed 0 Fix errors in test_latex_name_isnt_split for min environments Illviljan 14371165 There's some error in the minimum environments (for example `ubuntu-latest py37-bare-minimum`) introduced in #5682 but was hidden in all other errors because of #5654: ``` =========================== short test summary info ============================ ERROR xarray/tests/test_plot.py::test_latex_name_isnt_split - NameError: name... = 7908 passed, 4163 skipped, 202 xfailed, 42 xpassed, 89 warnings, 1 error in 279.31s (0:04:39) = ``` But when looking further in the details it mentions a completely different function crashing because matplotlib isn't installed, which is true but the function doesn't test any mpl-specific things. ``` ==================================== ERRORS ==================================== _______________ ERROR at teardown of test_latex_name_isnt_split ________________ [gw0] linux -- Python 3.7.10 /usr/share/miniconda/envs/xarray-tests/bin/python @pytest.fixture(scope="function", autouse=True) def test_all_figures_closed(): """meta-test to ensure all figures are closed at the end of a test Notes: Scope is kept to module (only invoke this function once per test module) else tests cannot be run in parallel (locally). Disadvantage: only catches one open figure per run. May still give a false positive if tests are run in parallel. """ yield None > open_figs = len(plt.get_fignums()) E NameError: name 'plt' is not defined /home/runner/work/xarray/xarray/xarray/tests/test_plot.py:72: NameError ``` Might be something that pytest runs on every function. Not sure if there's a clean way of turning it off, but requiring matplotlib to be installed works of course. <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Passes `pre-commit run --all-files` 2021-08-17T13:57:44Z 2021-08-18T03:02:25Z 2021-08-18T02:34:05Z 2021-08-18T02:34:05Z de867e613dc14ff80d7b898d85c4171121ad353d     0 f12d9327aa2aa1b5384cf7759658798a72ea4876 41099669c63c7dbb51b112fdec09dfae07379fe7 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5710  
717180890 MDExOlB1bGxSZXF1ZXN0NzE3MTgwODkw 5726 closed 0 Bump minimum version requirements for dask from 2.15 to 2.24 Illviljan 14371165 Dask released 2.24 around august 22 2020: https://github.com/dask/dask/releases/tag/2.24.0 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] May help fixing errors in #5571 - [x] Passes `pre-commit run --all-files` - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` 2021-08-21T17:07:10Z 2021-09-08T17:58:26Z 2021-08-25T21:08:01Z 2021-08-25T21:08:01Z 4fd81b51101aceaad08570f1368ad4b50a946da5     0 7ee9754f3e0e9dab9b2bb7e2ec4f91a10dd89a79 a6b44d72010c5311fad4f60194b527194e26094b MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5726  
728819895 MDExOlB1bGxSZXF1ZXN0NzI4ODE5ODk1 5772 closed 0 Create benchmark for groupby Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Benchmark from #659 - [x] Tests added - [x] Passes `pre-commit run --all-files` 2021-09-07T17:23:50Z 2022-08-12T09:03:28Z 2021-09-20T20:15:30Z 2021-09-20T20:15:30Z 7a65d59637efb0c78d5f657f3178ffb332a54dfb     0 bc933203724b5cdc6253e9c8d4f0e8f6c704e818 f994c4c1de0b5fd9354db5480ce478843778829e MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5772  
733958504 PR_kwDOAMm_X84rv1Fo 5794 closed 0 Single matplotlib import Illviljan 14371165 Reduce number of imports inside functions. I think it helps making the code easier to read as well, as now you know that `plt` is always available. - [x] Tests added - [x] Passes `pre-commit run --all-files` - [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst` Seems to not be a major difference in initial imports from (my small sample of) repeated tests: This branch: ```python %timeit -n1 -r1 import xarray 3.81 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.83 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.87 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.7 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.77 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.91 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.8 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) np.mean([3.81, 3.83, 3.87, 3.7, 3.77, 3.91, 3.8]) Out[3]: 3.812857142857143 ``` Main: ```python %timeit -n1 -r1 import xarray 3.93 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.69 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.64 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.76 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.79 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.81 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) 3.68 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each) np.mean([3.93, 3.69, 3.64, 3.76, 3.79, 3.81, 3.68]) Out[4]: 3.7571428571428567 ``` 2021-09-14T19:15:12Z 2022-08-12T09:06:30Z 2021-10-24T09:54:28Z 2021-10-24T09:54:28Z ea2886136dec7047186d5a73380d50130a7b5241     0 f34595fea42924a7832323d5d047f673cecdcc37 07de257c5884df49335496ee6347fb633a7c302c MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5794  
734066610 PR_kwDOAMm_X84rwPey 5796 closed 0 Add asv benchmark jobs to CI Illviljan 14371165 Workflow based on the version from scikit-image. Modfied to have `asv.conf.json` inside a subdirectory and triggers every push if the PR has the `run-benchmark` label. Notes: * https://github.com/scikit-image/scikit-image doesn't have the same benchmark folder setup, for example config file is in root directory, other folder names. * https://github.com/numpy/numpy has same folder name as sckit-image. config file is in the folder however. References: * https://labs.quansight.org/blog/2021/08/github-actions-benchmarks/ * https://github.com/scikit-image/scikit-image/pull/5424 * https://github.com/jaimergp/scikit-image/pull/1 Tests checked: - [x] interp - [x] pandas - [x] repr - [x] combine - [x] datarray_missing - [x] dataset_io - Skipped too difficult to understand. Some of the tests are possibly broken. - [x] indexing - [x] reindexing - [x] rolling - Some division by 0 prints left. - [x] unstacking TODO: * self.setup_cache <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Related to #4648 - [x] Tests added - [x] Passes `pre-commit run --all-files` - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` 2021-09-14T22:00:49Z 2022-08-12T09:01:15Z 2021-10-24T10:08:02Z 2021-10-24T10:08:02Z 26e2e61e27a04a78f4887ecdc8166715a9b99c1a     0 70cd679eccf7ffc0dad3f8759f3d67e626a4d449 5499949b5937277dcd599a182201d0e2fc5e818e MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5796  
753444152 PR_kwDOAMm_X84s6KU4 5844 closed 0 Add python 3.10 to CI Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> Waiting on * https://github.com/ContinuumIO/anaconda-issues/issues/12669 * https://github.com/conda/conda/pull/10970 * https://github.com/conda-forge/python-feedstock/pull/511 * https://github.com/conda-forge/numba-feedstock/pull/86 * https://github.com/pydap/pydap/pull/210 - [ ] Closes #xxxx - [ ] 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` 2021-10-07T18:49:43Z 2022-08-12T09:05:25Z 2022-01-21T17:06:43Z 2022-01-21T17:06:42Z 10855dc1a82350bfdbff5489f8b9a9764623bb5e     0 a4f32ed728765145eedf727c98a9e7aef26049c0 176c6ebc5366cf5e98657c8f8ada324e96c5db1c MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5844  
754760094 PR_kwDOAMm_X84s_Lme 5849 closed 0 Simplify transpose in xr.dot Illviljan 14371165 Minor change inspired by #5365. <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Passes `pre-commit run --all-files` 2021-10-10T18:45:41Z 2021-10-11T06:16:05Z 2021-10-11T06:16:05Z 2021-10-11T06:16:05Z 07de257c5884df49335496ee6347fb633a7c302c     0 63e1a350431be59a25f1c76073c445ec292176e4 c98579f9a84ecb06266b50b840c7393b38979cb3 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5849  
764806197 PR_kwDOAMm_X84tlgQ1 5892 closed 0 Drop support for python 3.7 Illviljan 14371165 This PR drops support for python 3.7 and removes a bit of compatibility code related to typing. <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #6138 - [x] Requires #5845 - [x] Passes `pre-commit run --all-files` - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` - [x] Can be merged once we plan to make a release after 2021-12-26. https://numpy.org/neps/nep-0029-deprecation_policy.html 2021-10-24T05:32:10Z 2022-08-12T09:05:56Z 2022-01-11T21:22:46Z 2022-01-11T21:22:46Z fbd11bd4f904940181321cbdd4c536d118fd85c3     0 729789a32bee71c8b825adce40d96feab7410d94 51d4d5ff2e490fdab5c2881b31fc395f9b86612b MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5892  
764846626 PR_kwDOAMm_X84tlqIi 5893 closed 0 Only run asv benchmark when labeled Illviljan 14371165 Small fix to #5796. The benchmark was only intended to run when the PR has the label `run-benchmark`. I split the if condition in multiple lines for better readability thinking it didn't change the function but it did. 2021-10-24T10:44:17Z 2022-08-12T09:02:27Z 2021-10-24T11:35:42Z 2021-10-24T11:35:42Z fdabf3bea5c750939a4a2ae60f80ed34a6aebd58     0 3273149ac80ae4249d456caad5480a70b28e8019 26e2e61e27a04a78f4887ecdc8166715a9b99c1a MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5893  
765777711 PR_kwDOAMm_X84tpNcv 5896 closed 0 Use importlib.resources to load files Illviljan 14371165 Following: https://importlib-resources.readthedocs.io/en/latest/migration.html#pkg-resources-resource-string - [ ] Closes #xxxx - [ ] 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` 2021-10-25T19:32:30Z 2022-08-12T09:05:51Z 2021-10-25T21:18:18Z   c41f81da37e5f80d46a01031434f8e5666871ab2     1 98dec8eb822575a0fa14185dc0f45eb30d5b665c fdabf3bea5c750939a4a2ae60f80ed34a6aebd58 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5896  
780048737 PR_kwDOAMm_X84ufplh 5986 closed 0 Use set_options for asv bottleneck tests Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> Inspired by #5734, remove the non-bottleneck build and instead use `xr.set_options` on the relevant tests. This makes the report much more readable and reduces testing time quite a bit since everything isn't accelerated by bottleneck. - [x] Passes `pre-commit run --all-files` 2021-11-14T09:10:38Z 2022-08-12T09:07:55Z 2021-11-15T20:40:38Z 2021-11-15T20:40:38Z 95394d5bcbd7d73bae34c091a080c42bcfc9f07d     0 519469c60435aba589188fc5ec44145f4215f241 5e2f1dcf103da2b2b047b9d136c194a2e9a2e4f3 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5986  
780096252 PR_kwDOAMm_X84uf1L8 5988 closed 0 Check for py version instead of try/except when importing entry_points Illviljan 14371165 This removes the need for the `# type: ignore` to make mypy happy. It is also clearer when this compatibillity code can be removed. 2021-11-14T14:23:18Z 2022-08-12T09:08:25Z 2021-11-14T20:16:57Z 2021-11-14T20:16:57Z a883ed02222384737e52290296ab3367fc760b95     0 1517de642b456497265c73f0935a8ae1c46355c4 5e2f1dcf103da2b2b047b9d136c194a2e9a2e4f3 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/5988  
809993943 PR_kwDOAMm_X84wR4bX 6109 closed 0 Remove registration of pandas datetime converter in plotting Illviljan 14371165 Back in 2017 the `register_pandas_datetime_converter_if_needed` was added to workaround matplotlib crashing when handling datetime objects, (#1669). The example that crashed back then was (#1661): ```python import xarray import numpy da = xarray.DataArray( numpy.arange(3*4).reshape(3,4), dims=("x", "y"), coords={"x": [1,2,3], "y": [numpy.datetime64(f"2000-01-{x:02d}") for x in range(1, 5)]}) da.plot.pcolormesh() ``` This has probably been working by default in matplotlib since 2.2.0, when datetime support was added https://github.com/matplotlib/matplotlib/releases/tag/v2.2.0. (https://github.com/matplotlib/matplotlib/pull/9779) Related issues: https://github.com/mwaskom/seaborn/issues/1325 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #6102 - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` 2021-12-26T10:14:47Z 2022-08-12T09:05:45Z 2022-01-09T20:33:29Z 2022-01-09T20:33:28Z e7285ebc33561360dffe9af4f2db21808529dd17     0 228e0be009ddfb383495b0c9cfa5dcd7ae1b2793 bc8d7f9e708dd510672fb52e402d988e4e6ee6d6 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6109  
818085461 PR_kwDOAMm_X84wwv5V 6150 closed 0 Faster dask unstack Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> ref #5582 - [ ] 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` 2022-01-10T22:10:45Z 2022-08-12T09:07:07Z 2022-08-12T09:07:06Z   9f50e484d1c42f6d2ee1bafe5ef1387b2b66897a     1 c13940909bc3bf55b073c58201a0893b1ceb2578 d1e4164f3961d7bbb3eb79037e96cae14f7182f8 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6150  
819106206 PR_kwDOAMm_X84w0pGe 6159 closed 0 Import Literal from typing instead of typing_extensions Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> Small edit to #6121. 2022-01-11T21:26:59Z 2022-08-12T09:06:58Z 2022-01-11T21:59:16Z 2022-01-11T21:59:16Z 18703bafe3fa712c537ad18bca904655e58dbe7e     0 299d3767ca7bc676da03968777669914110201b1 fbd11bd4f904940181321cbdd4c536d118fd85c3 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6159  
828836526 PR_kwDOAMm_X84xZwqu 6184 closed 0 Add seed kwarg to the tutorial scatter dataset Illviljan 14371165 Allow controlling the randomness of the dataset. It's difficult to catch issues with the dataset if it always changes each run. 2022-01-21T19:38:53Z 2022-08-12T09:06:13Z 2022-01-26T19:04:02Z 2022-01-26T19:04:02Z 4ef41129a8aeb48942b48be22cd2ecca811e3c3e     0 574f583d754dfa096e449c75daa20d8931f4541d c54123772817875678ec7ad769e6d4d6612aeb92 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6184  
840828191 PR_kwDOAMm_X84yHgUf 6239 closed 0 Type NDArrayMixin Illviljan 14371165 Activate typing on these mixins by removing the Any. - [ ] 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` 2022-02-05T09:15:34Z 2022-08-12T09:08:32Z 2022-08-12T09:08:32Z   15c62b87c74bf6b2dece662649956e6dfa4b1df0     1 0b5be1a057aa5e46b2a6f9cbdb24f13cbef50b73 d1e4164f3961d7bbb3eb79037e96cae14f7182f8 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6239  
840831688 PR_kwDOAMm_X84yHhLI 6240 closed 0 Run pyupgrade on core/utils Illviljan 14371165 Make #6239 cleaner by running pyupgrade separately. pyupgrade fixes typing only if `from __future__ import annotations` has been manually added to the file. Could probably do this in other files as well. xref: #6244 2022-02-05T09:39:48Z 2022-08-12T09:08:36Z 2022-02-05T21:29:37Z 2022-02-05T21:29:37Z 56122ef34b10d1e586e3ed324daf4df38e6dee12     0 2fd532492756b62ff738eb6317821e90e6cf2ac3 33067cd24f66d4855babaa6801b009480c4e2cb2 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6240  
843749004 PR_kwDOAMm_X84ySpaM 6257 closed 0 Run pyupgrade on core/weighted Illviljan 14371165 Clean up a little in preparation for #6059. <!-- Feel free to remove check-list items aren't relevant to your change --> - [ ] 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` xref: #6244 2022-02-09T10:38:06Z 2022-08-12T09:08:47Z 2022-02-09T12:52:39Z 2022-02-09T12:52:39Z 39860f9bd3ed4e84a5d694adda10c82513ed519f     0 82d02224e8774cd92c464db85be8b483796050c1 48290fa14accd3ac87768d3f73d69493b82b0be6 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6257  
848804170 PR_kwDOAMm_X84yl7lK 6270 closed 0 Update pyupgrade to py38-plus Illviljan 14371165 xref: #6244 2022-02-12T10:58:00Z 2022-08-12T09:05:31Z 2022-02-12T13:50:31Z 2022-02-12T13:50:31Z 472a16e5bcf5bcf375f23e215653631bd326b673     0 13abe722b69d8a5c4274a3659245403c9f23c300 d994273b5d61bbdc2fde5050af5922deb66db274 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6270  
878249397 PR_kwDOAMm_X840WQW1 6351 closed 0 Run pyupgrade on core/groupby Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> Minor touch up looking through #5950. - [x] xref #6244 2022-03-12T20:46:15Z 2022-08-12T09:05:37Z 2022-03-13T04:21:54Z 2022-03-13T04:21:54Z d535a3bf46ec26e3857bd0a350120107bb9a2199     0 a7afddce2a4ddea27beeb9ec785ff21ec5e7db2c 229dad93e2c964c363afa4ab1673bb5b37151f7b MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6351  
881692842 PR_kwDOAMm_X840jZCq 6371 closed 0 Remove test_rasterio_vrt_network Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> This test has been failing with a 404 error for a while. Remove the test because a lot of the functionality is implemented in rioxarray. - [x] Closes #6363 2022-03-16T18:49:29Z 2022-08-12T09:06:02Z 2022-03-17T06:25:22Z 2022-03-17T06:25:22Z 99229efa6030bf872444234723f2d3199c3ef1e3     0 ae116a6100631a126a08e2865cfc400d77cde78d 95bb9ae4233c16639682a532c14b26a3ea2728f3 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6371  
936617493 PR_kwDOAMm_X84306YV 6609 closed 0 Add setuptools as dependency in ASV benchmark CI Illviljan 14371165 Adding `setuptools_scm[toml]` and `setuptools_scm_git_archive` appears to fix the issue. Not sure why this is needed though. - [x] Closes #6606 2022-05-14T20:33:09Z 2022-05-15T17:14:24Z 2022-05-14T23:06:44Z 2022-05-14T23:06:44Z 9a62c2a8ebf934646b898a137fe0409fe8781350     0 4445e445cb51491f6c1897f2b451610e8d62b8d0 c34ef8a60227720724e90aa11a6266c0026a812a MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6609  
949476560 PR_kwDOAMm_X844l9zQ 6647 closed 0 Allow all interp methods in typing Illviljan 14371165 Follow up from #6637. 2022-05-27T16:30:54Z 2022-05-29T11:33:43Z 2022-05-29T01:12:08Z 2022-05-29T01:12:08Z 3e099e49cc571f26e8caa44e69d6473475887879     0 142ab267e144edb782efedd38e6a0c0ab8411e72 3f587b43660ab52a1ef4cd5828e57478ceb9f34a MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6647  
991891799 PR_kwDOAMm_X847HxFX 6764 closed 0 Remove generic utils import Illviljan 14371165 Some minor import oddities I noticed while reading the code. 2022-07-08T17:22:26Z 2022-08-12T09:07:23Z 2022-07-08T17:52:50Z 2022-07-08T17:52:50Z 4c8dd107a12882c546b9efd1fd0f342c7c958cb2     0 c1aed5186bd64fb9e6697c894fad7f00a5db3631 ce40b9391a996b8218e1c7b1e83905b8dd4bc1fd MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6764  
991918844 PR_kwDOAMm_X847H3r8 6765 closed 0 Use `math` instead of `numpy` in some places Illviljan 14371165 Use `math` instead of `numpy` where possible, looks better and seems faster as well. Idea from https://github.com/pydata/xarray/pull/6702#discussion_r903986442, https://github.com/dask/dask/pull/9232 Example: ```python %timeit math.prod((1, 2, 3)) 161 ns ± 10.5 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each) %timeit int(np.prod((1, 2, 3))) 11.9 µs ± 248 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each) ``` 2022-07-08T18:02:33Z 2022-08-12T09:07:12Z 2022-07-09T07:51:15Z 2022-07-09T07:51:15Z 2736b285607d915077d8a1269d0dccf96ebd63b6     0 dae34c7dd1201711f9177ca0896058c15d1b692e 4c8dd107a12882c546b9efd1fd0f342c7c958cb2 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6765  
992015451 PR_kwDOAMm_X847IPRb 6767 closed 0 Type `shape` methods Illviljan 14371165 The shape methods can have multiple integers inside the tuple, this fixes that and adds to typing to all shape methods I found. 2022-07-08T20:23:59Z 2022-08-12T09:06:53Z 2022-07-09T07:51:28Z 2022-07-09T07:51:28Z ae2c3a74f1c2ca7dc41bbf34862b239b7e3c5651     0 5d371e77c4b58d0592803754358eb656b4c7c30f 4c8dd107a12882c546b9efd1fd0f342c7c958cb2 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6767  
994666585 PR_kwDOAMm_X847SWhZ 6778 closed 0 Add dataarray scatter Illviljan 14371165 Splitting up #5622 as the scope of it has grown too large now. * Adds support for dataarray scatter plots and replaces the dataset version. * Scatter now has 3d support with the z argument. * Scatter now always returns a single pathcollection, earlier it could return a list of pathcollection when using categoricals * Better legend, handles now categoricals. Making continous/discrete options slightly redundant, still there though. * Facetgrid generalized slightly to handle 3d plots. TODO: * sharex sharey test https://github.com/pydata/xarray/pull/7047: len(list(ax.get_shared_x_axes())) != 0 - [x] Tests added - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` - [ ] New functions/methods are listed in `api.rst` 2022-07-12T18:44:29Z 2022-10-07T19:37:18Z 2022-10-07T15:43:29Z 2022-10-07T15:43:29Z 8dac64b40bd05b72b2dad5d62074f1e288200dba     0 f676f8914ad9d241610df150dcc96197292ab625 b290f5fb056a1a6a26cfeac6cfe814adceadc810 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6778  
994735898 PR_kwDOAMm_X847Snca 6779 closed 0 Move _infer_meta_data and _parse_size to utils Illviljan 14371165 Reduce diffs in #6778. 2022-07-12T20:01:59Z 2022-08-12T09:03:53Z 2022-07-12T20:45:02Z 2022-07-12T20:45:02Z 0efb2df867d46ecda9405d97b0ec37e585909a27     0 4b2cb93d317c2e687de012ce2c4450fe7db5b8d4 7cc6cc991e586a6158bb656b8001234ccda25407 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6779  
997173551 PR_kwDOAMm_X847b6kv 6784 closed 0 Switch to T_DataArray and T_Dataset in concat Illviljan 14371165 Noticed these issues when trying to add typing to some helper functions in #6778. 2022-07-14T22:31:02Z 2022-07-26T15:07:18Z 2022-07-18T14:46:07Z 2022-07-18T14:46:07Z 8f983f1664954c669c329dcd20e4384323dafa3c     0 63e0f1d66de2de1bb8444a5b1c6ff743d7526419 f045401ca79ecd1b80a0da67f44404c4e208fe31 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6784  
1007054529 PR_kwDOAMm_X848Bm7B 6823 closed 0 Rely on array backend for string formatting Illviljan 14371165 * Rely on array backend for string formatting instead of forcing to numpy arrays. The previous implementation used `.values` to force to numpy arrays which doesn't work for sparse arrays and might be scary in the case of large dask arrays. * Only allow `format_spec` when dealing with scalar arrays, shape=(). Using f-strings is a common method to print the repr. If we want to have full support of `.__format__` we should probably add `format_spec` as input to `formatting.array_repr`. - [x] Closes #6822 - [x] Tests added - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` ```python import pandas as pd import xarray as xr s = pd.Series( range(4), index=pd.MultiIndex.from_product([list("ab"), list("cd")]), ) da = xr.DataArray.from_series(s, sparse=True) # Handle sparse: print(f"Error: {da} is sparse") Error: <xarray.DataArray (level_0: 2, level_1: 2)> <COO: shape=(2, 2), dtype=float64, nnz=4, fill_value=nan> Coordinates: * level_0 (level_0) object 'a' 'b' * level_1 (level_1) object 'c' 'd' is sparse # Handle format_spec: da = xr.DataArray([1, 2, 3]) print(f'{da[0]}') <xarray.DataArray ()> array(1) print(f'{da[0]:d}') 1 print(f'{da[0]:f}') 1.000000 da = xr.DataArray([1, 2, 3]) print(f'{da:.f}') Traceback (most recent call last): (...) NotImplementedError: Using format_spec is only supported when shape is (). Got shape = (3,). ``` 2022-07-25T09:43:21Z 2022-08-08T15:11:34Z 2022-08-08T15:11:34Z 2022-08-08T15:11:34Z c3d45b3adf1ae82067b279c2226e076e2fbb53e6     0 49b1c245a3e021c0763fee5f9c617a9212a785c7 a17a00f8f95195838e1d7360426454c8ed0570ea MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6823  
1008986976 PR_kwDOAMm_X848I-tg 6831 closed 0 Convert name to string Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [ ] 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` 2022-07-26T21:38:32Z 2022-07-26T22:16:44Z 2022-07-26T21:38:54Z         0 bf0a5db7113a607a644e52b005ffea5b9ec67b46 491fb16073ba72e5774387d0e94a3077459249f2 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6831  
1008988226 PR_kwDOAMm_X848I_BC 6832 closed 0 Convert name to string in label_from_attrs Illviljan 14371165 Make sure name is a string. Use the same `.format` method as in `_get_units_from_attrs` to convert to string. - [x] Closes #6826 - [x] Tests added - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` 2022-07-26T21:40:38Z 2022-08-12T09:02:01Z 2022-07-26T22:48:39Z 2022-07-26T22:48:39Z 5a4505199fe7deb449835f7f624a83ae1efed1d2     0 6a60e97947a0a2e2fcc8ac71abd20c7da36d1360 2e02ca7367cc52d2d8618124c470f58ab2ea1de2 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6832  
1013637854 PR_kwDOAMm_X848auLe 6856 closed 0 Better error message in _infer_meta_data Illviljan 14371165 Reduce diffs in #6778. I remember finding it annoying that I got a list of the valid strings but not the actual string used. 2022-08-01T10:06:58Z 2022-08-12T09:01:36Z 2022-08-01T16:59:51Z 2022-08-01T16:59:51Z 88ac94942318e815ecce0d06644c6425412c623d     0 ebe2e46eee77260f9777d390668958917be83f08 db634ea44f567dce678b8879cc66652fc7f7e70d MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6856  
1014901785 PR_kwDOAMm_X848fiwZ 6862 closed 0 Add typing to some interval functions Illviljan 14371165 Reduce diffs in #6778. `_interval_to_double_bound_points` was returning a `list` instead of `ndarray` which I had some issues with. 2022-08-02T10:02:57Z 2022-08-12T09:02:21Z 2022-08-02T20:43:08Z 2022-08-02T20:43:08Z a17a00f8f95195838e1d7360426454c8ed0570ea     0 729cf292fe759ebd1de4903b232deb1b46d8faa2 ebfa77311280a15d8c455ceb5c8ddc25a2efef39 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6862  
1015693510 PR_kwDOAMm_X848ikDG 6871 closed 0 Handle None in assert_valid_xy Illviljan 14371165 Reduce diffs in #6778. * Handle `None` as the error message suggest should be possible * Add some typing while at it. mypy noticed that Hashable cannot use `", ".join`-method so forcing them to `str` instead. Should be the same problem in #6856 but `Frozen` returns `Any` instead of `Hashable` for some reason. 2022-08-02T23:37:19Z 2022-08-12T08:59:59Z 2022-08-03T22:08:45Z 2022-08-03T22:08:45Z 2c12cfc463ed179f05cdd82a6b1399044149b33c     0 85393cf2b628ae3ce9dd82f9525e069d78442811 a17a00f8f95195838e1d7360426454c8ed0570ea MEMBER
{
    "enabled_by": {
        "login": "dcherian",
        "id": 2448579,
        "node_id": "MDQ6VXNlcjI0NDg1Nzk=",
        "avatar_url": "https://avatars.githubusercontent.com/u/2448579?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/dcherian",
        "html_url": "https://github.com/dcherian",
        "followers_url": "https://api.github.com/users/dcherian/followers",
        "following_url": "https://api.github.com/users/dcherian/following{/other_user}",
        "gists_url": "https://api.github.com/users/dcherian/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/dcherian/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/dcherian/subscriptions",
        "organizations_url": "https://api.github.com/users/dcherian/orgs",
        "repos_url": "https://api.github.com/users/dcherian/repos",
        "events_url": "https://api.github.com/users/dcherian/events{/privacy}",
        "received_events_url": "https://api.github.com/users/dcherian/received_events",
        "type": "User",
        "site_admin": false
    },
    "merge_method": "squash",
    "commit_title": "Handle None in assert_valid_xy (#6871)",
    "commit_message": "* Handle none in assert_valid_xy\r\n\r\n* add test\r\n\r\n* Update xarray/tests/test_plot.py\r\n\r\n* Update test_plot.py\r\n\r\nCo-authored-by: Deepak Cherian <dcherian@users.noreply.github.com>"
}
xarray 13221727 https://github.com/pydata/xarray/pull/6871  
1020894156 PR_kwDOAMm_X8482ZvM 6897 closed 0 Type xr.tutorial Illviljan 14371165 Add some typing to the open_dataset functions. Was doing some debugging and I only got `Any` when trying to simplify the problem with tutorial data. 2022-08-09T00:20:19Z 2022-08-12T08:59:30Z 2022-08-10T07:40:18Z 2022-08-10T07:40:17Z bdd1da8a221118b9cb217ecc9aeaeaadf0c6cf09     0 e18b0466a4f49c85a6bd977d5b0076780068d1cf 3c8ce0f4f6fd287bcd1bc3783d51d4ce5a6bc55d MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6897  
1020901175 PR_kwDOAMm_X8482bc3 6898 closed 0 Fix mypy CI Illviljan 14371165 Fixes: ``` xarray/tests/test_backends_file_manager.py:56: error: Incompatible types in assignment (expression has type "_GeneratorContextManager[Any]", variable has type "WarningsChecker") [assignment] ``` Just added a ignore. 2022-08-09T00:35:19Z 2022-08-12T08:59:42Z 2022-08-09T01:30:24Z 2022-08-09T01:30:24Z 3c8ce0f4f6fd287bcd1bc3783d51d4ce5a6bc55d     0 dbd1508b452082e3e9794a123b5f2ddfa0121f9d c8607e19ba57537326114edcb1d56ab70fd05583 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6898  
1026947853 PR_kwDOAMm_X849NfsN 6917 closed 0 Reuse total width calculation Illviljan 14371165 Minor tweak to reduce diffs in #6778. 2022-08-15T22:21:31Z 2022-08-15T22:40:06Z 2022-08-15T22:40:06Z 2022-08-15T22:40:06Z fbaf815af746a73b29c2b927ccb3aaf37f3a8721     0 eb1c98bdf81aa85c170fb3933852f4532011adbc d797bfbce2db75131ca094e741e50be7b69b9f15 MEMBER
{
    "enabled_by": {
        "login": "Illviljan",
        "id": 14371165,
        "node_id": "MDQ6VXNlcjE0MzcxMTY1",
        "avatar_url": "https://avatars.githubusercontent.com/u/14371165?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Illviljan",
        "html_url": "https://github.com/Illviljan",
        "followers_url": "https://api.github.com/users/Illviljan/followers",
        "following_url": "https://api.github.com/users/Illviljan/following{/other_user}",
        "gists_url": "https://api.github.com/users/Illviljan/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/Illviljan/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/Illviljan/subscriptions",
        "organizations_url": "https://api.github.com/users/Illviljan/orgs",
        "repos_url": "https://api.github.com/users/Illviljan/repos",
        "events_url": "https://api.github.com/users/Illviljan/events{/privacy}",
        "received_events_url": "https://api.github.com/users/Illviljan/received_events",
        "type": "User",
        "site_admin": false
    },
    "merge_method": "squash",
    "commit_title": "Reuse width variable (#6917)",
    "commit_message": ""
}
xarray 13221727 https://github.com/pydata/xarray/pull/6917  
1026968481 PR_kwDOAMm_X849Nkuh 6918 closed 0 Generalize set_(x, y, z)labels in facetgrids Illviljan 14371165 Prepare to be able to use a `.set_zlabels` in facetgrids. Reduces diffs in #6778. 2022-08-15T22:45:15Z 2022-08-17T17:33:19Z 2022-08-17T17:21:40Z 2022-08-17T17:21:40Z 63d7eb9c45781309506c332a78828fe0e821b1a1     0 456b41918c54b6cbd7099c2e81a53ffb0eb75528 fbaf815af746a73b29c2b927ccb3aaf37f3a8721 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6918  
1027962317 PR_kwDOAMm_X849RXXN 6923 closed 0 Add Self in xarray.core.types Illviljan 14371165 Adds `typing_extensions.Self` wrapped in some safety checks. Wont really become useful until https://github.com/python/mypy/issues/11871 is fixed. But it can be used with pyright at least. 2022-08-16T18:48:15Z 2022-08-22T12:24:05Z 2022-08-22T12:24:05Z 2022-08-22T12:24:04Z 790a444b11c244fd2d33e2d2484a590f8fc000ff     0 bf6d2df2b23d544a2facdfd8106a446a9c13df2d fbaf815af746a73b29c2b927ccb3aaf37f3a8721 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6923  
1029276099 PR_kwDOAMm_X849WYHD 6926 closed 0 Use micromamba in ASV benchmark workflow Illviljan 14371165 These changes should hopefully yield some performance improvements. 2022-08-17T20:27:44Z 2022-09-24T09:15:38Z 2022-09-24T09:15:38Z 2022-09-24T09:15:38Z bda0a2faac5b870b39251da6ab4a0113377e32f7     0 3a77b7503452ad8878af5c8de5dfbf416942421c 63ba862d03c8d0cd8b44d2071bc360e9fed4519d MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/6926  
1058767180 PR_kwDOAMm_X84_G4FM 7044 closed 0 Self should be Any Illviljan 14371165 Self should be as permissive as possible until it works properly. Using `Any` instead of `TypeVar` avoids errors like these: `C:\users\j.w\documents\github\xarray\xarray\plot\facetgrid.py:462: error: Incompatible return value type (got "FacetGrid", expected "Self")` xref: #6923 2022-09-16T15:18:21Z 2022-09-23T18:56:40Z 2022-09-16T15:54:54Z 2022-09-16T15:54:54Z 09e467a6a3a8ed68c6c29647ebf2b09288145da1     0 d38d484af603009f7b2a27c6f866ee63743bf820 63ba862d03c8d0cd8b44d2071bc360e9fed4519d MEMBER
{
    "enabled_by": {
        "login": "Illviljan",
        "id": 14371165,
        "node_id": "MDQ6VXNlcjE0MzcxMTY1",
        "avatar_url": "https://avatars.githubusercontent.com/u/14371165?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Illviljan",
        "html_url": "https://github.com/Illviljan",
        "followers_url": "https://api.github.com/users/Illviljan/followers",
        "following_url": "https://api.github.com/users/Illviljan/following{/other_user}",
        "gists_url": "https://api.github.com/users/Illviljan/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/Illviljan/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/Illviljan/subscriptions",
        "organizations_url": "https://api.github.com/users/Illviljan/orgs",
        "repos_url": "https://api.github.com/users/Illviljan/repos",
        "events_url": "https://api.github.com/users/Illviljan/events{/privacy}",
        "received_events_url": "https://api.github.com/users/Illviljan/received_events",
        "type": "User",
        "site_admin": false
    },
    "merge_method": "squash",
    "commit_title": "Self should be Any (#7044)",
    "commit_message": ""
}
xarray 13221727 https://github.com/pydata/xarray/pull/7044  
1058795014 PR_kwDOAMm_X84_G-4G 7046 closed 0 Add helper for setting axis limits in facetgrid Illviljan 14371165 This PR adds a helper method that sets the same axis limits for all plots in a facetgrid. Helpful when * wanting specific limits for all plots. * you want to make sure all data is visible by simply using the method without any inputs. Which is not certain if sharex/sharey isn't used, relevant when using 3d plots as they don't work. Split up from #6778. 2022-09-16T15:47:17Z 2022-09-26T16:54:04Z 2022-09-25T15:29:01Z 2022-09-25T15:29:01Z 968443c81868b35e46f460a04d7135ce99e9c3e4     0 43b382a0aba1106ff829a1154251ba10e459796d 63ba862d03c8d0cd8b44d2071bc360e9fed4519d MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7046  
1058820904 PR_kwDOAMm_X84_HFMo 7047 closed 0 Set sharex/sharey to False if using 3d plots Illviljan 14371165 Matplotlibs 3d plots appears to not support sharex/sharey. So reset to default values instead. This improves the look of the plot as axis values aren't deleted. Example: ```python import matplotlib.pyplot as plt fig = plt.figure() subplot_kws = {"projection":"3d"} ax1 = fig.add_subplot(211, **subplot_kws) ax1.plot([0, 1, 2], [5,6,6]) ax2 = fig.add_subplot(212, sharex = ax1, **subplot_kws) ax2.plot([0, 1, 2], [5,4,2]) # x axis is not linked. ``` Split up from #6778. 2022-09-16T16:16:57Z 2022-09-25T15:33:29Z 2022-09-25T15:33:29Z 2022-09-25T15:33:28Z 212a5d7909e8dd54446b08574a0683e2477f2b40     0 8028ad1f0e5bf5f382e0f2ae09921abe59ff375d 09e467a6a3a8ed68c6c29647ebf2b09288145da1 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7047  
1067443682 PR_kwDOAMm_X84_n-Xi 7082 closed 0 Clearer variable names in FacetGrid._set_lims Illviljan 14371165 * Fix outdated typing. * Clearer variable names. 2022-09-26T16:52:41Z 2022-09-26T20:50:18Z 2022-09-26T20:50:18Z 2022-09-26T20:50:18Z 404a6e268d3d83e8bad04768971ba1bc207a155d     0 e3408f0bf93ae324b368d33488a9c3335fb1e87d 212a5d7909e8dd54446b08574a0683e2477f2b40 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7082  
1088356033 PR_kwDOAMm_X85A3v7B 7167 closed 0 Fix some scatter plot issues Illviljan 14371165 Fix some issues with scatter plots: * Always use markersize widths for scatter. * Fix issue with `.values_unique` not returning the same values as `.values` * Added more type hints to _Normalize, some rework had to be done to make mypy pass. xref: #6778 2022-10-16T09:38:05Z 2022-10-17T13:39:31Z 2022-10-17T13:39:31Z 2022-10-17T13:39:31Z 0aa0ae4923ea33ab55bb6df8f63c108f94a6817e     0 14a5fff4c98589d762780b34b2a18c680df594d1 da9c1d16562f233bfdafb0078cd1404ea18e03b8 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7167  
1088428322 PR_kwDOAMm_X85A4Bki 7169 closed 0 Rework docs about scatter plots Illviljan 14371165 Show off some more possibilities with the scatter plot. 2022-10-16T15:37:25Z 2022-10-17T13:40:01Z 2022-10-17T13:40:01Z 2022-10-17T13:40:01Z a7f7190fede13e34e44640ed648d650c3679ab12     0 a63a0f1e17fb3bae5f50d76b4cfbc33b5aa53fa3 da9c1d16562f233bfdafb0078cd1404ea18e03b8 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7169  
1088493762 PR_kwDOAMm_X85A4RjC 7173 open 0 Add LineCollection plot Illviljan 14371165 This adds a line plotter based on `LineCollections`, called `.lines` at the moment. I wanted to replace `darray.plot()` with using LineCollection instead. But unfortunately due to how many cases are supported (and tested in xarray) `darray.plot()` will continue using `plt.plot`. xref: #4820 #5622 2022-10-16T20:16:28Z 2024-04-07T20:26:44Z     c99eeebe25db88f6ce416496cc8f1573b3a1cae5     1 a83b3be37fceb20525f7a01def32ed097bd412ef 3c98570d3c622bd0982f7f8915366fbbbc70ca83 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7173  
1088500927 PR_kwDOAMm_X85A4TS_ 7174 open 0 Move .line to plot1d Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [ ] 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` 2022-10-16T20:51:23Z 2023-06-19T20:37:30Z     3e888c6a678bdbb26cf19e00fca103049d65688e     1 4a811db36c92db83652e62a51311d8c196cc302b e739df7d27d88008f09a927fc0f61fccdc7a77aa MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7174  
1095759546 PR_kwDOAMm_X85BT_a6 7194 closed 0 Align naming convention with plt.subplots Illviljan 14371165 I noticed that the normal notation for `fig, axs = plt.subplots(2, 1)` wasn't used in facetgrid so did a quick find replace to change that. This feels better for my pedantic brain at least but I'm not sure it's worth the effort? 2022-10-21T20:31:34Z 2024-03-13T21:44:17Z 2022-10-23T11:58:12Z 2022-10-23T11:58:12Z 9951491e0b849834c369de522de2df8172a2e298     0 c1868bd0344a5bf3713373d537881aaf91558105 6cb97f645475bddf2f3b1e1a5f24f0f9de690683 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7194  
1096363923 PR_kwDOAMm_X85BWS-T 7196 closed 0 Remove rasterio tutorial test Illviljan 14371165 This test has been quite troublesome and since `.open_rasterio` has been deprecated since 0.20 I think it's fine removing the test. 2022-10-22T22:30:40Z 2022-10-23T11:57:36Z 2022-10-23T11:57:36Z 2022-10-23T11:57:36Z c4677cea257871caadf261908138679131e2abb1     0 1310681812ab1b125ea6754bff45a7bba97e1d58 6cb97f645475bddf2f3b1e1a5f24f0f9de690683 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7196  
1096951476 PR_kwDOAMm_X85BYia0 7203 closed 0 Avoid loading any data for reprs Illviljan 14371165 <!-- Feel free to remove check-list items aren't relevant to your change --> - [x] Closes #6722 - [x] Tests added - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` 2022-10-24T05:12:40Z 2022-10-28T16:23:19Z 2022-10-28T16:23:19Z 2022-10-28T16:23:19Z fc9026b59d38146a21769cc2d3026a12d58af059     0 80bfd65b2b08b0db27bfa1fbe17ba0f2b686bdb3 9951491e0b849834c369de522de2df8172a2e298 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7203  
1096962179 PR_kwDOAMm_X85BYlCD 7204 closed 0 absolufy-imports - No relative imports - PEP8 Illviljan 14371165 I saw dask has started using absolute imports in https://github.com/dask/dask/pull/8796. I find it much more readable and there's a nice pre-commit for it as well. Easiest way to deal with the merge conflicts is probably to just accept your changes and let pre-commit fix them afterwards. 2022-10-24T05:27:24Z 2022-12-10T11:42:43Z 2022-12-07T21:24:44Z 2022-12-07T21:24:44Z 6e77f5e8942206b3e0ab08c3621ade1499d8235b     0 d20603dd640aaa71c2d5909b50fa5a316a1aa7d9 ed60c6ccd3d6725cd91190b8796af4355f3085c2 MEMBER
{
    "enabled_by": {
        "login": "Illviljan",
        "id": 14371165,
        "node_id": "MDQ6VXNlcjE0MzcxMTY1",
        "avatar_url": "https://avatars.githubusercontent.com/u/14371165?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Illviljan",
        "html_url": "https://github.com/Illviljan",
        "followers_url": "https://api.github.com/users/Illviljan/followers",
        "following_url": "https://api.github.com/users/Illviljan/following{/other_user}",
        "gists_url": "https://api.github.com/users/Illviljan/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/Illviljan/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/Illviljan/subscriptions",
        "organizations_url": "https://api.github.com/users/Illviljan/orgs",
        "repos_url": "https://api.github.com/users/Illviljan/repos",
        "events_url": "https://api.github.com/users/Illviljan/events{/privacy}",
        "received_events_url": "https://api.github.com/users/Illviljan/received_events",
        "type": "User",
        "site_admin": false
    },
    "merge_method": "squash",
    "commit_title": "absolufy-imports - No relative imports - PEP8 (#7204)",
    "commit_message": "* absolufy imports\r\n\r\n* [pre-commit.ci] auto fixes from pre-commit.com hooks\r\n\r\nfor more information, see https://pre-commit.ci\r\n\r\n* Revert \"[pre-commit.ci] auto fixes from pre-commit.com hooks\"\r\n\r\nThis reverts commit ee9db08e9ada58f280585deba21fea3fdd6a84ca.\r\n\r\n* [pre-commit.ci] auto fixes from pre-commit.com hooks\r\n\r\nfor more information, see https://pre-commit.ci\r\n\r\n* Revert \"[pre-commit.ci] auto fixes from pre-commit.com hooks\"\r\n\r\nThis reverts commit 66af1c3731439762f0686610ff5872343d0bd15b.\r\n\r\n* [pre-commit.ci] auto fixes from pre-commit.com hooks\r\n\r\nfor more information, see https://pre-commit.ci\r\n\r\n* Revert \"[pre-commit.ci] auto fixes from pre-commit.com hooks\"\r\n\r\nThis reverts commit 55dfefa910b3e83dc9050b28a4116f0eada9b4d3.\r\n\r\n* [pre-commit.ci] auto fixes from pre-commit.com hooks\r\n\r\nfor more information, see https://pre-commit.ci\r\n\r\n* Update whats-new.rst\r\n\r\nCo-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>"
}
xarray 13221727 https://github.com/pydata/xarray/pull/7204  
1099263864 PR_kwDOAMm_X85BhW94 7218 closed 0 Rename FacetGrid.axes to FacetGrid.axs in tests Illviljan 14371165 Follow up to #7194. This fixes all the warnings related to the change. 2022-10-25T17:59:39Z 2022-10-27T17:45:20Z 2022-10-27T17:45:19Z 2022-10-27T17:45:19Z c92102bca4a20b4e9f2aacf722b7008698522c8a     0 352f5fe3aea77dd734edfbc0925c5ab2b065e67a 519abb7bde020f2b27cb7e3dfddec8c6eecb7722 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7218  
1099269025 PR_kwDOAMm_X85BhYOh 7219 closed 0 Explicitly remove grids for pcolormesh Illviljan 14371165 Removes a warning in the plotting tests, related to https://matplotlib.org/stable/api/prev_api_changes/api_changes_3.5.0.html#auto-removal-of-grids-by-pcolor-and-pcolormesh. I just added `ax.grid(False)` but maybe we just want whatever is the default of matplotlib? ```python import xarray as xr airtemps = xr.tutorial.open_dataset("air_temperature") air = airtemps.air - 273.15 air.attrs = airtemps.air.attrs air.attrs["units"] = "deg C" air2d = air.isel(time=500) fig, axs = plt.subplots(2,1) air2d.plot(ax=axs[0]) # No grid. air2d.plot(ax=axs[1]) # With grid. axs[1].grid(True) ``` ![image](https://user-images.githubusercontent.com/14371165/197848951-01834aba-a260-4793-aa66-85288875498d.png) 2022-10-25T18:04:14Z 2022-10-28T16:22:53Z 2022-10-28T16:22:53Z 2022-10-28T16:22:53Z 7ff2b04a9bfa5da86d23a0615dbb3ae6a84bde91     0 8a51e49deafe9f7862dc7fbefd8604272df368f8 519abb7bde020f2b27cb7e3dfddec8c6eecb7722 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7219  
1114864995 PR_kwDOAMm_X85Cc31j 7272 closed 0 Handle division by zero in _Normalize._calc_widths Illviljan 14371165 Found an issue when constant values was used. Now if constant values are found it'll default to the minimum width value instead. 2022-11-08T18:35:55Z 2022-11-11T06:27:50Z 2022-11-11T06:27:50Z 2022-11-11T06:27:50Z 4dddb0bea882457cca665b4ac0d3940fcdcb9470     0 17e5b5f193891d415ee4bdfa341c14f73fc18a67 cc7e09a3507fa342b3790b5c109e700fa12f0b17 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7272  
1118192654 PR_kwDOAMm_X85CpkQO 7277 closed 0 Require to explicitly defining optional dimensions such as hue and markersize Illviljan 14371165 - [x] Closes #7314 - [x] Closes #7268 * Matplotlib adds default colors with `plt.plot(x, y)` when `y` is a 2D array. * Matplotlib prioritizes `c` over default colors with `plt.plot(x, y, c="blue")` when `y` is a 2D array. * Seaborn prioritizes `hue` over `c`, but all plot axes has to be explicit. The plot1d function now follows closer to seaborns example and require explicitly defining optional dimensions such as hue/markersize. Positives and negatives: +++ Reliable performance, won't accidentally choose large and heavy arrays to plot. \- Loss of dimension information for default values, will essentially flatten the n-dimensional arrays. \- Other xarray plot functions guesses quite a bit as well, API is not consistent. Required dimensions like the x-axis will still be guessed since the mpl errors weren't very intuitive. While at it: * Make it possible to prioritize certain mpl kwargs when hue/markersize isn't defined. * Fix integer coords in `plot1`d and facetgrid, use `.coords` instead of `getitem`. 2022-11-10T19:23:28Z 2023-02-11T20:55:16Z 2023-02-11T20:55:16Z 2023-02-11T20:55:16Z 9ff932a564ec1e19918120bab0ec78f1f87df07b     0 bcdd8188d52b79f3316b626796b6a31dc0926945 7683442774c8036e0b13851df62bda067b2a65d5 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7277  
1119445149 PR_kwDOAMm_X85CuWCd 7281 closed 0 Use a default value for constant dimensions Illviljan 14371165 * default markersize values of widths are 18 to 72. * plt.scatter default markersize is 36. * plt.plot default linewidth is 6. With main we get 18 for constant arrays, but 36 if markersize was undefined. This seems a bit inconsistent to me. This PR adds a default value instead for constant arrays Follow up to #7272. 2022-11-11T18:41:16Z 2022-11-20T09:59:38Z 2022-11-20T09:59:38Z 2022-11-20T09:59:38Z 9dd3c1baf57c1061eaab306034cde97338c63e98     0 4e6d7d7c2bcc27a375913aaf49409d2b076d6389 6f9e33e94944f247a5c5c5962a865ff98a654b30 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7281  
1120471208 PR_kwDOAMm_X85CyQio 7285 closed 0 Switch to T_DataArray in .coords Illviljan 14371165 .coords were still using DataArray types switch to T_DataArray instead. - [x] Fixes mypy error seen in #7277 2022-11-13T19:22:34Z 2022-11-23T17:48:25Z 2022-11-22T17:02:09Z 2022-11-22T17:02:09Z ff6793d975ef4d1d8d5d32b8ad6f4f44e02dda9b     0 eceeacfbcb746966c7423b01d27150fdfdf20dbb 88a75c907cf973facfbe65e9e0f5744bff3c0b63 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7285  
1125134123 PR_kwDOAMm_X85DEC8r 7296 closed 0 Fix some typing errors in DuckArrayModule Illviljan 14371165 Fixes these errors that I've been seeing locally for a while: ```python !mypy C:\Users\J.W\Documents\GitHub\xarray\xarray\core\coordinates.py --ignore-missing-imports C:\Users\J.W\Documents\GitHub\xarray\xarray\core\pycompat.py:48: error: Incompatible types in assignment (expression has type "Tuple[]", variable has type "Tuple[Any]") C:\Users\J.W\Documents\GitHub\xarray\xarray\core\pycompat.py:50: error: Incompatible types in assignment (expression has type "Optional[Module]", variable has type "Optional[Literal['dask', 'pint', 'cupy', 'sparse']]") Found 2 errors in 1 file (checked 1 source file) ``` Not sure why the CI isn't catching these? 2022-11-16T22:07:00Z 2022-11-20T18:52:12Z 2022-11-20T10:18:53Z 2022-11-20T10:18:53Z d6671dd414370d006254ba3156cb96256ce0e9c7     0 1dc694f61767c95eb9338b696b50088063086937 63a69fe4b2fa7a4de8a1b65826f6af4869818166 MEMBER
{
    "enabled_by": {
        "login": "Illviljan",
        "id": 14371165,
        "node_id": "MDQ6VXNlcjE0MzcxMTY1",
        "avatar_url": "https://avatars.githubusercontent.com/u/14371165?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Illviljan",
        "html_url": "https://github.com/Illviljan",
        "followers_url": "https://api.github.com/users/Illviljan/followers",
        "following_url": "https://api.github.com/users/Illviljan/following{/other_user}",
        "gists_url": "https://api.github.com/users/Illviljan/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/Illviljan/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/Illviljan/subscriptions",
        "organizations_url": "https://api.github.com/users/Illviljan/orgs",
        "repos_url": "https://api.github.com/users/Illviljan/repos",
        "events_url": "https://api.github.com/users/Illviljan/events{/privacy}",
        "received_events_url": "https://api.github.com/users/Illviljan/received_events",
        "type": "User",
        "site_admin": false
    },
    "merge_method": "squash",
    "commit_title": "Fix some typing errors in DuckArrayModule (#7296)",
    "commit_message": "* Fix some typing errors in DuckArrayModule\r\n\r\n* Update pycompat.py\r\n\r\n* Update pycompat.py"
}
xarray 13221727 https://github.com/pydata/xarray/pull/7296  
1129235498 PR_kwDOAMm_X85DTsQq 7303 closed 0 Add mypy version to xr.show_versions Illviljan 14371165 It's a little tricky getting the mypy version, so adding it to the show_versions function as well. 2022-11-20T19:27:20Z 2022-11-21T21:33:15Z 2022-11-21T21:33:15Z 2022-11-21T21:33:15Z 5344ccbab409d15a7bc9f7125741cc33c735aa61     0 a913be721b0b45b5db0de65ba979eb9c26fd6c56 d6671dd414370d006254ba3156cb96256ce0e9c7 MEMBER   xarray 13221727 https://github.com/pydata/xarray/pull/7303  

Next page

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

CREATE TABLE [pull_requests] (
   [id] INTEGER PRIMARY KEY,
   [node_id] TEXT,
   [number] INTEGER,
   [state] TEXT,
   [locked] INTEGER,
   [title] TEXT,
   [user] INTEGER REFERENCES [users]([id]),
   [body] TEXT,
   [created_at] TEXT,
   [updated_at] TEXT,
   [closed_at] TEXT,
   [merged_at] TEXT,
   [merge_commit_sha] TEXT,
   [assignee] INTEGER REFERENCES [users]([id]),
   [milestone] INTEGER REFERENCES [milestones]([id]),
   [draft] INTEGER,
   [head] TEXT,
   [base] TEXT,
   [author_association] TEXT,
   [auto_merge] TEXT,
   [repo] INTEGER REFERENCES [repos]([id]),
   [url] TEXT,
   [merged_by] INTEGER REFERENCES [users]([id])
);
CREATE INDEX [idx_pull_requests_merged_by]
    ON [pull_requests] ([merged_by]);
CREATE INDEX [idx_pull_requests_repo]
    ON [pull_requests] ([repo]);
CREATE INDEX [idx_pull_requests_milestone]
    ON [pull_requests] ([milestone]);
CREATE INDEX [idx_pull_requests_assignee]
    ON [pull_requests] ([assignee]);
CREATE INDEX [idx_pull_requests_user]
    ON [pull_requests] ([user]);
Powered by Datasette · Queries took 44.377ms · About: xarray-datasette