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/5351#issuecomment-1254586040,https://api.github.com/repos/pydata/xarray/issues/5351,1254586040,IC_kwDOAMm_X85Kx3a4,43316012,2022-09-22T06:29:03Z,2022-09-22T06:29:03Z,COLLABORATOR,"How about inheriting from FileNotFoundError, this Exception type would be the first guess of people.
And while at it, you could inherit from ValueError to keep it backwards compatible.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,895983112
https://github.com/pydata/xarray/pull/5351#issuecomment-1033655579,https://api.github.com/repos/pydata/xarray/issues/5351,1033655579,IC_kwDOAMm_X849nFUb,20118130,2022-02-09T11:23:19Z,2022-02-09T11:23:19Z,CONTRIBUTOR,"
Hi,

I see this was ready to merge, but I would like to still comment on the error message a bit.

IMO, it should be emphasized a bit more that the file might not exist, which I suspect happens much more often than a backend missing. I came across this PR after me and a colleague struggled with opening a netCDF file for twenty minutes, trying to install different backends and such, until we realized that there was a typo in the filename we were trying to open.

The error message could be something like:

> Error opening `{store_spec}`: The file does not exist or is not supported by any of xarray's currently installed IO backends `{installed}`. Consider explicitly ...

It's a small change, but in the current version there is a risk that a beginner who knows nothing about storage backends gets stuck on ""did not find a match in any of the installed backends"" and goes on a wild goose chase installing packages like we did.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,895983112
https://github.com/pydata/xarray/pull/5351#issuecomment-848898716,https://api.github.com/repos/pydata/xarray/issues/5351,848898716,MDEyOklzc3VlQ29tbWVudDg0ODg5ODcxNg==,1217238,2021-05-26T16:01:32Z,2021-05-26T16:01:32Z,MEMBER,@alexamici good points! I will revise this soon :),"{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,895983112
https://github.com/pydata/xarray/pull/5351#issuecomment-845842353,https://api.github.com/repos/pydata/xarray/issues/5351,845842353,MDEyOklzc3VlQ29tbWVudDg0NTg0MjM1Mw==,226037,2021-05-21T10:09:43Z,2021-05-21T10:10:27Z,MEMBER,"@shoyer I have two suggestions:

1. I would very much prefer to have the exception in the top level module in order to allow:
```python
import xarray as xr
try:
    ds = xr.open_dataset(...)
except xr.NoMatchingEngineError:
    ... 
```

2. I feel that the error message is very clear, but the name of the exception seems slightly confusing as it appears to imply that no engine can open the dataset when it is only that we couldn't autodetect which engine to use just inspecting at the `filename_or_obj`. I would prefer something along the lines of `EngineAutodetectionError`. But I don't feel too strong about it.
","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,895983112