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/3271#issuecomment-526277546,https://api.github.com/repos/pydata/xarray/issues/3271,526277546,MDEyOklzc3VlQ29tbWVudDUyNjI3NzU0Ng==,1217238,2019-08-29T17:10:03Z,2019-08-29T17:10:03Z,MEMBER,"Looks great, thank you! (We don't really need release notes for every minor change, especially if nothing is changing from a user perspective.)","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,486153978 https://github.com/pydata/xarray/pull/3271#issuecomment-525610905,https://api.github.com/repos/pydata/xarray/issues/3271,525610905,MDEyOklzc3VlQ29tbWVudDUyNTYxMDkwNQ==,1217238,2019-08-28T06:58:40Z,2019-08-28T06:58:40Z,MEMBER,"`ValueError: conflicting sizes for dimension 'x': length 0 on the data but length 4 on coordinate 'x'` seems like an improvement, but I'm still not sure it's the right message. Maybe something like `ValueError: different number of dimensions on data and dims: 0 vs 3` would be more precise? I think this could be achieved by checking `len(dims) == len(shape)` in the case where `dims` was explicitly provided, i.e., around this line: https://github.com/pydata/xarray/blob/aaeea6250b89e3605ee1d1a160ad50d6ed657c7e/xarray/core/dataarray.py#L117 For reference, here's the current traceback for this error: ``` In [3]: xr.DataArray(np.array(1), coords={'x': np.arange(4), 'y': 'a'}, dims=['x']) --------------------------------------------------------------------------- KeyError Traceback (most recent call last) in ----> 1 xr.DataArray(np.array(1), coords={'x': np.arange(4), 'y': 'a'}, dims=['x']) ~/dev/xarray/xarray/core/dataarray.py in __init__(self, data, coords, dims, name, attrs, encoding, indexes, fastpath) 344 data = _check_data_shape(data, coords, dims) 345 data = as_compatible_data(data) --> 346 coords, dims = _infer_coords_and_dims(data.shape, coords, dims) 347 variable = Variable(dims, data, attrs, encoding, fastpath=True) 348 ~/dev/xarray/xarray/core/dataarray.py in _infer_coords_and_dims(shape, coords, dims) 140 141 for d, s in zip(v.dims, v.shape): --> 142 if s != sizes[d]: 143 raise ValueError( 144 ""conflicting sizes for dimension %r: "" KeyError: 'x' ```","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,486153978