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/1330#issuecomment-305052905,https://api.github.com/repos/pydata/xarray/issues/1330,305052905,MDEyOklzc3VlQ29tbWVudDMwNTA1MjkwNQ==,1217238,2017-05-31T01:09:12Z,2017-05-31T01:09:12Z,MEMBER,In it goes! Thanks everyone for your feedback.,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,217287113 https://github.com/pydata/xarray/pull/1330#issuecomment-303858492,https://api.github.com/repos/pydata/xarray/issues/1330,303858492,MDEyOklzc3VlQ29tbWVudDMwMzg1ODQ5Mg==,1217238,2017-05-24T21:35:13Z,2017-05-24T21:35:13Z,MEMBER,I switched from AlignmentError -> ValueError. We can always add an AlignmentError later subclassing from ValueError if we want it.,"{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,217287113 https://github.com/pydata/xarray/pull/1330#issuecomment-302711852,https://api.github.com/repos/pydata/xarray/issues/1330,302711852,MDEyOklzc3VlQ29tbWVudDMwMjcxMTg1Mg==,1217238,2017-05-19T14:05:12Z,2017-05-19T14:05:12Z,MEMBER,"> Does align='exact' require the indices to be be compared value by value? Yes, it does. It checks indexes for equality, and if they don't match it raises an error (rather than aligning).","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,217287113 https://github.com/pydata/xarray/pull/1330#issuecomment-290576826,https://api.github.com/repos/pydata/xarray/issues/1330,290576826,MDEyOklzc3VlQ29tbWVudDI5MDU3NjgyNg==,1217238,2017-03-30T23:49:21Z,2017-03-30T23:49:21Z,MEMBER,"> Is it worth introducing custom exception types into xarray? My thought is that custom exception types make sense when the exception is effectively part of the API, though possibly it would make sense to have AlignmentError inherit from ValueError. For example, the first part of a utility function `my_custom_align` might involve something like: ``` def is_aligned(*objects): try: xarray.align(*objects, join='exact') except AlignmentError: return False else: return True ``` (actually, perhaps we should write `is_aligned` ourselves!) Or to log potential performance issues: ``` def align_but_log(*objects): try: aligned = xarray.align(*objects, join='exact') except AlignmentError: logging.warning('objects were not aligned') aligned = xarray.align(*objects) return aligned ``` > Otherwise you'll probably want to change some others to AlignmentError for consistency. I actually think every operation that automatically aligns already goes through `xarray.align`. Though it's probably worth double checking...","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,217287113 https://github.com/pydata/xarray/pull/1330#issuecomment-290567817,https://api.github.com/repos/pydata/xarray/issues/1330,290567817,MDEyOklzc3VlQ29tbWVudDI5MDU2NzgxNw==,1217238,2017-03-30T22:53:18Z,2017-03-30T22:53:18Z,MEMBER,@pydata/xarray Any thoughts on this feature? Does it seem useful to you? Does the name `join='exact'` make sense?,"{""total_count"": 3, ""+1"": 3, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,217287113