profile-viewer 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. checksums.yaml +7 -0
  2. data/dist/022efb839d22fa54a716.svg +28 -0
  3. data/dist/0c510afd6169a0a83f97.svg +14 -0
  4. data/dist/0d5cf282780cd1a5ec64.svg +8 -0
  5. data/dist/119.cc58ce313e67f80f50f3.bundle.js +2 -0
  6. data/dist/119.cc58ce313e67f80f50f3.bundle.js.map +1 -0
  7. data/dist/11c5dca6d97c9e10e5b7.svg +9 -0
  8. data/dist/131.c21d348572deab4ece66.bundle.js +2 -0
  9. data/dist/131.c21d348572deab4ece66.bundle.js.map +1 -0
  10. data/dist/18e7fdd45099134897d2.svg +8 -0
  11. data/dist/2d4b477bc424d35a0245.svg +25 -0
  12. data/dist/2e43ad991eb141fc017f.svg +9 -0
  13. data/dist/2ea5b50b7361e6de561c.svg +11 -0
  14. data/dist/308.4d236ce7e6451807cb54.bundle.js +2 -0
  15. data/dist/308.4d236ce7e6451807cb54.bundle.js.map +1 -0
  16. data/dist/31fe933f3a12be1aa7f3.svg +4 -0
  17. data/dist/390aa266f451c1005f61.svg +10 -0
  18. data/dist/3c3fda7c08bcc9544c64.svg +6 -0
  19. data/dist/4260d5db8309a6f83637.svg +10 -0
  20. data/dist/4536fd0738f36c3463bc.svg +1 -0
  21. data/dist/490065792b7e903c9f3e.svg +6 -0
  22. data/dist/49da6a2153f62ef73d17.svg +7 -0
  23. data/dist/4d26f0e38c22eedde178.jpg +0 -0
  24. data/dist/4ecb077d8715f89c0f87.svg +13 -0
  25. data/dist/524e896f487119a0b832.svg +13 -0
  26. data/dist/58c5415e952fb6dddd6b.png +0 -0
  27. data/dist/6bd0589a27236471fdab.svg +4 -0
  28. data/dist/6c6b49af3a86dfdd44e6.svg +4 -0
  29. data/dist/6c8063be3afa1d95c902.svg +3 -0
  30. data/dist/71730566d6c47ffdc965.svg +12 -0
  31. data/dist/7273fadce89da05535e5.svg +4 -0
  32. data/dist/731673c749e57bf6f544.svg +13 -0
  33. data/dist/76e5b29823c9fd62d90d.svg +3 -0
  34. data/dist/7853c71223701f30d495.svg +19 -0
  35. data/dist/79856ce399cb305fafb8.svg +19 -0
  36. data/dist/79eaad4fc0c398100809.svg +6 -0
  37. data/dist/7c7ac3c7df370340cfd2.svg +7 -0
  38. data/dist/7e3ac9afb25cfe809520.svg +1 -0
  39. data/dist/81762b0b1aacd3686a6b.svg +12 -0
  40. data/dist/86e81402ef76d28ff55f.svg +15 -0
  41. data/dist/8aae7b979b04407f71a4.svg +3 -0
  42. data/dist/8b8b909e42722172d494.svg +7 -0
  43. data/dist/8dab2a6ba757bcc6e9a5.svg +3 -0
  44. data/dist/9.071a712ea648c8b30416.bundle.js +2 -0
  45. data/dist/9.071a712ea648c8b30416.bundle.js.map +1 -0
  46. data/dist/9103e94f1d34c15d44be.svg +6 -0
  47. data/dist/914.b9bc213d93173ce6b0cb.bundle.js +2 -0
  48. data/dist/914.b9bc213d93173ce6b0cb.bundle.js.map +1 -0
  49. data/dist/9a7bd6ec36312a2baa7e.svg +1 -0
  50. data/dist/9d858d1a3ab57f8ee2e1.svg +4 -0
  51. data/dist/9eb1fab2684d1e1f0e26.svg +13 -0
  52. data/dist/_headers +37 -0
  53. data/dist/_redirects +2 -0
  54. data/dist/a3196e840709b18a3119.svg +1 -0
  55. data/dist/aa867391c311267af5a9.svg +4 -0
  56. data/dist/acb8393f3fb9c59b15c9.svg +20 -0
  57. data/dist/ad13da76642d8099fe70.module.wasm +0 -0
  58. data/dist/b45b29da558efa211628.jpg +0 -0
  59. data/dist/b5698a02eef37ce29146.svg +10 -0
  60. data/dist/b805360fcc91834556c9.svg +4 -0
  61. data/dist/before-load.js +1 -0
  62. data/dist/c3432220f657733ed05f.svg +10 -0
  63. data/dist/ca2af827049e9039ef9c.svg +8 -0
  64. data/dist/contribute.json +37 -0
  65. data/dist/d09537c705fb0878eb63.svg +4 -0
  66. data/dist/d9c199b3e3e469cc5713.svg +10 -0
  67. data/dist/da1f21c60c7217745dd8.svg +1 -0
  68. data/dist/docs/README.md +7 -0
  69. data/dist/docs/_navbar.md +3 -0
  70. data/dist/docs/_sidebar.md +27 -0
  71. data/dist/docs/advanced-topics.md +9 -0
  72. data/dist/docs/bunny-2.md +78 -0
  73. data/dist/docs/bunny.md +281 -0
  74. data/dist/docs/case-studies.md +5 -0
  75. data/dist/docs/css/style-overrides.css +160 -0
  76. data/dist/docs/css/vue_v4.12.2.min.css +858 -0
  77. data/dist/docs/gitpod.md +39 -0
  78. data/dist/docs/guide-android-profiling.md +46 -0
  79. data/dist/docs/guide-filtering-call-trees.md +87 -0
  80. data/dist/docs/guide-getting-started.md +115 -0
  81. data/dist/docs/guide-perf-profiling.md +76 -0
  82. data/dist/docs/guide-profiler-fundamentals.md +33 -0
  83. data/dist/docs/guide-profiling-android-directly-on-device.md +34 -0
  84. data/dist/docs/guide-profiling-firefox-android.md +7 -0
  85. data/dist/docs/guide-remote-profiling.md +90 -0
  86. data/dist/docs/guide-removing-profiler.md +4 -0
  87. data/dist/docs/guide-stack-samples-and-call-trees.md +57 -0
  88. data/dist/docs/guide-startup-shutdown.md +108 -0
  89. data/dist/docs/guide-ui-tour-panels.md +95 -0
  90. data/dist/docs/guide-ui-tour-timeline.md +76 -0
  91. data/dist/docs/images/about-debugging-remote-profiling-panel.png +0 -0
  92. data/dist/docs/images/about-debugging-remote.png +0 -0
  93. data/dist/docs/images/about-url.png +0 -0
  94. data/dist/docs/images/allocation-calltree-2019-12-11.png +0 -0
  95. data/dist/docs/images/allocation-feature.png +0 -0
  96. data/dist/docs/images/allocation-flame-graph-2019-12-11.png +0 -0
  97. data/dist/docs/images/allocation-js.png +0 -0
  98. data/dist/docs/images/allocation-track.png +0 -0
  99. data/dist/docs/images/bunny-analysis/bunny.png +0 -0
  100. data/dist/docs/images/bunny-analysis/clone-flame-content.png +0 -0
  101. data/dist/docs/images/bunny-analysis/clone-flame-worker.png +0 -0
  102. data/dist/docs/images/bunny-analysis/clone-thread-list.png +0 -0
  103. data/dist/docs/images/bunny-analysis/fillstyle-thread-list-measure.png +0 -0
  104. data/dist/docs/images/bunny-analysis/fillstyle-thread-list.png +0 -0
  105. data/dist/docs/images/bunny-analysis/flame-graph-content.png +0 -0
  106. data/dist/docs/images/bunny-analysis/flame-graph-set-fillstyle.png +0 -0
  107. data/dist/docs/images/bunny-analysis/flame-graph-worker.png +0 -0
  108. data/dist/docs/images/bunny-analysis/focus-subtree.png +0 -0
  109. data/dist/docs/images/bunny-analysis/threads-list-measure.png +0 -0
  110. data/dist/docs/images/bunny-analysis/threads-list.png +0 -0
  111. data/dist/docs/images/bunny-analysis/threads-parallel.png +0 -0
  112. data/dist/docs/images/bunny-analysis/threads-sync.png +0 -0
  113. data/dist/docs/images/bunny-analysis/threads-work-parallel.png +0 -0
  114. data/dist/docs/images/bunny-analysis/threads-work-sync.png +0 -0
  115. data/dist/docs/images/call-tree-running-time.svg +82 -0
  116. data/dist/docs/images/call-tree-self-time.svg +82 -0
  117. data/dist/docs/images/call-tree.svg +131 -0
  118. data/dist/docs/images/favicon.svg +4 -0
  119. data/dist/docs/images/filter-search.svg +78 -0
  120. data/dist/docs/images/getting-started-delete-profile.png +0 -0
  121. data/dist/docs/images/getting-started-devtools-panel.png +0 -0
  122. data/dist/docs/images/getting-started-enable-popup.png +0 -0
  123. data/dist/docs/images/getting-started-list-uploaded-profiles.png +0 -0
  124. data/dist/docs/images/getting-started-naming-profiles.png +0 -0
  125. data/dist/docs/images/getting-started-popup.png +0 -0
  126. data/dist/docs/images/getting-started-upload-permalink.webm +0 -0
  127. data/dist/docs/images/getting-started-upload.png +0 -0
  128. data/dist/docs/images/getting-started-use-icon.webm +0 -0
  129. data/dist/docs/images/getting-started-use-popup.webm +0 -0
  130. data/dist/docs/images/implementation-2022-06-16.png +0 -0
  131. data/dist/docs/images/implementation-filter.svg +101 -0
  132. data/dist/docs/images/interval-2020-05.png +0 -0
  133. data/dist/docs/images/invert-2022-06-16.png +0 -0
  134. data/dist/docs/images/invert-after.svg +161 -0
  135. data/dist/docs/images/invert-before.svg +144 -0
  136. data/dist/docs/images/invert-call-tree.svg +113 -0
  137. data/dist/docs/images/ipc-messages-feature.png +0 -0
  138. data/dist/docs/images/ipc-messages-io-threads.png +0 -0
  139. data/dist/docs/images/ipc-messages-popup.png +0 -0
  140. data/dist/docs/images/popup.png +0 -0
  141. data/dist/docs/images/qr-gve-nightly.gif +0 -0
  142. data/dist/docs/images/qr-reference-browser-nightly.gif +0 -0
  143. data/dist/docs/images/samples.svg +116 -0
  144. data/dist/docs/images/screenshot-2022-04-25.png +0 -0
  145. data/dist/docs/images/search-2022-06-16.png +0 -0
  146. data/dist/docs/images/secret-menu-toast.png +0 -0
  147. data/dist/docs/images/settings-menu.png +0 -0
  148. data/dist/docs/images/simple-call-tree-self-time.svg +41 -0
  149. data/dist/docs/images/simple-call-tree.svg +41 -0
  150. data/dist/docs/images/simple-stacks-self-time.svg +96 -0
  151. data/dist/docs/images/simple-stacks.svg +118 -0
  152. data/dist/docs/images/start-profiler.png +0 -0
  153. data/dist/docs/images/transform-collapse-direct-recursion.svg +47 -0
  154. data/dist/docs/images/transform-collapse-resource.svg +83 -0
  155. data/dist/docs/images/transform-focus-function.svg +81 -0
  156. data/dist/docs/images/transform-focus-node.svg +86 -0
  157. data/dist/docs/images/transform-merge-function.svg +95 -0
  158. data/dist/docs/images/transform-merge-node.svg +96 -0
  159. data/dist/docs/images/transforms-2022-06-16.png +0 -0
  160. data/dist/docs/images/ui-tour-activity-graph.png +0 -0
  161. data/dist/docs/images/ui-tour-panels-call-tree.png +0 -0
  162. data/dist/docs/images/ui-tour-panels-flame-graph.png +0 -0
  163. data/dist/docs/images/ui-tour-panels-marker-chart.png +0 -0
  164. data/dist/docs/images/ui-tour-panels-network-chart.png +0 -0
  165. data/dist/docs/images/ui-tour-panels-stack-chart.png +0 -0
  166. data/dist/docs/images/ui-tour-panels.png +0 -0
  167. data/dist/docs/images/ui-tour-ranges.png +0 -0
  168. data/dist/docs/images/ui-tour-selection.webm +0 -0
  169. data/dist/docs/images/ui-tour-timeline-markers.png +0 -0
  170. data/dist/docs/images/ui-tour-timeline-memory.png +0 -0
  171. data/dist/docs/images/ui-tour-timeline-network.png +0 -0
  172. data/dist/docs/images/ui-tour-timeline-screenshots.png +0 -0
  173. data/dist/docs/images/ui-tour-timeline-track-selection.png +0 -0
  174. data/dist/docs/images/ui-tour-timeline.png +0 -0
  175. data/dist/docs/index.html +21 -0
  176. data/dist/docs/ipc-messages.md +44 -0
  177. data/dist/docs/js/docsify_v4.12.2+.min.js +1 -0
  178. data/dist/docs/js/ga_v4.12.2.min.js +1 -0
  179. data/dist/docs/js/init.js +1 -0
  180. data/dist/docs/js/search_v4.12.2.min.js +1 -0
  181. data/dist/docs/memory-allocations.md +70 -0
  182. data/dist/docs/videos-call-tree-1.md +5 -0
  183. data/dist/docs/videos-call-tree-2.md +5 -0
  184. data/dist/docs/videos-call-tree-3.md +5 -0
  185. data/dist/docs/videos-intro.md +7 -0
  186. data/dist/docs/videos-samples-markers.md +5 -0
  187. data/dist/docs/videos-threads.md +5 -0
  188. data/dist/docs/videos.md +32 -0
  189. data/dist/e4ed50222911c5af9a32.svg +12 -0
  190. data/dist/e70722c0fe0ac3d4227b.svg +10 -0
  191. data/dist/f0599659345cf76717cd.svg +4 -0
  192. data/dist/f8e25c2ebeb0a0725a9e.svg +12 -0
  193. data/dist/favicon.png +0 -0
  194. data/dist/fcb532a05dd4b09c2d08.svg +10 -0
  195. data/dist/fd040fb5f4e7a515bb3c.svg +15 -0
  196. data/dist/index.html +1 -0
  197. data/dist/locales/README.md +26 -0
  198. data/dist/locales/be/app.ftl +1003 -0
  199. data/dist/locales/de/app.ftl +994 -0
  200. data/dist/locales/el/app.ftl +1013 -0
  201. data/dist/locales/en-GB/app.ftl +1018 -0
  202. data/dist/locales/en-US/app.ftl +1125 -0
  203. data/dist/locales/es-CL/app.ftl +948 -0
  204. data/dist/locales/fr/app.ftl +942 -0
  205. data/dist/locales/fy-NL/app.ftl +1018 -0
  206. data/dist/locales/ia/app.ftl +1007 -0
  207. data/dist/locales/it/app.ftl +936 -0
  208. data/dist/locales/kab/app.ftl +557 -0
  209. data/dist/locales/nl/app.ftl +1018 -0
  210. data/dist/locales/pt-BR/app.ftl +947 -0
  211. data/dist/locales/ru/app.ftl +1032 -0
  212. data/dist/locales/sv-SE/app.ftl +1013 -0
  213. data/dist/locales/uk/app.ftl +1019 -0
  214. data/dist/locales/zh-CN/app.ftl +931 -0
  215. data/dist/locales/zh-TW/app.ftl +930 -0
  216. data/dist/main.8208fda2d35ddbe38d55.bundle.js +199 -0
  217. data/dist/main.8208fda2d35ddbe38d55.bundle.js.LICENSE.txt +92 -0
  218. data/dist/main.8208fda2d35ddbe38d55.bundle.js.map +1 -0
  219. data/dist/photon/31fe933f3a12be1aa7f3.svg +4 -0
  220. data/dist/photon/49da6a2153f62ef73d17.svg +7 -0
  221. data/dist/photon/6bd0589a27236471fdab.svg +4 -0
  222. data/dist/photon/6c8063be3afa1d95c902.svg +3 -0
  223. data/dist/photon/76e5b29823c9fd62d90d.svg +3 -0
  224. data/dist/photon/8aae7b979b04407f71a4.svg +3 -0
  225. data/dist/photon/8dab2a6ba757bcc6e9a5.svg +3 -0
  226. data/dist/photon/9103e94f1d34c15d44be.svg +6 -0
  227. data/dist/photon/aa867391c311267af5a9.svg +4 -0
  228. data/dist/photon/f0599659345cf76717cd.svg +4 -0
  229. data/dist/photon/index.html +214 -0
  230. data/dist/photon/main.8c8260452e7439ec6df9.bundle.js +2 -0
  231. data/dist/photon/main.8c8260452e7439ec6df9.bundle.js.map +1 -0
  232. data/dist/service-worker-compat.js +1 -0
  233. data/dist/sw.js +2 -0
  234. data/dist/sw.js.map +1 -0
  235. data/dist/workbox-27b29e6f.js +2 -0
  236. data/dist/workbox-27b29e6f.js.map +1 -0
  237. data/dist/zee-worker.js +1 -0
  238. data/ruby-bin/profile-viewer +87 -0
  239. metadata +281 -0
@@ -0,0 +1,1018 @@
1
+ # This Source Code Form is subject to the terms of the Mozilla Public
2
+ # License, v. 2.0. If a copy of the MPL was not distributed with this
3
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
4
+
5
+
6
+ ### Localization for the App UI of Profiler
7
+
8
+
9
+ # Naming convention for l10n IDs: "ComponentName--string-summary".
10
+ # This allows us to minimize the risk of conflicting IDs throughout the app.
11
+ # Please sort alphabetically by (component name), and
12
+ # keep strings in order of appearance.
13
+
14
+
15
+ ## The following feature names must be treated as a brand. They cannot be translated.
16
+
17
+ -firefox-brand-name = Firefox
18
+ -firefox-android-brand-name = Firefox for Android
19
+ -profiler-brand-name = Firefox Profiler
20
+ -profiler-brand-short-name = Profiler
21
+ -firefox-nightly-brand-name = Firefox Nightly
22
+
23
+ ## AppHeader
24
+ ## This is used at the top of the homepage and other content pages.
25
+
26
+ AppHeader--app-header = <header>{ -profiler-brand-name }</header> — <subheader>Web app for { -firefox-brand-name } performance analysis</subheader>
27
+ AppHeader--github-icon =
28
+ .title = Go to our Git repository (this opens in a new window)
29
+
30
+ ## AppViewRouter
31
+ ## This is used for displaying errors when loading the application.
32
+
33
+ AppViewRouter--error-unpublished = Couldn’t retrieve the profile from { -firefox-brand-name }.
34
+ AppViewRouter--error-from-file = Couldn’t read the file or parse the profile in it.
35
+ AppViewRouter--error-local = Not implemented yet.
36
+ AppViewRouter--error-public = Could not download the profile.
37
+ AppViewRouter--error-from-url = Could not download the profile.
38
+ AppViewRouter--error-compare = Could not retrieve the profiles.
39
+ # This error message is displayed when a Safari-specific error state is encountered.
40
+ # Importing profiles from URLs such as http://127.0.0.1:someport/ is not possible in Safari.
41
+ # https://profiler.firefox.com/from-url/http%3A%2F%2F127.0.0.1%3A3000%2Fprofile.json/
42
+ AppViewRouter--error-from-localhost-url-safari =
43
+ Due to a <a>specific limitation in Safari</a>, { -profiler-brand-name } is unable
44
+ to import profiles from the local machine in this browser. Please open
45
+ this page in { -firefox-brand-name } or Chrome instead.
46
+ .title = Safari cannot import local profiles
47
+ AppViewRouter--route-not-found--home =
48
+ .specialMessage = The URL you tried to reach was not recognised.
49
+
50
+ ## CallNodeContextMenu
51
+ ## This is used as a context menu for the Call Tree, Flame Graph and Stack Chart
52
+ ## panels.
53
+
54
+ # Variables:
55
+ # $fileName (String) - Name of the file to open.
56
+ CallNodeContextMenu--show-file = Show <strong>{ $fileName }</strong>
57
+ CallNodeContextMenu--transform-merge-function = Merge function
58
+ .title =
59
+ Merging a function removes it from the profile, and assigns its time to the
60
+ function that called it. This happens anywhere the function was called in
61
+ the tree.
62
+ CallNodeContextMenu--transform-merge-call-node = Merge node only
63
+ .title =
64
+ Merging a node removes it from the profile, and assigns its time to the
65
+ function’s node that called it. It only removes the function from that
66
+ specific part of the tree. Any other places the function was called from
67
+ will remain in the profile.
68
+ # This is used as the context menu item title for "Focus on function" and "Focus
69
+ # on function (inverted)" transforms.
70
+ CallNodeContextMenu--transform-focus-function-title =
71
+ Focusing on a function will remove any sample that does not include that
72
+ function. In addition, it re-roots the call tree so that the function
73
+ is the only root of the tree. This can combine multiple function call sites
74
+ across a profile into one call node.
75
+ CallNodeContextMenu--transform-focus-function = Focus on function
76
+ .title = { CallNodeContextMenu--transform-focus-function-title }
77
+ CallNodeContextMenu--transform-focus-function-inverted = Focus on function (inverted)
78
+ .title = { CallNodeContextMenu--transform-focus-function-title }
79
+ CallNodeContextMenu--transform-focus-subtree = Focus on subtree only
80
+ .title =
81
+ Focusing on a subtree will remove any sample that does not include that
82
+ specific part of the call tree. It pulls out a branch of the call tree,
83
+ however it only does it for that single call node. All other calls
84
+ of the function are ignored.
85
+ # This is used as the context menu item to apply the "Focus on category" transform.
86
+ # Variables:
87
+ # $categoryName (String) - Name of the category to focus on.
88
+ CallNodeContextMenu--transform-focus-category = Focus on category <strong>{ $categoryName }</strong>
89
+ .title =
90
+ Focusing on the nodes that belong to the same category as the selected node,
91
+ thereby merging all nodes that belong to another category.
92
+ CallNodeContextMenu--transform-collapse-function-subtree = Collapse function
93
+ .title =
94
+ Collapsing a function will remove everything it called, and assign
95
+ all of the time to the function. This can help simplify a profile that
96
+ calls into code that does not need to be analysed.
97
+ # This is used as the context menu item to apply the "Collapse resource" transform.
98
+ # Variables:
99
+ # $nameForResource (String) - Name of the resource to collapse.
100
+ CallNodeContextMenu--transform-collapse-resource = Collapse <strong>{ $nameForResource }</strong>
101
+ .title =
102
+ Collapsing a resource will flatten out all the calls to that
103
+ resource into a single collapsed call node.
104
+ CallNodeContextMenu--transform-collapse-recursion = Collapse recursion
105
+ .title =
106
+ Collapsing recursion removes calls that repeatedly recurse into
107
+ the same function, even with intermediate functions on the stack.
108
+ CallNodeContextMenu--transform-collapse-direct-recursion-only = Collapse direct recursion only
109
+ .title =
110
+ Collapsing direct recursion removes calls that repeatedly recurse into
111
+ the same function with no intermediate functions on the stack.
112
+ CallNodeContextMenu--transform-drop-function = Drop samples with this function
113
+ .title =
114
+ Dropping samples removes their time from the profile. This is useful to
115
+ eliminate timing information that is not relevant for the analysis.
116
+ CallNodeContextMenu--expand-all = Expand all
117
+ # Searchfox is a source code indexing tool for Mozilla Firefox.
118
+ # See: https://searchfox.org/
119
+ CallNodeContextMenu--searchfox = Look up the function name on Searchfox
120
+ CallNodeContextMenu--copy-function-name = Copy function name
121
+ CallNodeContextMenu--copy-script-url = Copy script URL
122
+ CallNodeContextMenu--copy-stack = Copy stack
123
+
124
+ ## CallTree
125
+ ## This is the component for Call Tree panel.
126
+
127
+ CallTree--tracing-ms-total = Running Time (ms)
128
+ .title =
129
+ The “total” running time includes a summary of all the time where this
130
+ function was observed to be on the stack. This includes the time where
131
+ the function was actually running, and the time spent in the callers from
132
+ this function.
133
+ CallTree--tracing-ms-self = Self (ms)
134
+ .title =
135
+ The “self” time only includes the time where the function was
136
+ the end of the stack. If this function called into other functions,
137
+ then the “other” functions’ time is not included. The “self” time is useful
138
+ for understanding where time was actually spent in a program.
139
+ CallTree--samples-total = Total (samples)
140
+ .title =
141
+ The “total” sample count includes a summary of every sample where this
142
+ function was observed to be on the stack. This includes the time where the
143
+ function was actually running, and the time spent in the callers from this
144
+ function.
145
+ CallTree--samples-self = Self
146
+ .title =
147
+ The “self” sample count only includes the samples where the function was
148
+ the end of the stack. If this function called into other functions,
149
+ then the “other” functions’ counts are not included. The “self” count is useful
150
+ for understanding where time was actually spent in a program.
151
+ CallTree--bytes-total = Total Size (bytes)
152
+ .title =
153
+ The “total size” includes a summary of all of the bytes allocated or
154
+ deallocated while this function was observed to be on the stack. This
155
+ includes both the bytes where the function was actually running, and the
156
+ bytes of the callers from this function.
157
+ CallTree--bytes-self = Self (bytes)
158
+ .title =
159
+ The “self” bytes includes the bytes allocated or deallocated while this
160
+ function was the end of the stack. If this function called into
161
+ other functions, then the “other” functions’ bytes are not included.
162
+ The “self” bytes are useful for understanding where memory was actually
163
+ allocated or deallocated in the program.
164
+
165
+ ## Call tree "badges" (icons) with tooltips
166
+ ##
167
+ ## These inlining badges are displayed in the call tree in front of some
168
+ ## functions for native code (C / C++ / Rust). They're a small "inl" icon with
169
+ ## a tooltip.
170
+
171
+ # Variables:
172
+ # $calledFunction (String) - Name of the function whose call was sometimes inlined.
173
+ CallTree--divergent-inlining-badge =
174
+ .title = Some calls to { $calledFunction } were inlined by the compiler.
175
+ # Variables:
176
+ # $calledFunction (String) - Name of the function whose call was inlined.
177
+ # $outerFunction (String) - Name of the outer function into which the called function was inlined.
178
+ CallTree--inlining-badge = (inlined)
179
+ .title = Calls to { $calledFunction } were inlined into { $outerFunction } by the compiler.
180
+
181
+ ## CallTreeSidebar
182
+ ## This is the sidebar component that is used in Call Tree and Flame Graph panels.
183
+
184
+ CallTreeSidebar--select-a-node = Select a node to display information about it.
185
+
186
+ ## CompareHome
187
+ ## This is used in the page to compare two profiles.
188
+ ## See: https://profiler.firefox.com/compare/
189
+
190
+ CompareHome--instruction-title = Enter the profile URLs that you’d like to compare
191
+ CompareHome--instruction-content =
192
+ The tool will extract the data from the selected track and range for
193
+ each profile, and put them both on the same view to make them easy to
194
+ compare.
195
+ CompareHome--form-label-profile1 = Profile 1:
196
+ CompareHome--form-label-profile2 = Profile 2:
197
+ CompareHome--submit-button =
198
+ .value = Retrieve profiles
199
+
200
+ ## DebugWarning
201
+ ## This is displayed at the top of the analysis page when the loaded profile is
202
+ ## a debug build of Firefox.
203
+
204
+ DebugWarning--warning-message =
205
+ .message =
206
+ This profile was recorded in a build without release optimisations.
207
+ Performance observations might not apply to the release population.
208
+
209
+ ## Details
210
+ ## This is the bottom panel in the analysis UI. They are generic strings to be
211
+ ## used at the bottom part of the UI.
212
+
213
+ Details--open-sidebar-button =
214
+ .title = Open the sidebar
215
+ Details--close-sidebar-button =
216
+ .title = Close the sidebar
217
+ Details--error-boundary-message =
218
+ .message = Uh oh, some unknown error happened in this panel.
219
+
220
+ ## ErrorBoundary
221
+ ## This component is shown when an unexpected error is encountered in the application.
222
+ ## Note that the localization won't be always applied in this component.
223
+
224
+ # This message will always be displayed after another context-specific message.
225
+ ErrorBoundary--report-error-to-developers-description =
226
+ Please report this issue to the developers, including the full
227
+ error as displayed in the Developer Tools’ Web Console.
228
+ # This is used in a call to action button, displayed inside the error box.
229
+ ErrorBoundary--report-error-on-github = Report the error on GitHub
230
+
231
+ ## Footer Links
232
+
233
+ FooterLinks--legal = Legal
234
+ FooterLinks--Privacy = Privacy
235
+ FooterLinks--Cookies = Cookies
236
+ FooterLinks--languageSwitcher--select =
237
+ .title = Change language
238
+ FooterLinks--hide-button =
239
+ .title = Hide footer links
240
+ .aria-label = Hide footer links
241
+
242
+ ## FullTimeline
243
+ ## The timeline component of the full view in the analysis UI at the top of the
244
+ ## page.
245
+
246
+ # This string is used as the text of the track selection button.
247
+ # Displays the ratio of visible tracks count to total tracks count in the timeline.
248
+ # We have spans here to make the numbers bold.
249
+ # Variables:
250
+ # $visibleTrackCount (Number) - Visible track count in the timeline
251
+ # $totalTrackCount (Number) - Total track count in the timeline
252
+ FullTimeline--tracks-button = <span>{ $visibleTrackCount }</span> / <span>{ $totalTrackCount }</span> tracks
253
+
254
+ ## Home page
255
+
256
+ Home--upload-from-file-input-button = Load a profile from file
257
+ Home--upload-from-url-button = Load a profile from a URL
258
+ Home--load-from-url-submit-button =
259
+ .value = Load
260
+ Home--documentation-button = Documentation
261
+ Home--menu-button = Enable { -profiler-brand-name } Menu Button
262
+ Home--menu-button-instructions =
263
+ Enable the profiler menu button to start recording a performance
264
+ profile in { -firefox-brand-name }, then analyse it and share it with profiler.firefox.com.
265
+ Home--profile-firefox-android-instructions =
266
+ You can also profile { -firefox-android-brand-name }. For more
267
+ information, please consult this documentation:
268
+ <a>Profiling { -firefox-android-brand-name } directly on device</a>.
269
+ # The word WebChannel should not be translated.
270
+ # This message can be seen on https://main--perf-html.netlify.app/ in the tooltip
271
+ # of the "Enable Firefox Profiler menu button" button.
272
+ Home--enable-button-unavailable =
273
+ .title = This profiler instance was unable to connect to the WebChannel, so it cannot enable the profiler menu button.
274
+ # The word WebChannel, the pref name, and the string "about:config" should not be translated.
275
+ # This message can be seen on https://main--perf-html.netlify.app/ .
276
+ Home--web-channel-unavailable =
277
+ This profiler instance was unable to connect to the WebChannel. This usually means that it’s
278
+ running on a different host from the one that is specified in the preference
279
+ <code>devtools.performance.recording.ui-base-url</code>. If you would like to capture new
280
+ profiles with this instance, and give it programmatic control of the profiler menu button,
281
+ you can go to <code>about:config</code> and change the preference.
282
+ Home--record-instructions =
283
+ To start profiling, click on the profiling button, or use the
284
+ keyboard shortcuts. The icon is blue when a profile is recording.
285
+ Hit <kbd>Capture</kbd> to load the data into profiler.firefox.com.
286
+ Home--instructions-content =
287
+ Recording performance profiles requires <a>{ -firefox-brand-name }</a>.
288
+ However, existing profiles can be viewed in any modern browser.
289
+ Home--record-instructions-start-stop = Stop and start profiling
290
+ Home--record-instructions-capture-load = Capture and load profile
291
+ Home--profiler-motto = Capture a performance profile. Analyse it. Share it. Make the web faster.
292
+ Home--additional-content-title = Load existing profiles
293
+ Home--additional-content-content = You can <strong>drag and drop</strong> a profile file here to load it, or:
294
+ Home--compare-recordings-info = You can also compare recordings. <a>Open the comparing interface.</a>
295
+ Home--your-recent-uploaded-recordings-title = Your recent uploaded recordings
296
+ # We replace the elements such as <perf> and <simpleperf> with links to the
297
+ # documentation to use these tools.
298
+ Home--load-files-from-other-tools2 =
299
+ The { -profiler-brand-name } can also import profiles from other profilers, such as
300
+ <perf>Linux perf</perf>, <simpleperf>Android SimplePerf</simpleperf>, the
301
+ Chrome performance panel, <androidstudio>Android Studio</androidstudio>, or
302
+ any file using the <dhat>dhat format</dhat> or <traceevent>Google’s Trace Event
303
+ Format</traceevent>. <write>Learn how to write your
304
+ own importer</write>.
305
+
306
+ ## IdleSearchField
307
+ ## The component that is used for all the search inputs in the application.
308
+
309
+ IdleSearchField--search-input =
310
+ .placeholder = Enter filter terms
311
+
312
+ ## JsTracerSettings
313
+ ## JSTracer is an experimental feature and it's currently disabled. See Bug 1565788.
314
+
315
+ JsTracerSettings--show-only-self-time = Show only self time
316
+ .title = Show only the time spent in a call node, ignoring its children.
317
+
318
+ ## ListOfPublishedProfiles
319
+ ## This is the component that displays all the profiles the user has uploaded.
320
+ ## It's displayed both in the homepage and in the uploaded recordings page.
321
+
322
+ # This string is used on the tooltip of the published profile links.
323
+ # Variables:
324
+ # $smallProfileName (String) - Shortened name for the published Profile.
325
+ ListOfPublishedProfiles--published-profiles-link =
326
+ .title = Click here to load profile { $smallProfileName }
327
+ ListOfPublishedProfiles--published-profiles-delete-button-disabled = Delete
328
+ .title = This profile cannot be deleted because we lack the authorisation information.
329
+ ListOfPublishedProfiles--uploaded-profile-information-list-empty = No profile has been uploaded yet!
330
+ # This string is used below the 'Your recent uploaded recordings' list section.
331
+ # Variables:
332
+ # $profilesRestCount (Number) - Remaining numbers of the uploaded profiles which are not listed under 'Your recent uploaded recordings'.
333
+ ListOfPublishedProfiles--uploaded-profile-information-label = See and manage all your recordings ({ $profilesRestCount } more)
334
+ # Depending on the number of uploaded profiles, the message is different.
335
+ # Variables:
336
+ # $uploadedProfileCount (Number) - Total numbers of the uploaded profiles.
337
+ ListOfPublishedProfiles--uploaded-profile-information-list =
338
+ { $uploadedProfileCount ->
339
+ [one] Manage this recording
340
+ *[other] Manage these recordings
341
+ }
342
+
343
+ ## MarkerContextMenu
344
+ ## This is used as a context menu for the Marker Chart, Marker Table and Network
345
+ ## panels.
346
+
347
+ MarkerContextMenu--set-selection-from-duration = Set selection from marker’s duration
348
+ MarkerContextMenu--start-selection-here = Start selection here
349
+ MarkerContextMenu--end-selection-here = End selection here
350
+ MarkerContextMenu--start-selection-at-marker-start = Start selection at marker’s <strong>start</strong>
351
+ MarkerContextMenu--start-selection-at-marker-end = Start selection at marker’s <strong>end</strong>
352
+ MarkerContextMenu--end-selection-at-marker-start = End selection at marker’s <strong>start</strong>
353
+ MarkerContextMenu--end-selection-at-marker-end = End selection at marker’s <strong>end</strong>
354
+ MarkerContextMenu--copy-description = Copy description
355
+ MarkerContextMenu--copy-call-stack = Copy call stack
356
+ MarkerContextMenu--copy-url = Copy URL
357
+ MarkerContextMenu--copy-page-url = Copy page URL
358
+ MarkerContextMenu--copy-as-json = Copy as JSON
359
+ # This string is used on the marker context menu item when right clicked on an
360
+ # IPC marker.
361
+ # Variables:
362
+ # $threadName (String) - Name of the thread that will be selected.
363
+ MarkerContextMenu--select-the-receiver-thread = Select the receiver thread “<strong>{ $threadName }</strong>”
364
+ # This string is used on the marker context menu item when right clicked on an
365
+ # IPC marker.
366
+ # Variables:
367
+ # $threadName (String) - Name of the thread that will be selected.
368
+ MarkerContextMenu--select-the-sender-thread = Select the sender thread “<strong>{ $threadName }</strong>”
369
+
370
+ ## MarkerFiltersContextMenu
371
+ ## This is the menu when filter icon is clicked in Marker Chart and Marker Table
372
+ ## panels.
373
+
374
+ # This string is used on the marker filters menu item when clicked on the filter icon.
375
+ # Variables:
376
+ # $filter (String) - Search string that will be used to filter the markers.
377
+ MarkerFiltersContextMenu--drop-samples-outside-of-markers-matching = Drop samples outside of markers matching “<strong>{ $filter }</strong>”
378
+
379
+ ## MarkerSettings
380
+ ## This is used in all panels related to markers.
381
+
382
+ MarkerSettings--panel-search =
383
+ .label = Filter Markers:
384
+ .title = Only display markers that match a certain name
385
+ MarkerSettings--marker-filters =
386
+ .title = Marker Filters
387
+
388
+ ## MarkerSidebar
389
+ ## This is the sidebar component that is used in Marker Table panel.
390
+
391
+ MarkerSidebar--select-a-marker = Select a marker to display information about it.
392
+
393
+ ## MarkerTable
394
+ ## This is the component for Marker Table panel.
395
+
396
+ MarkerTable--start = Start
397
+ MarkerTable--duration = Duration
398
+ MarkerTable--type = Type
399
+ MarkerTable--description = Description
400
+
401
+ ## MenuButtons
402
+ ## These strings are used for the buttons at the top of the profile viewer.
403
+
404
+ MenuButtons--index--metaInfo-button =
405
+ .label = Profile Info
406
+ MenuButtons--index--full-view = Full View
407
+ MenuButtons--index--cancel-upload = Cancel Upload
408
+ MenuButtons--index--share-upload =
409
+ .label = Upload Local Profile
410
+ MenuButtons--index--share-re-upload =
411
+ .label = Re-upload
412
+ MenuButtons--index--share-error-uploading =
413
+ .label = Error uploading
414
+ MenuButtons--index--revert = Revert to Original Profile
415
+ MenuButtons--index--docs = Docs
416
+ MenuButtons--permalink--button =
417
+ .label = Permalink
418
+
419
+ ## MetaInfo panel
420
+ ## These strings are used in the panel containing the meta information about
421
+ ## the current profile.
422
+
423
+ MenuButtons--index--profile-info-uploaded-label = Uploaded:
424
+ MenuButtons--index--profile-info-uploaded-actions = Delete
425
+ MenuButtons--index--metaInfo-subtitle = Profile Information
426
+ MenuButtons--metaInfo--symbols = Symbols:
427
+ MenuButtons--metaInfo--profile-symbolicated = Profile is symbolicated
428
+ MenuButtons--metaInfo--profile-not-symbolicated = Profile is not symbolicated
429
+ MenuButtons--metaInfo--resymbolicate-profile = Re-symbolicate profile
430
+ MenuButtons--metaInfo--symbolicate-profile = Symbolicate profile
431
+ MenuButtons--metaInfo--attempting-resymbolicate = Attempting to re-symbolicate profile
432
+ MenuButtons--metaInfo--currently-symbolicating = Currently symbolicating profile
433
+ MenuButtons--metaInfo--cpu-model = CPU model:
434
+ MenuButtons--metaInfo--cpu-cores = CPU cores:
435
+ MenuButtons--metaInfo--main-memory = Main memory:
436
+ MenuButtons--index--show-moreInfo-button = Show more
437
+ MenuButtons--index--hide-moreInfo-button = Show less
438
+ # This string is used when we have the information about both physical and
439
+ # logical CPU cores.
440
+ # Variable:
441
+ # $physicalCPUs (Number), $logicalCPUs (Number) - Number of Physical and Logical CPU Cores
442
+ MenuButtons--metaInfo--physical-and-logical-cpu =
443
+ { $physicalCPUs ->
444
+ [one] { $physicalCPUs } physical core
445
+ *[other] { $physicalCPUs } physical cores
446
+ }, { $logicalCPUs ->
447
+ [one] { $logicalCPUs } logical core
448
+ *[other] { $logicalCPUs } logical cores
449
+ }
450
+ # This string is used when we only have the information about the number of
451
+ # physical CPU cores.
452
+ # Variable:
453
+ # $physicalCPUs (Number) - Number of Physical CPU Cores
454
+ MenuButtons--metaInfo--physical-cpu =
455
+ { $physicalCPUs ->
456
+ [one] { $physicalCPUs } physical core
457
+ *[other] { $physicalCPUs } physical cores
458
+ }
459
+ # This string is used when we only have the information only the number of
460
+ # logical CPU cores.
461
+ # Variable:
462
+ # $logicalCPUs (Number) - Number of logical CPU Cores
463
+ MenuButtons--metaInfo--logical-cpu =
464
+ { $logicalCPUs ->
465
+ [one] { $logicalCPUs } logical core
466
+ *[other] { $logicalCPUs } logical cores
467
+ }
468
+ MenuButtons--metaInfo--profiling-started = Recording started:
469
+ MenuButtons--metaInfo--profiling-session = Recording length:
470
+ MenuButtons--metaInfo--main-process-started = Main process started:
471
+ MenuButtons--metaInfo--main-process-ended = Main process ended:
472
+ MenuButtons--metaInfo--interval = Interval:
473
+ MenuButtons--metaInfo--buffer-capacity = Buffer Capacity:
474
+ MenuButtons--metaInfo--buffer-duration = Buffer Duration:
475
+ # Buffer Duration in Seconds in Meta Info Panel
476
+ # Variable:
477
+ # $configurationDuration (Number) - Configuration Duration in Seconds
478
+ MenuButtons--metaInfo--buffer-duration-seconds =
479
+ { $configurationDuration ->
480
+ [one] { $configurationDuration } second
481
+ *[other] { $configurationDuration } seconds
482
+ }
483
+ # Adjective refers to the buffer duration
484
+ MenuButtons--metaInfo--buffer-duration-unlimited = Unlimited
485
+ MenuButtons--metaInfo--application = Application
486
+ MenuButtons--metaInfo--name-and-version = Name and version:
487
+ MenuButtons--metaInfo--application-uptime = Uptime:
488
+ MenuButtons--metaInfo--update-channel = Update Channel:
489
+ MenuButtons--metaInfo--build-id = Build ID:
490
+ MenuButtons--metaInfo--build-type = Build Type:
491
+ MenuButtons--metaInfo--arguments = Arguments:
492
+
493
+ ## Strings refer to specific types of builds, and should be kept in English.
494
+
495
+ MenuButtons--metaInfo--build-type-debug = Debug
496
+ MenuButtons--metaInfo--build-type-opt = Opt
497
+
498
+ ##
499
+
500
+ MenuButtons--metaInfo--platform = Platform
501
+ MenuButtons--metaInfo--device = Device:
502
+ # OS means Operating System. This describes the platform a profile was captured on.
503
+ MenuButtons--metaInfo--os = OS:
504
+ # ABI means Application Binary Interface. This describes the platform a profile was captured on.
505
+ MenuButtons--metaInfo--abi = ABI:
506
+ MenuButtons--metaInfo--visual-metrics = Visual Metrics
507
+ MenuButtons--metaInfo--speed-index = Speed Index:
508
+ # “Perceptual” is the name of an index provided by sitespeed.io, and should be kept in English.
509
+ MenuButtons--metaInfo--perceptual-speed-index = Perceptual Speed Index:
510
+ # “Contentful” is the name of an index provided by sitespeed.io, and should be kept in English.
511
+ MenuButtons--metaInfo--contentful-speed-Index = Contentful Speed Index:
512
+ MenuButtons--metaInfo-renderRowOfList-label-features = Features:
513
+ MenuButtons--metaInfo-renderRowOfList-label-threads-filter = Threads Filter:
514
+ MenuButtons--metaInfo-renderRowOfList-label-extensions = Extensions:
515
+
516
+ ## Overhead refers to the additional resources used to run the profiler.
517
+ ## These strings are displayed at the bottom of the "Profile Info" panel.
518
+
519
+ MenuButtons--metaOverheadStatistics-subtitle = { -profiler-brand-short-name } Overhead
520
+ MenuButtons--metaOverheadStatistics-mean = Mean
521
+ MenuButtons--metaOverheadStatistics-max = Max
522
+ MenuButtons--metaOverheadStatistics-min = Min
523
+ MenuButtons--metaOverheadStatistics-statkeys-overhead = Overhead
524
+ .title = Time to sample all threads.
525
+ MenuButtons--metaOverheadStatistics-statkeys-cleaning = Cleaning
526
+ .title = Time to discard expired data.
527
+ MenuButtons--metaOverheadStatistics-statkeys-counter = Counter
528
+ .title = Time to gather all counters.
529
+ MenuButtons--metaOverheadStatistics-statkeys-interval = Interval
530
+ .title = Observed interval between two samples.
531
+ MenuButtons--metaOverheadStatistics-statkeys-lockings = Lockings
532
+ .title = Time to acquire the lock before sampling.
533
+ MenuButtons--metaOverheadStatistics-overhead-duration = Overhead Durations:
534
+ MenuButtons--metaOverheadStatistics-overhead-percentage = Overhead Percentage:
535
+ MenuButtons--metaOverheadStatistics-profiled-duration = Profiled Duration:
536
+
537
+ ## Publish panel
538
+ ## These strings are used in the publishing panel.
539
+
540
+ MenuButtons--publish--renderCheckbox-label-hidden-threads = Include hidden threads
541
+ MenuButtons--publish--renderCheckbox-label-include-other-tabs = Include the data from other tabs
542
+ MenuButtons--publish--renderCheckbox-label-hidden-time = Include hidden time range
543
+ MenuButtons--publish--renderCheckbox-label-include-screenshots = Include screenshots
544
+ MenuButtons--publish--renderCheckbox-label-resource = Include resource URLs and paths
545
+ MenuButtons--publish--renderCheckbox-label-extension = Include extension information
546
+ MenuButtons--publish--renderCheckbox-label-preference = Include preference values
547
+ MenuButtons--publish--renderCheckbox-label-private-browsing = Include the data from private browsing windows
548
+ MenuButtons--publish--renderCheckbox-label-private-browsing-warning-image =
549
+ .title = This profile contains private browsing data
550
+ MenuButtons--publish--reupload-performance-profile = Re-upload Performance Profile
551
+ MenuButtons--publish--share-performance-profile = Share Performance Profile
552
+ MenuButtons--publish--info-description = Upload your profile and make it accessible to anyone with the link.
553
+ MenuButtons--publish--info-description-default = By default, your personal data is removed.
554
+ MenuButtons--publish--info-description-firefox-nightly2 = This profile is from { -firefox-nightly-brand-name }, so by default most information is included.
555
+ MenuButtons--publish--include-additional-data = Include additional data that may be identifiable
556
+ MenuButtons--publish--button-upload = Upload
557
+ MenuButtons--publish--upload-title = Uploading profile…
558
+ MenuButtons--publish--cancel-upload = Cancel Upload
559
+ MenuButtons--publish--message-something-went-wrong = Uh oh, something went wrong when uploading the profile.
560
+ MenuButtons--publish--message-try-again = Try again
561
+ MenuButtons--publish--download = Download
562
+ MenuButtons--publish--compressing = Compressing…
563
+ MenuButtons--publish--error-while-compressing = Error while compressing, try unticking some tickboxes to reduce the profile size.
564
+
565
+ ## NetworkSettings
566
+ ## This is used in the network chart.
567
+
568
+ NetworkSettings--panel-search =
569
+ .label = Filter Networks:
570
+ .title = Only display network requests that match a certain name
571
+
572
+ ## Timestamp formatting primitive
573
+
574
+ # This displays a date in a shorter rendering, depending on the proximity of the
575
+ # date from the current date. You can look in src/utils/l10n-ftl-functions.js
576
+ # for more information.
577
+ # This is especially used in the list of published profiles panel.
578
+ # There shouldn't need to change this in translations, but having it makes the
579
+ # date pass through Fluent to be properly localized.
580
+ # The function SHORTDATE is specific to the profiler. It changes the rendering
581
+ # depending on the proximity of the date from the current date.
582
+ # Variables:
583
+ # $date (Date) - The date to display in a shorter way
584
+ NumberFormat--short-date = { SHORTDATE($date) }
585
+
586
+ ## PanelSearch
587
+ ## The component that is used for all the search input hints in the application.
588
+
589
+ PanelSearch--search-field-hint = Did you know you can use the comma (,) to search using several terms?
590
+
591
+ ## Profile Delete Button
592
+
593
+ # This string is used on the tooltip of the published profile links delete button in uploaded recordings page.
594
+ # Variables:
595
+ # $smallProfileName (String) - Shortened name for the published Profile.
596
+ ProfileDeleteButton--delete-button =
597
+ .label = Delete
598
+ .title = Click here to delete the profile { $smallProfileName }
599
+
600
+ ## Profile Delete Panel
601
+ ## This panel is displayed when the user clicks on the Profile Delete Button,
602
+ ## it's a confirmation dialog.
603
+
604
+ # This string is used when there's an error while deleting a profile. The link
605
+ # will show the error message when hovering.
606
+ ProfileDeletePanel--delete-error = An error happened while deleting this profile. <a>Hover to know more.</a>
607
+ # This is the title of the dialog
608
+ # Variables:
609
+ # $profileName (string) - Some string that identifies the profile
610
+ ProfileDeletePanel--dialog-title = Delete { $profileName }
611
+ ProfileDeletePanel--dialog-confirmation-question =
612
+ Are you sure you want to delete uploaded data for this profile? Links
613
+ that were previously shared will no longer work.
614
+ ProfileDeletePanel--dialog-cancel-button =
615
+ .value = Cancel
616
+ ProfileDeletePanel--dialog-delete-button =
617
+ .value = Delete
618
+ # This is used inside the Delete button after the user has clicked it, as a cheap
619
+ # progress indicator.
620
+ ProfileDeletePanel--dialog-deleting-button =
621
+ .value = Deleting…
622
+ # This message is displayed when a profile has been successfully deleted.
623
+ ProfileDeletePanel--message-success = The uploaded data was successfully deleted.
624
+
625
+ ## ProfileFilterNavigator
626
+ ## This is used at the top of the profile analysis UI.
627
+
628
+ # This string is used on the top left side of the profile analysis UI as the
629
+ # "Full Range" button. In the profiler UI, it's possible to zoom in to a time
630
+ # range. This button reverts it back to the full range. It also includes the
631
+ # duration of the full range.
632
+ # Variables:
633
+ # $fullRangeDuration (String) - The duration of the full profile data.
634
+ ProfileFilterNavigator--full-range-with-duration = Full Range ({ $fullRangeDuration })
635
+
636
+ ## Profile Loader Animation
637
+
638
+ ProfileLoaderAnimation--loading-unpublished = Importing the profile directly from { -firefox-brand-name }…
639
+ ProfileLoaderAnimation--loading-from-file = Reading the file and processing the profile…
640
+ ProfileLoaderAnimation--loading-local = Not implemented yet.
641
+ ProfileLoaderAnimation--loading-public = Downloading and processing the profile…
642
+ ProfileLoaderAnimation--loading-from-url = Downloading and processing the profile…
643
+ ProfileLoaderAnimation--loading-compare = Reading and processing profiles…
644
+ ProfileLoaderAnimation--loading-view-not-found = View not found
645
+
646
+ ## ProfileRootMessage
647
+
648
+ ProfileRootMessage--title = { -profiler-brand-name }
649
+ ProfileRootMessage--additional = Back to home
650
+
651
+ ## Root
652
+
653
+ Root--error-boundary-message =
654
+ .message = Uh oh, some unknown error happened in profiler.firefox.com.
655
+
656
+ ## ServiceWorkerManager
657
+ ## This is the component responsible for handling the service worker installation
658
+ ## and update. It appears at the top of the UI.
659
+
660
+ ServiceWorkerManager--applying-button = Applying…
661
+ ServiceWorkerManager--pending-button = Apply and reload
662
+ ServiceWorkerManager--installed-button = Reload the application
663
+ ServiceWorkerManager--updated-while-not-ready =
664
+ A new version of the application was applied before this page
665
+ was fully loaded. You might see malfunctions.
666
+ ServiceWorkerManager--new-version-is-ready = A new version of the application has been downloaded and is ready to use.
667
+ ServiceWorkerManager--hide-notice-button =
668
+ .title = Hide the reload notice
669
+ .aria-label = Hide the reload notice
670
+
671
+ ## StackSettings
672
+ ## This is the settings component that is used in Call Tree, Flame Graph and Stack
673
+ ## Chart panels. It's used to switch between different views of the stack.
674
+
675
+ StackSettings--implementation-all-frames = All frames
676
+ .title = Do not filter the stack frames
677
+ StackSettings--implementation-javascript2 = JavaScript
678
+ .title = Show only the stack frames related to JavaScript execution
679
+ StackSettings--implementation-native2 = Native
680
+ .title = Show only the stack frames for native code
681
+ # This label is displayed in the marker chart and marker table panels only.
682
+ StackSettings--stack-implementation-label = Filter stacks:
683
+ StackSettings--use-data-source-label = Data source:
684
+ StackSettings--call-tree-strategy-timing = Timings
685
+ .title = Summarise using sampled stacks of executed code over time
686
+ StackSettings--call-tree-strategy-js-allocations = JavaScript Allocations
687
+ .title = Summarise using bytes of JavaScript allocated (no de-allocations)
688
+ StackSettings--call-tree-strategy-native-retained-allocations = Retained Memory
689
+ .title = Summarise using bytes of memory that were allocated, and never freed in the current preview selection
690
+ StackSettings--call-tree-native-allocations = Allocated Memory
691
+ .title = Summarise using bytes of memory allocated
692
+ StackSettings--call-tree-strategy-native-deallocations-memory = Deallocated Memory
693
+ .title = Summarise using bytes of memory deallocated, by the site where the memory was allocated
694
+ StackSettings--call-tree-strategy-native-deallocations-sites = Deallocation Sites
695
+ .title = Summarise using bytes of memory deallocated, by the site where the memory was deallocated
696
+ StackSettings--invert-call-stack = Invert call stack
697
+ .title = Sort by the time spent in a call node, ignoring its children.
698
+ StackSettings--show-user-timing = Show user timing
699
+ StackSettings--panel-search =
700
+ .label = Filter stacks:
701
+ .title = Only display stacks which contain a function whose name matches this substring
702
+
703
+ ## Tab Bar for the bottom half of the analysis UI.
704
+
705
+ TabBar--calltree-tab = Call Tree
706
+ TabBar--flame-graph-tab = Flame Graph
707
+ TabBar--stack-chart-tab = Stack Chart
708
+ TabBar--marker-chart-tab = Marker Chart
709
+ TabBar--marker-table-tab = Marker Table
710
+ TabBar--network-tab = Network
711
+ TabBar--js-tracer-tab = JS Tracer
712
+
713
+ ## TrackContextMenu
714
+ ## This is used as a context menu for timeline to organize the tracks in the
715
+ ## analysis UI.
716
+
717
+ TrackContextMenu--only-show-this-process = Only show this process
718
+ # This is used as the context menu item to show only the given track.
719
+ # Variables:
720
+ # $trackName (String) - Name of the selected track to isolate.
721
+ TrackContextMenu--only-show-track = Only show “{ $trackName }”
722
+ TrackContextMenu--hide-other-screenshots-tracks = Hide other Screenshots tracks
723
+ # This is used as the context menu item to hide the given track.
724
+ # Variables:
725
+ # $trackName (String) - Name of the selected track to hide.
726
+ TrackContextMenu--hide-track = Hide “{ $trackName }”
727
+ TrackContextMenu--show-all-tracks = Show all tracks
728
+ TrackContextMenu--show-local-tracks-in-process = Show all tracks in this process
729
+ # This is used in the tracks context menu as a button to show all the tracks
730
+ # that match the search filter.
731
+ TrackContextMenu--show-all-matching-tracks = Show all matching tracks
732
+ # This is used in the tracks context menu as a button to hide all the tracks
733
+ # that match the search filter.
734
+ TrackContextMenu--hide-all-matching-tracks = Hide all matching tracks
735
+ # This is used in the tracks context menu when the search filter doesn't match
736
+ # any track.
737
+ # Variables:
738
+ # $searchFilter (String) - The search filter string that user enters.
739
+ TrackContextMenu--no-results-found = No results found for “<span>{ $searchFilter }</span>”
740
+ # This button appears when hovering a track name and is displayed as an X icon.
741
+ TrackNameButton--hide-track =
742
+ .title = Hide track
743
+ # This button appears when hovering a global track name and is displayed as an X icon.
744
+ TrackNameButton--hide-process =
745
+ .title = Hide process
746
+
747
+ ## TrackMemoryGraph
748
+ ## This is used to show the memory graph of that process in the timeline part of
749
+ ## the UI. To learn more about it, visit:
750
+ ## https://profiler.firefox.com/docs/#/./memory-allocations?id=memory-track
751
+
752
+ TrackMemoryGraph--relative-memory-at-this-time = relative memory at this time
753
+ TrackMemoryGraph--memory-range-in-graph = memory range in graph
754
+ TrackMemoryGraph--operations-since-the-previous-sample = operations since the previous sample
755
+
756
+ ## TrackPower
757
+ ## This is used to show the power used by the CPU and other chips in a computer,
758
+ ## graphed over time.
759
+ ## It's not always displayed in the UI, but an example can be found at
760
+ ## https://share.firefox.dev/3a1fiT7.
761
+ ## For the strings in this group, the carbon dioxide equivalent is computed from
762
+ ## the used energy, using the carbon dioxide equivalent for electricity
763
+ ## consumption. The carbon dioxide equivalent represents the equivalent amount
764
+ ## of CO₂ to achieve the same level of global warming potential.
765
+
766
+ # This is used in the tooltip when the power value uses the kilowatt unit.
767
+ # Variables:
768
+ # $value (String) - the power value at this location
769
+ TrackPower--tooltip-power-kilowatt = { $value } kW
770
+ .label = Power
771
+ # This is used in the tooltip when the power value uses the watt unit.
772
+ # Variables:
773
+ # $value (String) - the power value at this location
774
+ TrackPower--tooltip-power-watt = { $value } W
775
+ .label = Power
776
+ # This is used in the tooltip when the instant power value uses the milliwatt unit.
777
+ # Variables:
778
+ # $value (String) - the power value at this location
779
+ TrackPower--tooltip-power-milliwatt = { $value } mW
780
+ .label = Power
781
+ # This is used in the tooltip when the energy used in the current range uses the
782
+ # kilowatt-hour unit.
783
+ # Variables:
784
+ # $value (String) - the energy value for this range
785
+ # $carbonValue (string) - the carbon dioxide equivalent (CO₂e) value (kilograms)
786
+ TrackPower--tooltip-energy-carbon-used-in-range-kilowatthour = { $value } kWh ({ $carbonValue } kg CO₂e)
787
+ .label = Energy used in the visible range
788
+ # This is used in the tooltip when the energy used in the current range uses the
789
+ # watt-hour unit.
790
+ # Variables:
791
+ # $value (String) - the energy value for this range
792
+ # $carbonValue (string) - the carbon dioxide equivalent (CO₂e) value (grams)
793
+ TrackPower--tooltip-energy-carbon-used-in-range-watthour = { $value } Wh ({ $carbonValue } g CO₂e)
794
+ .label = Energy used in the visible range
795
+ # This is used in the tooltip when the energy used in the current range uses the
796
+ # milliwatt-hour unit.
797
+ # Variables:
798
+ # $value (String) - the energy value for this range
799
+ # $carbonValue (string) - the carbon dioxide equivalent (CO₂e) value (milligrams)
800
+ TrackPower--tooltip-energy-carbon-used-in-range-milliwatthour = { $value } mWh ({ $carbonValue } mg CO₂e)
801
+ .label = Energy used in the visible range
802
+ # This is used in the tooltip when the energy used in the current range uses the
803
+ # microwatt-hour unit.
804
+ # Variables:
805
+ # $value (String) - the energy value for this range
806
+ # $carbonValue (string) - the carbon dioxide equivalent (CO₂e) value (milligrams)
807
+ TrackPower--tooltip-energy-carbon-used-in-range-microwatthour = { $value } µWh ({ $carbonValue } mg CO₂e)
808
+ .label = Energy used in the visible range
809
+ # This is used in the tooltip when the energy used in the current preview
810
+ # selection uses the kilowatt-hour unit.
811
+ # Variables:
812
+ # $value (String) - the energy value for this range
813
+ # $carbonValue (string) - the carbon dioxide equivalent (CO₂e) value (kilograms)
814
+ TrackPower--tooltip-energy-carbon-used-in-preview-kilowatthour = { $value } kWh ({ $carbonValue } kg CO₂e)
815
+ .label = Energy used in the current selection
816
+ # This is used in the tooltip when the energy used in the current preview
817
+ # selection uses the watt-hour unit.
818
+ # Variables:
819
+ # $value (String) - the energy value for this range
820
+ # $carbonValue (string) - the carbon dioxide equivalent (CO₂e) value (grams)
821
+ TrackPower--tooltip-energy-carbon-used-in-preview-watthour = { $value } Wh ({ $carbonValue } g CO₂e)
822
+ .label = Energy used in the current selection
823
+ # This is used in the tooltip when the energy used in the current preview
824
+ # selection uses the milliwatt-hour unit.
825
+ # Variables:
826
+ # $value (String) - the energy value for this range
827
+ # $carbonValue (string) - the carbon dioxide equivalent (CO₂e) value (milligrams)
828
+ TrackPower--tooltip-energy-carbon-used-in-preview-milliwatthour = { $value } mWh ({ $carbonValue } mg CO₂e)
829
+ .label = Energy used in the current selection
830
+ # This is used in the tooltip when the energy used in the current preview
831
+ # selection uses the microwatt-hour unit.
832
+ # Variables:
833
+ # $value (String) - the energy value for this range
834
+ # $carbonValue (string) - the carbon dioxide equivalent (CO₂e) value (milligrams)
835
+ TrackPower--tooltip-energy-carbon-used-in-preview-microwatthour = { $value } µWh ({ $carbonValue } mg CO₂e)
836
+ .label = Energy used in the current selection
837
+
838
+ ## TrackSearchField
839
+ ## The component that is used for the search input in the track context menu.
840
+
841
+ TrackSearchField--search-input =
842
+ .placeholder = Enter filter terms
843
+ .title = Only display tracks that match a certain text
844
+
845
+ ## TransformNavigator
846
+ ## Navigator for the applied transforms in the Call Tree, Flame Graph, and Stack
847
+ ## Chart components.
848
+ ## These messages are displayed above the table / graph once the user selects to
849
+ ## apply a specific transformation function to a node in the call tree. It's the
850
+ ## name of the function, followed by the node's name.
851
+ ## To learn more about them, visit:
852
+ ## https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=transforms
853
+
854
+ # Root item in the transform navigator.
855
+ # "Complete" is an adjective here, not a verb.
856
+ # See: https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=collapse
857
+ # Variables:
858
+ # $item (String) - Name of the current thread. E.g.: Web Content.
859
+ TransformNavigator--complete = Complete “{ $item }”
860
+ # "Collapse resource" transform.
861
+ # See: https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=collapse
862
+ # Variables:
863
+ # $item (String) - Name of the resource that collapsed. E.g.: libxul.so.
864
+ TransformNavigator--collapse-resource = Collapse: { $item }
865
+ # "Focus subtree" transform.
866
+ # See: https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=focus
867
+ # Variables:
868
+ # $item (String) - Name of the function that transform applied to.
869
+ TransformNavigator--focus-subtree = Focus Node: { $item }
870
+ # "Focus function" transform.
871
+ # See: https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=focus
872
+ # Variables:
873
+ # $item (String) - Name of the function that transform applied to.
874
+ TransformNavigator--focus-function = Focus: { $item }
875
+ # "Focus category" transform. The word "Focus" has the meaning of an adjective here.
876
+ # See: https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=focus-category
877
+ # Variables:
878
+ # $item (String) - Name of the category that transform applied to.
879
+ TransformNavigator--focus-category = Focus category: { $item }
880
+ # "Merge call node" transform.
881
+ # See: https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=merge
882
+ # Variables:
883
+ # $item (String) - Name of the function that transform applied to.
884
+ TransformNavigator--merge-call-node = Merge Node: { $item }
885
+ # "Merge function" transform.
886
+ # See: https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=merge
887
+ # Variables:
888
+ # $item (String) - Name of the function that transform applied to.
889
+ TransformNavigator--merge-function = Merge: { $item }
890
+ # "Drop function" transform.
891
+ # See: https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=drop
892
+ # Variables:
893
+ # $item (String) - Name of the function that transform applied to.
894
+ TransformNavigator--drop-function = Drop: { $item }
895
+ # "Collapse recursion" transform.
896
+ # See: https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=collapse
897
+ # Variables:
898
+ # $item (String) - Name of the function that transform applied to.
899
+ TransformNavigator--collapse-recursion = Collapse recursion: { $item }
900
+ # "Collapse direct recursion" transform.
901
+ # See: https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=collapse
902
+ # Variables:
903
+ # $item (String) - Name of the function that transform applied to.
904
+ TransformNavigator--collapse-direct-recursion-only = Collapse direct recursion only: { $item }
905
+ # "Collapse function subtree" transform.
906
+ # See: https://profiler.firefox.com/docs/#/./guide-filtering-call-trees?id=collapse
907
+ # Variables:
908
+ # $item (String) - Name of the function that transform applied to.
909
+ TransformNavigator--collapse-function-subtree = Collapse subtree: { $item }
910
+ # "Drop samples outside of markers matching ..." transform.
911
+ # Variables:
912
+ # $item (String) - Search filter of the markers that transform will apply to.
913
+ TransformNavigator--drop-samples-outside-of-markers-matching = Drop samples outside of markers matching: “{ $item }”
914
+
915
+ ## "Bottom box" - a view which contains the source view and the assembly view,
916
+ ## at the bottom of the profiler UI
917
+ ##
918
+ ## Some of these string IDs still start with SourceView, even though the strings
919
+ ## are used for both the source view and the assembly view.
920
+
921
+ # Displayed while a view in the bottom box is waiting for code to load from
922
+ # the network.
923
+ # Variables:
924
+ # $host (String) - The "host" part of the URL, e.g. hg.mozilla.org
925
+ SourceView--loading-url = Waiting for { $host }…
926
+ # Displayed while a view in the bottom box is waiting for code to load from
927
+ # the browser.
928
+ SourceView--loading-browser-connection = Waiting for { -firefox-brand-name }…
929
+ # Displayed whenever the source view was not able to get the source code for
930
+ # a file.
931
+ BottomBox--source-code-not-available-title = Source code not available
932
+ # Displayed whenever the source view was not able to get the source code for
933
+ # a file.
934
+ # Elements:
935
+ # <a>link text</a> - A link to the github issue about supported scenarios.
936
+ SourceView--source-not-available-text = See <a>issue #3741</a> for supported scenarios and planned improvements.
937
+ # Displayed whenever the assembly view was not able to get the assembly code for
938
+ # a file.
939
+ # Assembly refers to the low-level programming language.
940
+ BottomBox--assembly-code-not-available-title = Assembly code not available
941
+ # Displayed whenever the assembly view was not able to get the assembly code for
942
+ # a file.
943
+ # Elements:
944
+ # <a>link text</a> - A link to the github issue about supported scenarios.
945
+ BottomBox--assembly-code-not-available-text = See <a>issue #4520</a> for supported scenarios and planned improvements.
946
+ SourceView--close-button =
947
+ .title = Close the source view
948
+
949
+ ## Code loading errors
950
+ ## These are displayed both in the source view and in the assembly view.
951
+ ## The string IDs here currently all start with SourceView for historical reasons.
952
+
953
+ # Displayed below SourceView--cannot-obtain-source, if the profiler does not
954
+ # know which URL to request source code from.
955
+ SourceView--no-known-cors-url = There is no known cross-origin-accessible URL for this file.
956
+ # Displayed below SourceView--cannot-obtain-source, if there was a network error
957
+ # when fetching the source code for a file.
958
+ # Variables:
959
+ # $url (String) - The URL which we tried to get the source code from
960
+ # $networkErrorMessage (String) - The raw internal error message that was encountered by the network request, not localized
961
+ SourceView--network-error-when-obtaining-source = There was a network error when fetching the URL { $url }: { $networkErrorMessage }
962
+ # Displayed below SourceView--cannot-obtain-source, if the browser could not
963
+ # be queried for source code using the symbolication API.
964
+ # Variables:
965
+ # $browserConnectionErrorMessage (String) - The raw internal error message, not localized
966
+ SourceView--browser-connection-error-when-obtaining-source = Could not query the browser’s symbolication API: { $browserConnectionErrorMessage }
967
+ # Displayed below SourceView--cannot-obtain-source, if the browser was queried
968
+ # for source code using the symbolication API, and this query returned an error.
969
+ # Variables:
970
+ # $apiErrorMessage (String) - The raw internal error message from the API, not localized
971
+ SourceView--browser-api-error-when-obtaining-source = The browser’s symbolication API returned an error: { $apiErrorMessage }
972
+ # Displayed below SourceView--cannot-obtain-source, if a symbol server which is
973
+ # running locally was queried for source code using the symbolication API, and
974
+ # this query returned an error.
975
+ # Variables:
976
+ # $apiErrorMessage (String) - The raw internal error message from the API, not localized
977
+ SourceView--local-symbol-server-api-error-when-obtaining-source = The local symbol server’s symbolication API returned an error: { $apiErrorMessage }
978
+ # Displayed below SourceView--cannot-obtain-source, if the browser was queried
979
+ # for source code using the symbolication API, and this query returned a malformed response.
980
+ # Variables:
981
+ # $apiErrorMessage (String) - The raw internal error message from the API, not localized
982
+ SourceView--browser-api-malformed-response-when-obtaining-source = The browser’s symbolication API returned a malformed response: { $apiErrorMessage }
983
+ # Displayed below SourceView--cannot-obtain-source, if a symbol server which is
984
+ # running locally was queried for source code using the symbolication API, and
985
+ # this query returned a malformed response.
986
+ # Variables:
987
+ # $apiErrorMessage (String) - The raw internal error message from the API, not localized
988
+ SourceView--local-symbol-server-api-malformed-response-when-obtaining-source = The local symbol server’s symbolication API returned a malformed response: { $apiErrorMessage }
989
+ # Displayed below SourceView--cannot-obtain-source, if a file could not be found in
990
+ # an archive file (.tar.gz) which was downloaded from crates.io.
991
+ # Variables:
992
+ # $url (String) - The URL from which the "archive" file was downloaded.
993
+ # $pathInArchive (String) - The raw path of the member file which was not found in the archive.
994
+ SourceView--not-in-archive-error-when-obtaining-source = The file { $pathInArchive } was not found in the archive from { $url }.
995
+ # Displayed below SourceView--cannot-obtain-source, if the file format of an
996
+ # "archive" file was not recognized. The only supported archive formats at the
997
+ # moment are .tar and .tar.gz, because that's what crates.io uses for .crates files.
998
+ # Variables:
999
+ # $url (String) - The URL from which the "archive" file was downloaded.
1000
+ # $parsingErrorMessage (String) - The raw internal error message during parsing, not localized
1001
+ SourceView--archive-parsing-error-when-obtaining-source = The archive at { $url } could not be parsed: { $parsingErrorMessage }
1002
+
1003
+ ## Toggle buttons in the top right corner of the bottom box
1004
+
1005
+ # The toggle button for the assembly view, while the assembly view is hidden.
1006
+ # Assembly refers to the low-level programming language.
1007
+ AssemblyView--show-button =
1008
+ .title = Show the assembly view
1009
+ # The toggle button for the assembly view, while the assembly view is shown.
1010
+ # Assembly refers to the low-level programming language.
1011
+ AssemblyView--hide-button =
1012
+ .title = Hide the assembly view
1013
+
1014
+ ## UploadedRecordingsHome
1015
+ ## This is the page that displays all the profiles that user has uploaded.
1016
+ ## See: https://profiler.firefox.com/uploaded-recordings/
1017
+
1018
+ UploadedRecordingsHome--title = Uploaded Recordings