felangel/bloc
refactor: stop losing the original stack trace from dart 2.16
Chiusa
#2995 aperta il 21 nov 2021
examplegood first issuerefactor
Metriche repository
- Star
- (12.452 stelle)
- Metriche merge PR
- (Merge medio 2g 22h) (5 PR mergiate in 30 g)
Descrizione
You must stop losing the original source stack trace like this (just for example):
it's big trouble, to read exceptions without source stacktraces, especially in crashlytics or sentry like logs
from dart 2.16 you must use Error.throwWithStackTrace like this:
//@dart=2.16
...
} on FirebaseAuthException catch (e, stackTrace) {
Error.throwWithStackTrace(
SignUpWithEmailAndPasswordFailure.fromCode(e.code),
stackTrace,
);
}
also, instead:
} catch (_) {
you must write:
} on Object {
or:
} on Object catch (error, stackTrace) {