html_url,issue_url,id,node_id,user,created_at,updated_at,author_association,body,reactions,performed_via_github_app,issue https://github.com/pydata/xarray/pull/4064#issuecomment-633710066,https://api.github.com/repos/pydata/xarray/issues/4064,633710066,MDEyOklzc3VlQ29tbWVudDYzMzcxMDA2Ng==,56925856,2020-05-25T20:38:49Z,2020-05-25T20:38:49Z,CONTRIBUTOR,No problem ! Thanks everyone for helping me get up to speed :),"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-633691103,https://api.github.com/repos/pydata/xarray/issues/4064,633691103,MDEyOklzc3VlQ29tbWVudDYzMzY5MTEwMw==,2448579,2020-05-25T19:20:52Z,2020-05-25T19:20:52Z,MEMBER,Thanks @AndrewWilliams3142 ,"{""total_count"": 1, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 1, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629197669,https://api.github.com/repos/pydata/xarray/issues/4064,629197669,MDEyOklzc3VlQ29tbWVudDYyOTE5NzY2OQ==,24736507,2020-05-15T12:06:03Z,2020-05-21T17:16:39Z,NONE,"Hello @AndrewWilliams3142! Thanks for updating this PR. We checked the lines you've touched for [PEP 8](https://www.python.org/dev/peps/pep-0008) issues, and found: There are currently no PEP 8 issues detected in this Pull Request. Cheers! :beers: ##### Comment last updated at 2020-05-21 17:16:39 UTC","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-632128807,https://api.github.com/repos/pydata/xarray/issues/4064,632128807,MDEyOklzc3VlQ29tbWVudDYzMjEyODgwNw==,56925856,2020-05-21T14:49:37Z,2020-05-21T14:49:37Z,CONTRIBUTOR,"@keewis thanks for this! I've added what I think is a suitable test for `DataArray`s, do you think it's also a good idea to have a `DataSet` test? ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-632093104,https://api.github.com/repos/pydata/xarray/issues/4064,632093104,MDEyOklzc3VlQ29tbWVudDYzMjA5MzEwNA==,14808389,2020-05-21T13:42:08Z,2020-05-21T13:42:08Z,MEMBER,"`chunk` is a method of `DataArray` while `rechunk` is a method of `dask.array.Array` `dataarray.chunk(""auto"").data` calls `DataArray.chunk` and then fetches the underlying data structure (a `dask` array) while `dataarray.data.rechunk(""auto"")` fetches the underlying data structure and then calls `dask.array.Array.rechunk`.","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-632090407,https://api.github.com/repos/pydata/xarray/issues/4064,632090407,MDEyOklzc3VlQ29tbWVudDYzMjA5MDQwNw==,56925856,2020-05-21T13:36:41Z,2020-05-21T13:36:41Z,CONTRIBUTOR,"> This could test that `dataarray.chunk(""auto"").data` is the same as `dataarray.data.rechunk(""auto"")` (or something like that). @dcherian Thanks for the tip:) Quick question: Is there a reason why you're specifying the `.data` here? Also I think I'm missing something because I don't get what the difference between `.chunk()` and `.rechunk()` would be in this case. ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-632035116,https://api.github.com/repos/pydata/xarray/issues/4064,632035116,MDEyOklzc3VlQ29tbWVudDYzMjAzNTExNg==,56925856,2020-05-21T11:30:01Z,2020-05-21T11:30:01Z,CONTRIBUTOR,"Cheers! I forgot about the tests, will add them this week or next hopefully","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-631604681,https://api.github.com/repos/pydata/xarray/issues/4064,631604681,MDEyOklzc3VlQ29tbWVudDYzMTYwNDY4MQ==,2448579,2020-05-20T17:05:41Z,2020-05-20T17:05:41Z,MEMBER,"Thanks @AndrewWilliams3142 . We should add a test for `chunk(""auto"")` . This could test that `dataarray.chunk(""auto"").data` is the same as `dataarray.data.rechunk(""auto"")` (or something like that).","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629390609,https://api.github.com/repos/pydata/xarray/issues/4064,629390609,MDEyOklzc3VlQ29tbWVudDYyOTM5MDYwOQ==,56925856,2020-05-15T17:40:39Z,2020-05-15T17:41:25Z,CONTRIBUTOR,"@dcherian do you have any idea about this `mypy` Type error? I can't find much (accessible) documentation on how the `Union[]` is working in this context. ``` xarray/core/dataset.py:1737: error: Argument 2 to ""fromkeys"" of ""dict"" has incompatible type ""Union[Number, Mapping[Hashable, Union[None, Number, Tuple[Number, ...]]]]""; expected ""Union[None, Number, Tuple[Number, ...]]"" xarray/core/dataset.py:1740: error: Item ""Number"" of ""Union[Number, Mapping[Hashable, Union[None, Number, Tuple[Number, ...]]]]"" has no attribute ""keys"" ``` Edit: thanks to everyone for your help so far! ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629355884,https://api.github.com/repos/pydata/xarray/issues/4064,629355884,MDEyOklzc3VlQ29tbWVudDYyOTM1NTg4NA==,2448579,2020-05-15T16:28:14Z,2020-05-15T16:28:14Z,MEMBER,ah right. this is now rechunking chunked objects to a single chunk when `chunks=None`. This was not happening previously,"{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629346101,https://api.github.com/repos/pydata/xarray/issues/4064,629346101,MDEyOklzc3VlQ29tbWVudDYyOTM0NjEwMQ==,56925856,2020-05-15T16:11:04Z,2020-05-15T16:22:24Z,CONTRIBUTOR,"Okay so I've traced the error back to the `map_blocks()` function. I don't fully understand the code for this function in `xarray/core/parallel.py`, but here's a quick report on the different behaviours. Normally, when using the `make_ds()` and `make_da()` functions in `test_dask.py`, **without any changes to `ds.chunk()`** we have: ```python >>> def func(obj): ... result = obj + obj.x + 5 * obj.y ... return result ... >>> xr.map_blocks(func, ds).unify_chunks().chunks Frozen(SortedKeysDict({'x': (4, 4, 2), 'y': (5, 5, 5, 5), 'z': (4,)})) >>> func(ds).chunk().unify_chunks().chunks Frozen(SortedKeysDict({'x': (4, 4, 2), 'y': (5, 5, 5, 5), 'z': (4,)})) ``` However, when I use the changes I've made to `dataset.py` (changing `isinstance(chunks, Number)` to `is_scalar(chunks)`), the behaviour becomes: ```python >>> xr.map_blocks(func, ds).unify_chunks().chunks Frozen(SortedKeysDict({'x': (4, 4, 2), 'y': (5, 5, 5, 5), 'z': (4,)})) >>> func(ds).chunk().unify_chunks().chunks Frozen(SortedKeysDict({'x': (10,), 'y': (20,), 'z': (4,)})) ``` Which means that it now fails the `test_map_blocks()` call in `test_dask.py` line 1077. I've tried to follow through the code and see what is actually happening when this change is made, but I'm out of my depth here. My guess is that `is_scalar(chunks)` is giving the wrong behaviour when `chunks=None` ? **Edit: I think that's the problem!** ```python >>> isinstance(None, numbers.Number) False >>> is_scalar(None) True ``` I'll add in something to catch `None`s and see if it fixes the error... ","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629199017,https://api.github.com/repos/pydata/xarray/issues/4064,629199017,MDEyOklzc3VlQ29tbWVudDYyOTE5OTAxNw==,14808389,2020-05-15T12:09:18Z,2020-05-15T12:12:05Z,MEMBER,"then you'll have to run `git pull -f` once to get the new state For future reference, github does not work terribly well with rebases (or merges without a merge commit) so it would be good to avoid those. Edit: ignore the `pep8speaks` message for now, you didn't change anything in Line 1.","{""total_count"": 2, ""+1"": 2, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629197362,https://api.github.com/repos/pydata/xarray/issues/4064,629197362,MDEyOklzc3VlQ29tbWVudDYyOTE5NzM2Mg==,56925856,2020-05-15T12:05:22Z,2020-05-15T12:05:22Z,CONTRIBUTOR,No unpushed commits ,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629192230,https://api.github.com/repos/pydata/xarray/issues/4064,629192230,MDEyOklzc3VlQ29tbWVudDYyOTE5MjIzMA==,14808389,2020-05-15T11:52:27Z,2020-05-15T11:52:27Z,MEMBER,"if you have any unpushed commits: could you push them now? While they would not be lost, it's way easier to handle them now than after the force-push","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629191037,https://api.github.com/repos/pydata/xarray/issues/4064,629191037,MDEyOklzc3VlQ29tbWVudDYyOTE5MTAzNw==,56925856,2020-05-15T11:49:23Z,2020-05-15T11:49:23Z,CONTRIBUTOR,"Do you mean the master merge? If that's wrong would you be able to fix it for me? My bad, hopefully i'll be able to do it more cleanly in future","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629189848,https://api.github.com/repos/pydata/xarray/issues/4064,629189848,MDEyOklzc3VlQ29tbWVudDYyOTE4OTg0OA==,14808389,2020-05-15T11:46:09Z,2020-05-15T11:46:09Z,MEMBER,"there's something wrong with the merge. Are you able to resolve that by yourself, or should I fix it for you?","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629171237,https://api.github.com/repos/pydata/xarray/issues/4064,629171237,MDEyOklzc3VlQ29tbWVudDYyOTE3MTIzNw==,14808389,2020-05-15T10:57:29Z,2020-05-15T11:01:53Z,MEMBER,"no, the `git pull` or `git pull origin master` (`git pull ` in general) should do the trick. ""Forking"" just means setting up your own repository on github as a mirror of the repository you're forking. After that, `git` can handle the synchronization between both repositories. If you need more explanations on `git`, how to use it and also how it works under the hood, check out the [git book](https://git-scm.com/book/en/v2). Edit: the book even has a section on Github","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629168282,https://api.github.com/repos/pydata/xarray/issues/4064,629168282,MDEyOklzc3VlQ29tbWVudDYyOTE2ODI4Mg==,56925856,2020-05-15T10:49:43Z,2020-05-15T10:49:43Z,CONTRIBUTOR,"Okay, that makes sense. Though, it seems that I forked the master branch before @kmuehlbauer's commit, which fixed this flake8 issue? So I think I need to make a new fork?","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629162166,https://api.github.com/repos/pydata/xarray/issues/4064,629162166,MDEyOklzc3VlQ29tbWVudDYyOTE2MjE2Ng==,14808389,2020-05-15T10:33:56Z,2020-05-15T10:33:56Z,MEMBER,"to merge `master`, what I usually do is: ```bash $ git checkout master $ git pull # synchronize master with `origin/master` $ git checkout $ git merge master ``` and if there are merge conflicts (i.e. the merge was interrupted), I follow the advice given by `git status`","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629154336,https://api.github.com/repos/pydata/xarray/issues/4064,629154336,MDEyOklzc3VlQ29tbWVudDYyOTE1NDMzNg==,56925856,2020-05-15T10:15:50Z,2020-05-15T10:17:38Z,CONTRIBUTOR,"Okay cheers both! I'll have a look at these now. @keewis sorry I'm still getting used to using this side of Git at the moment, could you clarify what you mean by merge `master` ? Do you mean merge with my local `master`? ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629149680,https://api.github.com/repos/pydata/xarray/issues/4064,629149680,MDEyOklzc3VlQ29tbWVudDYyOTE0OTY4MA==,14808389,2020-05-15T10:04:58Z,2020-05-15T10:09:13Z,MEMBER,"no need to rebase, simply merge `master`. Also, you'd then have to remove the checkpoint. Edit: the failing `map_block` tests are probably related to your changes (I don't know the code related to `dask` too well)","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629149164,https://api.github.com/repos/pydata/xarray/issues/4064,629149164,MDEyOklzc3VlQ29tbWVudDYyOTE0OTE2NA==,5821660,2020-05-15T10:03:42Z,2020-05-15T10:03:42Z,MEMBER,"> I'm not sure why something has changed in these files (I haven't touched them), I also can't work out what the `l` variable is meant to be doing there. Any tips appreciated! @AndrewWilliams3142 This is due to flake8 applying new changes from pycodestyle. xarray-devs already dived into this, see https://github.com/pydata/xarray/pull/4057. You might just need to rebase with current master, to make the error go away.","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102 https://github.com/pydata/xarray/pull/4064#issuecomment-629147818,https://api.github.com/repos/pydata/xarray/issues/4064,629147818,MDEyOklzc3VlQ29tbWVudDYyOTE0NzgxOA==,56925856,2020-05-15T10:00:35Z,2020-05-15T10:01:43Z,CONTRIBUTOR,"In my git clone, when I run the `flake8` and `black .` tests, I get the following messages. ``` (xarray-tests) Andrews-MacBook-Pro-2:xarray andrewwilliams$ black . All done! ✨ 🍰 ✨ 143 files left unchanged. (xarray-tests) Andrews-MacBook-Pro-2:xarray andrewwilliams$ flake8 ./xarray/backends/memory.py:43:32: E741 ambiguous variable name 'l' ./xarray/backends/common.py:244:32: E741 ambiguous variable name 'l' ./xarray/backends/.ipynb_checkpoints/memory-checkpoint.py:43:32: E741 ambiguous variable name 'l' ``` I'm not sure why something has changed in these files (I haven't touched them), I also can't work out what the `l` variable is meant to be doing there. Could this somehow be associated with loads of the checks failing below? Thanks! :) ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,618828102