Skip to content

Look for a source file's address proof in all of its frames - #6407

Merged
canova merged 1 commit into
firefox-devtools:mainfrom
canova:push-umsoyzvmyvxs
Oct 21, 2026
Merged

canova merged 1 commit into
firefox-devtools:mainfrom
canova:push-umsoyzvmyvxs

Conversation

@canova

@canova canova commented Oct 21, 2026 •

Copy link
Copy Markdown
Member

Main | Deploy preview

I extracted this from #6404 so it's easier to land.

findAddressProofForFile took the first func with the file as its source, then that func's first frame, and gave up if that frame had no address. A file can still have other frames with addresses, which the symbolication API would accept just as well. Go through the frames instead and take the first one that has an address and a func with the file as its source.

Files that were fetchable but failed now load in the source view and in profiler-cli. The helpers will also be used to find the addresses for all files at once when sharing source code.

@canova
canova requested a review from mstange October 21, 2026 15:13
@codecov

codecov Bot commented Oct 21, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 92.85714% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 84.79%. Comparing base (741f242) to head (e0b5e5e).
⚠️ Report is 9 commits behind head on main.

Files with missing lines Patch % Lines
src/profile-logic/profile-data.ts 92.85% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #6407      +/-   ##
==========================================
+ Coverage   84.52%   84.79%   +0.26%     
==========================================
  Files         358      358              
  Lines       38837    38895      +58     
  Branches    11001    11023      +22     
==========================================
+ Hits        32828    32982     +154     
+ Misses       5574     5478      -96     
  Partials      435      435              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Comment thread src/profile-logic/profile-data.ts Outdated
findAddressProofForFile took the first func with the file as its source,
then that func's first frame, and gave up if that frame had no address.
A file can still have other frames with addresses, which the
symbolication API would accept just as well. Go through the frames
instead and take the first one that has an address and a func with the
file as its source.

Files that were fetchable but failed now load in the source view and in
profiler-cli. The helpers will also be used to find the addresses for
all files at once when sharing source code.
@canova
canova force-pushed the push-umsoyzvmyvxs branch from d62a093 to e0b5e5e Compare October 21, 2026 16:45
@canova
canova enabled auto-merge October 21, 2026 16:46
@canova
canova added this pull request to the merge queue Oct 21, 2026
Merged via the queue into firefox-devtools:main with commit 496a0f5 Oct 21, 2026
23 checks passed
@fatadel fatadel mentioned this pull request Oct 22, 2026
fatadel added a commit that referenced this pull request Oct 22, 2026
Changes:

[Markus Stange] Accept more fields from symbolication. (#6373)
[Markus Stange] Support index source maps. (#6399)
[fatadel] Make CompositorScreenshot markers schema-based (#6261)
[Markus Stange] Use inverted transforms in the tests for inverted call node paths. (#6393)
[fatadel] Expose and clear URL-imported call tree search in the CLI (#6387)
[Markus Stange] Make the scrollable editor view in the source view cover the full height of the panel, even if the source code is short. (#6405)
[Nazım Can Altınova] Silence profile loader logs in profile-querier-url tests (#6409)
[Nazım Can Altınova] Add `--js-sources-from-func-names` to `profiler-edit` (#6394)
[Nazım Can Altınova] Look for a source file's address proof in all of its frames (#6407)
[Markus Stange] Some preparations for a function list panel (#6401)
[fatadel] Use fractional seconds with adaptive precision for CLI marker timestamps (#6384)
[fatadel] 🔃 Sync: l10n -> main (October 22, 2026) (#6415)
[Markus Stange] Switch to TypeScript 7 (tsgo) and replace ESLint with oxlint (#6354)
[fatadel] Bump profiler-cli version to 0.12.0 (#6416)

And special thanks to our localizers:

el: Jim Spentzos
uk: Lobodzets, uya2521, Іhor Hordiichuk
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants