Closed Bug 1592969 Opened 5 years ago Closed 4 years ago

Captured stack trace doesn't show async separator anymore

Categories

(DevTools :: Console, defect, P2)

defect

Tracking

(firefox-esr68 wontfix, firefox70 wontfix, firefox71 wontfix, firefox72 verified)

VERIFIED FIXED
Firefox 72
Tracking Status
firefox-esr68 --- wontfix
firefox70 --- wontfix
firefox71 --- wontfix
firefox72 --- verified

People

(Reporter: Honza, Assigned: nchevobbe)

References

(Regression)

Details

(Keywords: dev-doc-complete, regression)

Attachments

(3 files)

Consider the following code:

function resolveAfter2Seconds() {
  return new Promise((resolve) => {
    setTimeout(() => {
      console.trace();
      resolve();
    }, 2000);
  });
}

async function waitForData() {
  await resolveAfter2Seconds();
}

STR:

  1. Load the scrip within a page
  2. Select the Console panel
  3. Execute waitForData() in the command line.

The Console panel should show stack trace composed from sync and async frames. Those should be separated by an async message explaining what async op happend.

See the attached screenshot showing how it was working before.

Honza

@Brian: do you know what could be the problem here? It was working before no?

Honza

Flags: needinfo?(bhackett1024)

Pushlog: URL

Mozregression points to 1500098.

Has Regression Range: --- → yes
Has STR: --- → yes

(In reply to Jan Honza Odvarko [:Honza] (always need-info? me) from comment #2)

@Brian: do you know what could be the problem here? It was working before no?

I don't, I'm not familiar with how the console deals with async stacks.

Flags: needinfo?(bhackett1024)

Nicolas, maybe you have an idea on how this regressed?

Flags: needinfo?(nchevobbe)

Looking at it right now.
Offender should be Bug 1390768, where we started using SmartTrace, which is based on the debugger Frames component, which does not handle async separator.

I'm looking at a case where the debugger should show such separator, would you have one? or maybe we don't want to show the separator in the call stack panel of the debugger?

Assignee: nobody → nchevobbe
Status: NEW → ASSIGNED
Flags: needinfo?(odvarko)
Flags: needinfo?(nchevobbe)
Flags: needinfo?(hkirschner)
Regressed by: 1390768

We also want to show async captured stacks in Debugger in bug 1142571, so landing something that adds the separator back for both panels would be great but could be also handled in the other bug as follow up for Debugger.

Flags: needinfo?(odvarko)
Flags: needinfo?(hkirschner)
Pushed by nchevobbe@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/d59c3470584a
Show async separator in Frame component. r=davidwalsh.
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 72
Regressions: 1595105

Hi Janet, it would be great to call this out on the console pages: https://developer.mozilla.org/en-US/docs/Tools/Web_Console/Console_messages

Flags: needinfo?(jswisher)
Flags: qe-verify+
Attached image 72.png

Verfiied the fix with with 72.0a1 (2019-11-08).
However on, 72.0b4 the returned information appears to still be incomplete.

Is the patch limited to the Nightly branch?

Flags: needinfo?(nchevobbe)

Cristian, it needs javascript.options.asyncstack pref to be set to true

Flags: needinfo?(nchevobbe)

Thank you for the info. It does indeed appear, plus some additional evaluations on Windows OS.
Marking the bug as verified based on the previous comment (re-verified with 72.0b4).

Status: RESOLVED → VERIFIED
Flags: qe-verify+

Doc changes are managed in https://github.com/mdn/sprints/issues/2468

Flags: needinfo?(jswisher)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: