Add a 'hexadecimal' marker schema field format#6197
Conversation
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
Codecov Report✅ All modified and coverable lines are covered by tests. 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. 🚀 New features to boost your workflow:
|
canova
left a comment
There was a problem hiding this comment.
Can you also bump the gecko profile version, similar to how we do it for the unique-string type here:
profiler/src/profile-logic/gecko-profile-versioning.ts
Lines 1449 to 1453 in faaf1a1
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?
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.
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
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