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 792946756,PR_kwDOAMm_X84vQ2hE,6037,closed,0,Fix wrong typing for tolerance in reindex,57914115,"In the `xarray.core.dataset.py `module, more particulary in the reindex method the tolerance argument is set to be a `Number` https://github.com/pydata/xarray/blob/f08672847abec18f46df75e2f620646d27fa41a2/xarray/core/dataset.py#L2743 But the `_reindex` function call `reindex_variable` function. In the `reindex_variable` the type for tolerance is `Any`. This function ends to call `get_indexer_nd` which call the pandas function `get_indexer` : https://github.com/pydata/xarray/blob/f08672847abec18f46df75e2f620646d27fa41a2/xarray/core/indexes.py#L137 In pandas the type of tolerance according to the docs can be a scalar or a list-like object - [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-12-01T17:19:08Z,2022-01-15T17:28:08Z,2022-01-15T17:27:56Z,2022-01-15T17:27:56Z,3666a6fb7226601002f408d56e81837ab69b8d4e,,,0,c659cc4f8738900e9c11a5407b8f4cdc801613d5,4c865d607e6e03605b7050d9fb6991e86346bf08,CONTRIBUTOR,,13221727,https://github.com/pydata/xarray/pull/6037, 1560652584,PR_kwDOAMm_X85dBaso,8322,open,0,Implementation of rust based cftime ,57914115,"As discussed in #8302, here is a first attempt to implement `cftime_rs`. There are a lot of tests and I struggle to understand all the processing in `coding/times.py`. However, with this first attempt I've been able to make the `test_cf_datetime` work (ignoring one test) https://github.com/pydata/xarray/blob/8423f2c47306cc3a4a52990818964f278179491f/xarray/tests/test_coding_times.py#L127-L131 Also there are some key differences betwwen `cftime` and `cftime-rs` : - A long int is used to represent the timestamp internally, so `cftime-rs` will not overflow as soon as `numpy`, `python `or `cftime`. It can go from -291,672,107,014 BC to 291,672,107,014 AD approximately and this depends on calendar. - There is no `only_use_python_datetimes` argument. Instead there are 4 distinct functions : - [date2num()](https://cftime-rs.readthedocs.io/en/latest/api_documentation/index.html#cftime_rs.date2num) - [num2date()](https://cftime-rs.readthedocs.io/en/latest/api_documentation/index.html#cftime_rs.num2date) - [num2pydate()](https://cftime-rs.readthedocs.io/en/latest/api_documentation/index.html#cftime_rs.num2pydate) - [pydate2num()](https://cftime-rs.readthedocs.io/en/latest/api_documentation/index.html#cftime_rs.pydate2num) - These functions only take a python list of one dimension and return a list of one dimension. A conversion should be done before. - There is no multiple datetime type (there are hidden) but instead a single object `PyCFDatetime` - There is no conda repository at the moment Finally, and regardless of this PR, I guess there could be a speed improvement by vectorizing operations by replacing this : https://github.com/pydata/xarray/blob/df0ddaf2e68a6b033b4e39990d7006dc346fcc8c/xarray/coding/times.py#L622-L649 by something like this : https://github.com/pydata/xarray/blob/8423f2c47306cc3a4a52990818964f278179491f/xarray/coding/times.py#L631-L670 We can use numpy instead of list comprehensions. It takes a bit more of memory though. ",2023-10-17T14:00:45Z,2023-10-17T22:20:31Z,,,7ff8e3707b88a3a55e14c1595ee0d14a199f8af8,,,0,8423f2c47306cc3a4a52990818964f278179491f,df0ddaf2e68a6b033b4e39990d7006dc346fcc8c,CONTRIBUTOR,,13221727,https://github.com/pydata/xarray/pull/8322, 1560972943,PR_kwDOAMm_X85dCo6P,8324,open,0,Implement cftime vectorization as discussed in PR #8322,57914115,"As discussed in #8322, here is the test for implementing the vectorization Only this test seems to fail in `test_coding_times.py` : https://github.com/pydata/xarray/blob/f895dc1a748b41d727c5e330e8d664a8b8780800/xarray/tests/test_coding_times.py#L1061-L1071 I don't really understand why though if you have an idea",2023-10-17T17:01:25Z,2023-10-23T05:11:11Z,,,f7e19c4c9224059e2362ab88b17a9101e2d58beb,,,0,cff06d4c59acb9cc6fb8ed18c593d9008e4a0883,f895dc1a748b41d727c5e330e8d664a8b8780800,CONTRIBUTOR,,13221727,https://github.com/pydata/xarray/pull/8324,