The BC break introducing this method is deliberate, because its very simple to fix on any driver. The drivers are responsible because the errors depend on them, and not on the platform. Introducing another class just to handle the exceptions would serve the SRP more, however i think it is overkill in this case.