I agree that the errors aren't great.
However, I disagree about having a single error enum with a large number of variants. I think we should fix errors in one go with a separate PR, otherwise it's duplicate work.
Originally posted by @evanlinjin in #976 (comment)