id,node_id,number,title,user,state,locked,assignee,milestone,comments,created_at,updated_at,closed_at,author_association,active_lock_reason,draft,pull_request,body,reactions,performed_via_github_app,state_reason,repo,type 308039063,MDExOlB1bGxSZXF1ZXN0MTc3MDc3MTU5,2011,rolling: periodic,10194086,closed,0,,,9,2018-03-23T13:57:25Z,2021-03-30T15:08:22Z,2021-03-30T15:08:18Z,MEMBER,,0,pydata/xarray/pulls/2011," - [x] Closes #2007 - [ ] Tests added (for all bug fixes or enhancements) - [ ] Tests passed (for all non-documentation changes) - [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API --- Ok, this was easier to do than initially thought, we can use `np.pad(a, pads, mode='wrap')` in `nputils.rolling_window`. However, I'm not sure if that is enough already*. I added an initial test, but could use some pointers where else you want this to be tested. Questions: * is `fill_value='periodic'` a good api? * should the `fill_value` keyvalue be ported to `rolling`? * should this also be mentioned in the docs for `rolling` (I only learned about `rolling.construct` yesterday) --- *`rolling` is present in`core/dataset.py`, `core/dataarray.py`, `core/variable.py`, `core/rolling.py`, `core/dask_array_ops.py`, `core/nputils.py`, `core/ops.py`, `core/common.py`, `core/missing.py`, and `core/duck_array_ops.py` that can be a bit daunting... ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2011/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull