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 1364478097,PR_kwDOAMm_X85RVEiR,7874,closed,0,"Changed duck typing exception to: (ImportError, AttributeError)",3092444,"- [x] closes #7870 As described in issue #7870, there is a name-collision with the astrophysics package `pint-pulsar`, which is used to do high-precision pulsar timing. That other package would get imported as `pint`, and an `AttributeError` is thrown because that imported package is not the expected package. By generalizing the duck typing exception to catch an `ImportError` and an `AttributeError`, we catch such name-collisions. It fits the idea and goal of duck typing. This PR is a single-line change",2023-05-25T10:15:39Z,2023-05-26T16:19:39Z,2023-05-26T16:19:35Z,2023-05-26T16:19:35Z,f45eb733b97e0a20f2981b6b20e8e8dcc815e529,,,0,d5948d8ff552d87b3822be45b8700bb8574ca60d,609a90169dfb037d6e524ce78423eaa859e72ca7,CONTRIBUTOR,"{""enabled_by"": {""login"": ""TomNicholas"", ""id"": 35968931, ""node_id"": ""MDQ6VXNlcjM1OTY4OTMx"", ""avatar_url"": ""https://avatars.githubusercontent.com/u/35968931?v=4"", ""gravatar_id"": """", ""url"": ""https://api.github.com/users/TomNicholas"", ""html_url"": ""https://github.com/TomNicholas"", ""followers_url"": ""https://api.github.com/users/TomNicholas/followers"", ""following_url"": ""https://api.github.com/users/TomNicholas/following{/other_user}"", ""gists_url"": ""https://api.github.com/users/TomNicholas/gists{/gist_id}"", ""starred_url"": ""https://api.github.com/users/TomNicholas/starred{/owner}{/repo}"", ""subscriptions_url"": ""https://api.github.com/users/TomNicholas/subscriptions"", ""organizations_url"": ""https://api.github.com/users/TomNicholas/orgs"", ""repos_url"": ""https://api.github.com/users/TomNicholas/repos"", ""events_url"": ""https://api.github.com/users/TomNicholas/events{/privacy}"", ""received_events_url"": ""https://api.github.com/users/TomNicholas/received_events"", ""type"": ""User"", ""site_admin"": false}, ""merge_method"": ""squash"", ""commit_title"": ""Changed duck typing exception to: (ImportError, AttributeError) (#7874)"", ""commit_message"": ""* Changed duck typing exception to (ImportError, AttributeError) to allow checking for missing attributes in imported packages\r\n\r\n* Updated whats-new.rst with the duck typing exception catch update of PR 7874.\r\n\r\n* Remove accidental url in whats-new\r\n\r\n* Issue number in whats-new.rst\r\n\r\n---------\r\n\r\nCo-authored-by: Tom Nicholas ""}",13221727,https://github.com/pydata/xarray/pull/7874,