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 1177919687,PR_kwDOAMm_X8403yVS,6403,make more args kw only (except 'dim'),10194086,closed,0,,,9,2022-03-23T10:28:02Z,2023-10-05T20:38:49Z,2023-10-05T20:38:49Z,MEMBER,,0,pydata/xarray/pulls/6403," - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` - [ ] New functions/methods are listed in `api.rst` This makes many arguments keyword-only, except for `dim` to avoid `da.weighted(...).mean(""lat"", ""lon"")` (i.e. `da.weighted(...).mean(dim=""lat"", skipna=""lon"")`) which silently does the wrong thing. I am sure I forgot some and for some I was unsure so I left them as is. Question: do we want an deprecation cycle? Currently it just errors for `da.weighted(...).mean(""dim"", True)`. Might be nice to do it, however, @dcherian if I am not mistaken you did this without a deprecation in #5950, e.g. for `da.mean` etc.? ```python import numpy as np import xarray as xr air = xr.tutorial.open_dataset(""air_temperature"") wgt = np.cos(np.deg2rad(air.lat)) air.weighted(wgt).mean(""lat"", ""lon"") ``` ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/6403/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull