Add support for passing exception reason in progress callback