-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Regression in StackTrace within Chain.capture
from package:stack_trace
.
#46326
Comments
Thanks Nate. I'll have a look. |
Bisects to e90967f which made One thing I notice is that it seems to be a behavioural change specific to Future<void> callee() async { ...; throw 'callee throws!'; }
await Chain.capture(() async { ... }, onError: (e, sc) { print("$e:\n$sc"); }); produces:
which I believe is what you were expecting. I'll dive into where that difference comes from and what the expected output of |
@natebosch If you use Chain.capture(), could you then also use Chain.current() instead of |
I suspect we could fix it that way. I haven't dug to find how challenging it might be, but it's the first option I describe in dart-lang/tools#1851 |
Hello here, any progress on this? |
I think this is fixed by dart-archive/stack_trace@d3e4c4d and a52f2b9 |
Somewhere between
2.12.0-13.0.dev
and2.12.0-29.0.dev
there was a regression inStackTrace.current
when used within the zone for aChain.capture
call.Reproduction is using
package:stack_trace
.Running with
2.12.0-13.0.dev
and earlier SDKs outputs a meaningful stacktrace:Running with
2.12.0-29.dev
and later SDKs outputs instead:The closure it references should be this one:
https://github.com/dart-lang/stacK_trace/blob/4755bcf8ab0258212f4767218fdeb8429f3e550e/lib/src/stack_zone_specification.dart#L126
cc @cskau-g
The text was updated successfully, but these errors were encountered: