Don't suppress exception chaining for optional dependencies
I've just been [helping someone](https://stackoverflow.com/questions/69352179/package-streamlit-app-and-run-executable-on-windows) for whom the helpful error message appears to have obscured the real cause of the problem. Specifically, Jinja2 is present, but one of *its* dependencies is not. So the error message saying "Missing optional dependency: 'Jinja2'..." is rather confusing.

Automatic exception chaining is really great for things like this - you can provide a more descriptive error message while still having the original exception details available for inspection. I'd argue that it should only be disabled (`raise ... from None`) if you're absolutely sure that there will be no useful information in the original exception.
Thanks, :crossed_fingers: that test works. I'm editing from the web interface. :slightly_smiling_face:  close/reopen for CI thanks @takluyver very nice! Thanks all :slightly_smiling_face: 