Skip to content

Add a 'hexadecimal' marker schema field format#6197

Merged
fatadel merged 3 commits into
firefox-devtools:mainfrom
fatadel:issue-5998
Jul 20, 2026
Merged

Add a 'hexadecimal' marker schema field format#6197
fatadel merged 3 commits into
firefox-devtools:mainfrom
fatadel:issue-5998

Conversation

@fatadel

@fatadel fatadel commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Lets markers display integer values, such as bit flags, in hexadecimal with a "0x" prefix instead of forcing producers to pre-format them into strings.

Closes #5998

Lets markers display integer values, such as bit flags, in hexadecimal
with a "0x" prefix instead of forcing producers to pre-format them into
strings.

Closes firefox-devtools#5998
@fatadel
fatadel requested review from canova and mstange July 17, 2026 12:47
@codecov

codecov Bot commented Jul 17, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.63%. Comparing base (d4b6ff9) to head (5101c4a).
⚠️ Report is 3 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff            @@
##             main    #6197    +/-   ##
========================================
  Coverage   83.63%   83.63%            
========================================
  Files         346      346            
  Lines       37174    37179     +5     
  Branches    10318    10432   +114     
========================================
+ Hits        31090    31095     +5     
  Misses       5656     5656            
  Partials      428      428            

☔ 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.

@canova canova left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you also bump the gecko profile version, similar to how we do it for the unique-string type here:

// This version bump added a new marker schema format type, named "unique-string",
// which older frontends will not be able to display.
// No upgrade is needed, as older versions of firefox would not generate
// marker data with unique-string typed data, and no modification is needed in the
// frontend to display older formats.

This is to make sure that if we add a hexedecimal field in the Firefox side, we force an update and reload in the profiler frontend so the user will have the updated version. Otherwise older versions of Firefox Profiler won't be able to understand this new field type and throw an error.

Also, I couldn't find a filed bug about it in the Firefox side. Can you please file one in bugzilla?

Comment thread src/test/unit/marker-schema.test.ts Outdated
Comment thread src/utils/format-numbers.ts Outdated
Match C's "%x" for negative/high-bit inputs (e.g. -255 -> 0xffffff01).
Bump the Gecko profile version to 35 so older frontends, which can't
display the new field type, reload once Firefox starts emitting it.
@fatadel

fatadel commented Jul 20, 2026

Copy link
Copy Markdown
Contributor Author

Thanks for the review, @canova! I've addressed the issues now. Here is the backend-side bug I've created.

@fatadel
fatadel requested a review from canova July 20, 2026 11:19

@canova canova left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@fatadel
fatadel merged commit bc80b57 into firefox-devtools:main Jul 20, 2026
23 checks passed
@fatadel
fatadel deleted the issue-5998 branch July 20, 2026 14:27
@canova canova mentioned this pull request Jul 21, 2026
canova added a commit that referenced this pull request Jul 21, 2026
Changes:

[Sky Ning] Skip preview links for non-main PRs (#6161)
[spokodev] fix(gecko-upgrade): don't crash on a counter with empty
sample_groups (#6160)
[fatadel] Show counter values over time in profiler-cli (#6136)
[Markus Stange] Make profile-conversion snapshots more compact and
meaningful (#6152)
[Markus Stange] More typed arrays: sample + counter times, some
frametable columns (#6139)
[Nazım Can Altınova] Only render a marker url field as a link when the
whole value is a URL (#6163)
[fatadel] Show each counter's owning process in profiler-cli (#6164)
[Nazım Can Altınova] Document the pre-existing thread info and network
JSON schemas in the cli (#6171)
[Markus Stange] Copy column contents in
getRawSamplesTableBuilderFromExisting for consistency (#6168)
[Markus Stange] Convert eligible columns to typed arrays when outputting
from profiler-edit (#6167)
[Markus Stange] Remove unused samples.thread column (#6151)
[Markus Stange] Fixed botched merge which broke 'yarn ts' (#6174)
[Nazım Can Altınova] Add marker handles to `profiler-cli thread network`
(#6172)
[Markus Stange] Update json-slabs 0.3.0 → 0.4.0 (major) (#6176)
[Nazım Can Altınova] Surface network activity across profiler-cli
(#6175)
[Nazım Can Altınova] Add `profile meta` command to profiler-cli (#6177)
[Markus Stange] Allow raw marker table's `startTime` and `endTime`
columns to be Float64Array (#6169)
[nightcityblade] Fix light theme text selection colors (#6186)
[Nazım Can Altınova] Import source map URLs from Chrome DevTools traces
(#6190)
[Nazım Can Altınova] Rename yarn `build-profiler-cli` script to
`build-cli` (#6191)
[Nazım Can Altınova] Migrate husky to version 9 (#6201)
[Nazım Can Altınova] Fix horizontal overflow when the transform
navigator is long (#6199)
[fatadel] Add a 'hexadecimal' marker schema field format (#6197)
[Nazım Can Altınova] Bump source-map to 0.8.0 and remove the old type
workaround (#6202)
[Nazım Can Altınova] 🔃 Sync: l10n -> main (July 21, 2026) (#6209)


And special thanks to our localizers:

fr: parmegiani.thomas
fr: Théo Chevalier
sr: Марко Костић (Marko Kostić)
sv-SE: Luna Jernberg
tr: Grk
zh-CN: Ariel
zh-CN: Olvcpr423
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.

Add 'hexadecimal' to formatFromMarkerSchema

2 participants