Skip to content

Commit f37398f

Browse files
authored
Deploy March 20, 2026 (#5900)
Changes: [Markus Stange] Start using const enum (#5879) [Markus Stange] Some performance improvements (#5878) [Nazım Can Altınova] Add startLine, startColumn, sourceMapURL and rename uuid to id in source table (#5882) [Markus Stange] Reduce repetition in profile compacting code (#5885) [Markus Stange] Some more activity graph drawing perf improvements (#5886) [fatadel] Make network markers in the network panel sticky on click (#5884) [Markus Stange] Improve SampleGraph and HeightGraph performance (#5897) [Nazım Can Altınova] 🔃 Sync: l10n -> main (March 20, 2026) (#5899) And special thanks to our localizers: be: Andrei Mukamolau el: Jim Spentzos en-GB: Paul es-CL: ravmn ia: Melo46 sv-SE: Andreas Pettersson tr: Nazım Can Altınova
2 parents 74b959c + 144ca4f commit f37398f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+2273
-1351
lines changed

docs-developer/CHANGELOG-formats.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,14 @@ Note that this is not an exhaustive list. Processed profile format upgraders can
66

77
## Processed profile format
88

9+
### Version 61
10+
11+
The `SourceTable` in `profile.shared.sources` was updated:
12+
13+
- The `uuid` field was renamed to `id`.
14+
- Two new fields `startLine` and `startColumn` were added (1-based). These describe the start position of the script within its resource, useful for inline scripts. If the source covers the entire file, use `(1, 1)`.
15+
- A new `sourceMapURL` field was added. Use `null` for entries with no source map URL.
16+
917
### Version 60
1018

1119
The following tables have moved into `profile.shared`: `stackTable`, `frameTable`, `funcTable`, `resourceTable`, `nativeSymbols`. They are no longer per-thread.
@@ -137,6 +145,14 @@ Older versions are not documented in this changelog but can be found in [process
137145

138146
## Gecko profile format
139147

148+
### Version 34
149+
150+
The `SourceTable` schema was updated:
151+
152+
- The `uuid` field was renamed to `id`.
153+
- Two new fields `startLine` and `startColumn` were added (1-based). If the source covers the entire file, use `(1, 1)`.
154+
- A new `sourceMapURL` field was added. It can be omitted if it is the last element in the row and there is no source map URL.
155+
140156
### Version 33
141157

142158
The `sources` field in the Gecko profile format is now non-optional. An upgrader was added that creates an empty `SourceTable` for profiles that don't have one.

locales/be/app.ftl

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -315,6 +315,7 @@ Home--additional-content-title = Загрузіць існуючыя профі
315315
Home--additional-content-content = Вы можаце <strong>перацягнуць</strong> файл профілю сюды, каб загрузіць яго, або:
316316
Home--compare-recordings-info = Вы таксама можаце параўнаць запісы. <a>Адкрыць інтэрфейс параўнання.</a>
317317
Home--your-recent-uploaded-recordings-title = Вашы нядаўна запампаваныя запісы
318+
Home--dark-mode-title = Цёмны рэжым
318319
# We replace the elements such as <perf> and <simpleperf> with links to the
319320
# documentation to use these tools.
320321
Home--load-files-from-other-tools2 =
@@ -569,6 +570,8 @@ MenuButtons--metaInfo--buffer-duration-seconds =
569570
MenuButtons--metaInfo--buffer-duration-unlimited = Неабмежавана
570571
MenuButtons--metaInfo--application = Праграма
571572
MenuButtons--metaInfo--name-and-version = Назва і версія:
573+
# The time between application startup and when the profiler was started
574+
MenuButtons--metaInfo--application-uptime2 = Час працы:
572575
MenuButtons--metaInfo--update-channel = Канал абнаўлення:
573576
MenuButtons--metaInfo--build-id = ID зборкі:
574577
MenuButtons--metaInfo--build-type = Тып зборкі:
@@ -881,6 +884,11 @@ TrackPower--tooltip-power-watt = { $value } Вт
881884
# $value (String) - the power value at this location
882885
TrackPower--tooltip-power-milliwatt = { $value } мВт
883886
.label = Магутнасць
887+
# This is used in the tooltip when the instant power value uses the microwatt unit.
888+
# Variables:
889+
# $value (String) - the power value at this location
890+
TrackPower--tooltip-power-microwatt = { $value } мкВт
891+
.label = Энэргія
884892
# This is used in the tooltip when the power value uses the kilowatt unit.
885893
# Variables:
886894
# $value (String) - the power value at this location
@@ -1175,6 +1183,17 @@ AssemblyView--show-button =
11751183
# Assembly refers to the low-level programming language.
11761184
AssemblyView--hide-button =
11771185
.title = Схаваць прагляд асэмблера
1186+
# The "◀" button above the assembly view.
1187+
AssemblyView--prev-button =
1188+
.title = Назад
1189+
# The "▶" button above the assembly view.
1190+
AssemblyView--next-button =
1191+
.title = Далей
1192+
# The label showing the current position and total count above the assembly view.
1193+
# Variables:
1194+
# $current (Number) - The current position (1-indexed).
1195+
# $total (Number) - The total count.
1196+
AssemblyView--position-label = { $current } з { $total }
11781197
11791198
## UploadedRecordingsHome
11801199
## This is the page that displays all the profiles that user has uploaded.

locales/el/app.ftl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -348,6 +348,9 @@ Home--record-instructions =
348348
Για να αρχίσει η καταγραφή προφίλ, κάντε κλικ στο αντίστοιχο κουμπί ή χρησιμοποιήστε
349349
τις συντομεύσεις πληκτρολογίου. Το εικονίδιο είναι μπλε κατά την καταγραφή ενός προφίλ.
350350
Πατήστε το <kbd>Καταγραφή</kbd> για να φορτώσετε τα δεδομένα στο profiler.firefox.com.
351+
Home--instructions-content2 =
352+
Η καταγραφή των προφίλ επιδόσεων απαιτεί το <a>{ -firefox-brand-name } για υπολογιστές</a>.
353+
Ωστόσο, τα υπάρχοντα προφίλ μπορούν να προβληθούν σε όλα τα σύγχρονα προγράμματα περιήγησης.
351354
Home--fenix-instructions-directly =
352355
Μπορείτε να καταγράψετε προφίλ για το { -firefox-android-brand-name } απευθείας σε αυτήν τη συσκευή. Για
353356
περισσότερες πληροφορίες, διαβάστε το <a>Καταγραφή προφίλ του { -firefox-android-brand-name } απευθείας στη συσκευή</a>.

locales/en-GB/app.ftl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,9 @@ Home--record-instructions =
352352
To start profiling, click on the profiling button, or use the
353353
keyboard shortcuts. The icon is blue when a profile is recording.
354354
Hit <kbd>Capture</kbd> to load the data into profiler.firefox.com.
355+
Home--instructions-content2 =
356+
Recording performance profiles requires <a>{ -firefox-brand-name } for desktop</a>.
357+
However, existing profiles can be viewed in any modern browser.
355358
Home--fenix-instructions-directly =
356359
{ -firefox-android-brand-name } can be profiled directly on this device. For
357360
more information, read <a>Profiling { -firefox-android-brand-name } directly on device</a>.

locales/es-CL/app.ftl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -284,6 +284,9 @@ Home--enable-button-unavailable =
284284
# This message can be seen on https://main--perf-html.netlify.app/ .
285285
Home--web-channel-unavailable = Esta instancia del perfilador no pudo conectarse a WebChannel. Esto usualmente significa que está ejecutándose en un servidor diferente del especificado en la preferencia <code>devtools.performance.recording.ui-base-url</code>. Si quieres capturar nuevos perfiles con esta instancia, y otorgarle control programático del botón del menú del perfilador, puedes ir a <code>about:config</code> y cambiar la preferencia.
286286
Home--record-instructions = Para empezar a perfilar, haz clic en el botón de perfilado o utiliza los atajos del teclado. El icono se torna azul cuando se está grabando un perfil. Pulsa <kbd>Capturar</kbd> para cargar los datos en profiler.firefox.com.
287+
Home--instructions-content2 =
288+
Registrar perfiles de rendimiento requiere de <a>{ -firefox-brand-name } para escritorio</a>.
289+
Sin embargo, los perfiles existentes pueden ser vistos en cualquier navegador moderno.
287290
Home--fenix-instructions-directly = { -firefox-android-brand-name } puede ser perfilado directamente en este dispositivo. Para más información, consulta <a>Perfilar { -firefox-android-brand-name } directamente en el dispositivo</a>.
288291
Home--fenix-instructions-remotely = También puedes perfilar { -firefox-android-brand-name } de forma remota desde { -firefox-brand-name } para escritorio. Para más información, consulta esta documentación: <a>Perfilar { -firefox-android-brand-name } de forma remota</a>.
289292
Home--record-instructions-start-stop = Detener e iniciar perfilado

locales/ia/app.ftl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -344,6 +344,9 @@ Home--record-instructions =
344344
Pro comenciar le profilage, clicca sur le button de profilage o usa le
345345
claves de accesso directe. Le icone es blau quando un profilo se registra.
346346
Pulsa <kbd>Capturar</kbd> pro cargar le datos in profiler.firefox.com.
347+
Home--instructions-content2 =
348+
Registrar profilos de prestation require <a>{ -firefox-brand-name } pro scriptorio</a>.
349+
Totevia, le profilos existente pote esser vidite in qualcunque navigator moderne.
347350
Home--fenix-instructions-directly =
348351
{ -firefox-android-brand-name } pote esser profilate directemente sur iste
349352
apparato. Pro altere informationes, lege <a>Profilar { -firefox-android-brand-name }

locales/sv-SE/app.ftl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -347,6 +347,9 @@ Home--record-instructions =
347347
För att starta profilering, klicka på profileringsknappen eller använd
348348
kortkommandona. Ikonen är blå när en profil spelas in. Tryck på
349349
<kbd>Fånga</kbd> för att ladda data till profiler.firefox.com.
350+
Home--instructions-content2 =
351+
Inspelning av prestandaprofiler kräver <a>{ -firefox-brand-name } för datorer</a>.
352+
Befintliga profiler kan dock visas i vilken modern webbläsare som helst.
350353
Home--fenix-instructions-directly =
351354
{ -firefox-android-brand-name } kan profileras direkt på den här enheten. För
352355
mer information, läs <a>Profilering av { -firefox-android-brand-name } direkt på enheten</a>.

locales/tr/app.ftl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,9 @@ Home--record-instructions =
265265
Profillemeyi başlatmak için profilleme düğmesine tıklayın veya
266266
klavye kısayollarını kullanın. Profil kaydedilirken simge maviye dönüşür.
267267
Verileri profiler.firefox.com’a yüklemek için <kbd>Kaydet</kbd>’e tıklayın.
268+
Home--instructions-content2 =
269+
Performans profilleri yalnızca <a>{ -firefox-brand-name }’un masaüstü sürümü</a> ile kaydedilebilir.
270+
Ancak mevcut profiller herhangi bir modern tarayıcıda görüntülenebilir.
268271
Home--record-instructions-start-stop = Profillemeyi durdur ve başlat
269272
Home--record-instructions-capture-load = Profili yakala ve yükle
270273
Home--profiler-motto = Performans profili kaydedin. Analiz edin. Paylaşın. Web’i daha hızlı hale getirin.

package.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -61,17 +61,17 @@
6161
},
6262
"dependencies": {
6363
"@codemirror/lang-cpp": "^6.0.3",
64-
"@codemirror/lang-javascript": "^6.2.4",
64+
"@codemirror/lang-javascript": "^6.2.5",
6565
"@codemirror/lang-rust": "^6.0.2",
66-
"@codemirror/language": "^6.12.1",
66+
"@codemirror/language": "^6.12.2",
6767
"@codemirror/state": "^6.5.4",
6868
"@codemirror/view": "^6.39.14",
6969
"@firefox-devtools/react-contextmenu": "^5.2.3",
7070
"@fluent/bundle": "^0.19.1",
7171
"@fluent/langneg": "^0.7.0",
7272
"@fluent/react": "^0.15.2",
7373
"@lezer/highlight": "^1.2.3",
74-
"@tgwf/co2": "^0.17.0",
74+
"@tgwf/co2": "^0.18.0",
7575
"array-move": "^3.0.1",
7676
"array-range": "^1.0.1",
7777
"clamp": "^1.0.1",
@@ -96,7 +96,7 @@
9696
"query-string": "^9.3.1",
9797
"react": "^18.3.1",
9898
"react-dom": "^18.3.1",
99-
"react-intersection-observer": "^10.0.2",
99+
"react-intersection-observer": "^10.0.3",
100100
"react-redux": "^9.2.0",
101101
"react-splitter-layout": "^4.0.0",
102102
"react-transition-group": "^4.4.5",
@@ -118,15 +118,15 @@
118118
"@babel/preset-env": "^7.29.0",
119119
"@babel/preset-react": "^7.28.5",
120120
"@babel/preset-typescript": "^7.28.5",
121-
"@eslint/js": "^9.39.3",
121+
"@eslint/js": "^9.39.4",
122122
"@testing-library/dom": "^10.4.1",
123123
"@testing-library/jest-dom": "^6.9.1",
124124
"@testing-library/react": "^16.3.2",
125125
"@types/clamp": "^1.0.3",
126126
"@types/common-tags": "^1.8.4",
127127
"@types/jest": "^30.0.0",
128128
"@types/minimist": "^1.2.5",
129-
"@types/node": "^22.19.11",
129+
"@types/node": "^22.19.15",
130130
"@types/query-string": "^6.3.0",
131131
"@types/react": "^18.3.28",
132132
"@types/react-dom": "^18.3.1",
@@ -147,18 +147,18 @@
147147
"esbuild": "^0.27.0",
148148
"esbuild-plugin-copy": "^2.1.1",
149149
"esbuild-plugin-wasm": "^1.1.0",
150-
"eslint": "^9.39.3",
150+
"eslint": "^9.39.4",
151151
"eslint-config-prettier": "^10.1.8",
152152
"eslint-import-resolver-alias": "^1.1.2",
153153
"eslint-plugin-import": "^2.32.0",
154-
"eslint-plugin-jest": "^29.13.0",
154+
"eslint-plugin-jest": "^29.15.0",
155155
"eslint-plugin-jest-dom": "^5.5.0",
156156
"eslint-plugin-jest-formatting": "^3.1.0",
157157
"eslint-plugin-react": "^7.37.5",
158158
"eslint-plugin-testing-library": "^7.16.0",
159159
"fake-indexeddb": "^6.2.5",
160160
"fetch-mock": "^12.6.0",
161-
"globals": "^17.3.0",
161+
"globals": "^17.4.0",
162162
"husky": "^4.3.8",
163163
"jest": "^30.2.0",
164164
"jest-environment-jsdom": "^30.2.0",
@@ -169,7 +169,7 @@
169169
"npm-run-all2": "^8.0.4",
170170
"open": "^11.0.0",
171171
"patch-package": "^8.0.1",
172-
"postcss": "^8.5.6",
172+
"postcss": "^8.5.8",
173173
"postinstall-postinstall": "^2.1.0",
174174
"prettier": "^3.8.1",
175175
"rimraf": "^6.1.3",

src/app-logic/constants.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ import type { MarkerPhase } from 'firefox-profiler/types';
77
// The current version of the Gecko profile format.
88
// Please don't forget to update the gecko profile format changelog in
99
// `docs-developer/CHANGELOG-formats.md`.
10-
export const GECKO_PROFILE_VERSION = 33;
10+
export const GECKO_PROFILE_VERSION = 34;
1111

1212
// The current version of the "processed" profile format.
1313
// Please don't forget to update the processed profile format changelog in
1414
// `docs-developer/CHANGELOG-formats.md`.
15-
export const PROCESSED_PROFILE_VERSION = 60;
15+
export const PROCESSED_PROFILE_VERSION = 61;
1616

1717
// The following are the margin sizes for the left and right of the timeline. Independent
1818
// components need to share these values.

0 commit comments

Comments
 (0)