It's hard for the user to know what's going on if they get an error from the bowels of some other library.  So we typically catch those errors and re-raise them (possibly of another type) with a descriptive message.