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 1260041574,PR_kwDOAMm_X845E39t,6661,Typing of Dataset,43316012,closed,0,,,4,2022-06-03T15:22:24Z,2022-06-04T10:17:48Z,2022-06-04T04:26:03Z,COLLABORATOR,,0,pydata/xarray/pulls/6661,"- [x] Closes #5945 - [x] Tests added Feel free to wait with merging after the 2022.05.0.dev0 release :) - This PR adds typing to all Dataset methods (only the ones in Dataset directly and DataWithCoords). - On the way it fixes several typing issues and adds small code changes for more consistent typing (hopefully does not break anything). - All test_dataset tests are now typed. - As usual there are still some mypy bugs open that prevent all typing changes to be final (especially https://github.com/python/mypy/issues/12846). I choose to remove the TypeVars in these occasions to prevent false positives on the user side. - Sorry for updating so many files at once, mostly these are the changes of adding `from __future__ import annotations` and automatic fixes from pyupdate. If anyone has some typing expertise: I think that the way align is typed is wrong. The current implementation only works for aligning a sequence of objects of the same type, but not mixed DataArrays and Datasets. In some placed I had to add some ""#type: ignore""s... I should probably open an issue for that. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/6661/reactions"", ""total_count"": 3, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 3, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull