profile-viewer 0.0.0

Sign up to get free protection for your applications and to get access to all the features.
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,87 @@
1
+ #!/usr/bin/env ruby -w
2
+
3
+ require "webrick"
4
+ require "json"
5
+ require "cgi"
6
+
7
+ root = File.expand_path File.join(__dir__, "..")
8
+ HTTP_ROOT = File.expand_path File.join(__dir__, "..", "dist")
9
+
10
+ # This came from src/app-logic/constants.js
11
+ # export const PROFILER_SERVER_ORIGIN = 'http://localhost:5252';
12
+ PORT = 5252
13
+
14
+ server = WEBrick::HTTPServer.new :Port => PORT,
15
+ :DocumentRoot => HTTP_ROOT,
16
+ :StartCallback => lambda {
17
+ should_get = "http://localhost:#{PORT}/from-url/" + CGI.escape("http://localhost:#{PORT}/profile")
18
+ system("open #{should_get}")
19
+ }
20
+
21
+ class Source < WEBrick::HTTPServlet::AbstractServlet
22
+ def initialize server, valid_files
23
+ super(server)
24
+ @valid_files = valid_files
25
+ end
26
+
27
+ def do_GET request, response
28
+ file = request.path[/(?<=^\/source).*/]
29
+ if @valid_files.include? file
30
+ response.status = 200
31
+ response['Content-Type'] = 'text/plain'
32
+ response.body = File.binread(file)
33
+ else
34
+ response.status = 404
35
+ response['Content-Type'] = 'text/plain'
36
+ response.body = "Not Found"
37
+ end
38
+ end
39
+ end
40
+
41
+ class GetIndex < WEBrick::HTTPServlet::AbstractServlet
42
+ def do_GET request, response
43
+ response.status = 200
44
+ response['Content-Type'] = 'text/html'
45
+ response.body = File.binread(File.join(HTTP_ROOT, "index.html"))
46
+ end
47
+ end
48
+
49
+ class Profile < WEBrick::HTTPServlet::AbstractServlet
50
+ def initialize server, profile, parsed_profile
51
+ super(server)
52
+ @profile = profile
53
+ @parsed_profile = parsed_profile
54
+ end
55
+
56
+ def do_GET request, response
57
+ response.status = 200
58
+ response['Content-Type'] = 'text/html'
59
+ response.body = JSON.dump(@parsed_profile)
60
+ end
61
+ end
62
+
63
+ trap 'INT' do server.shutdown end
64
+
65
+ server.mount "/from-url", GetIndex
66
+
67
+ profile = ARGV[0]
68
+ if profile
69
+ valid_files = Set.new
70
+ full_path = File.expand_path profile
71
+ parsed_file = JSON.parse File.read full_path
72
+ parsed_file["threads"].each do |thread|
73
+ thread["stringArray"].map! do |str|
74
+ if str.start_with?("/") && File.exist?(str)
75
+ valid_files << str
76
+ "http://localhost:#{PORT}/source#{str}"
77
+ else
78
+ str
79
+ end
80
+ end
81
+ end
82
+
83
+ server.mount "/profile", Profile, full_path, parsed_file
84
+ server.mount "/source", Source, valid_files
85
+ end
86
+
87
+ server.start
metadata ADDED
@@ -0,0 +1,281 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: profile-viewer
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Aaron Patterson
8
+ autorequire:
9
+ bindir: ruby-bin
10
+ cert_chain: []
11
+ date: 2023-08-11 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: This gem packages the Mozilla Profiler so that you can run it locally
14
+ email: tenderlove@ruby-lang.org
15
+ executables:
16
+ - profile-viewer
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - dist/022efb839d22fa54a716.svg
21
+ - dist/0c510afd6169a0a83f97.svg
22
+ - dist/0d5cf282780cd1a5ec64.svg
23
+ - dist/119.cc58ce313e67f80f50f3.bundle.js
24
+ - dist/119.cc58ce313e67f80f50f3.bundle.js.map
25
+ - dist/11c5dca6d97c9e10e5b7.svg
26
+ - dist/131.c21d348572deab4ece66.bundle.js
27
+ - dist/131.c21d348572deab4ece66.bundle.js.map
28
+ - dist/18e7fdd45099134897d2.svg
29
+ - dist/2d4b477bc424d35a0245.svg
30
+ - dist/2e43ad991eb141fc017f.svg
31
+ - dist/2ea5b50b7361e6de561c.svg
32
+ - dist/308.4d236ce7e6451807cb54.bundle.js
33
+ - dist/308.4d236ce7e6451807cb54.bundle.js.map
34
+ - dist/31fe933f3a12be1aa7f3.svg
35
+ - dist/390aa266f451c1005f61.svg
36
+ - dist/3c3fda7c08bcc9544c64.svg
37
+ - dist/4260d5db8309a6f83637.svg
38
+ - dist/4536fd0738f36c3463bc.svg
39
+ - dist/490065792b7e903c9f3e.svg
40
+ - dist/49da6a2153f62ef73d17.svg
41
+ - dist/4d26f0e38c22eedde178.jpg
42
+ - dist/4ecb077d8715f89c0f87.svg
43
+ - dist/524e896f487119a0b832.svg
44
+ - dist/58c5415e952fb6dddd6b.png
45
+ - dist/6bd0589a27236471fdab.svg
46
+ - dist/6c6b49af3a86dfdd44e6.svg
47
+ - dist/6c8063be3afa1d95c902.svg
48
+ - dist/71730566d6c47ffdc965.svg
49
+ - dist/7273fadce89da05535e5.svg
50
+ - dist/731673c749e57bf6f544.svg
51
+ - dist/76e5b29823c9fd62d90d.svg
52
+ - dist/7853c71223701f30d495.svg
53
+ - dist/79856ce399cb305fafb8.svg
54
+ - dist/79eaad4fc0c398100809.svg
55
+ - dist/7c7ac3c7df370340cfd2.svg
56
+ - dist/7e3ac9afb25cfe809520.svg
57
+ - dist/81762b0b1aacd3686a6b.svg
58
+ - dist/86e81402ef76d28ff55f.svg
59
+ - dist/8aae7b979b04407f71a4.svg
60
+ - dist/8b8b909e42722172d494.svg
61
+ - dist/8dab2a6ba757bcc6e9a5.svg
62
+ - dist/9.071a712ea648c8b30416.bundle.js
63
+ - dist/9.071a712ea648c8b30416.bundle.js.map
64
+ - dist/9103e94f1d34c15d44be.svg
65
+ - dist/914.b9bc213d93173ce6b0cb.bundle.js
66
+ - dist/914.b9bc213d93173ce6b0cb.bundle.js.map
67
+ - dist/9a7bd6ec36312a2baa7e.svg
68
+ - dist/9d858d1a3ab57f8ee2e1.svg
69
+ - dist/9eb1fab2684d1e1f0e26.svg
70
+ - dist/_headers
71
+ - dist/_redirects
72
+ - dist/a3196e840709b18a3119.svg
73
+ - dist/aa867391c311267af5a9.svg
74
+ - dist/acb8393f3fb9c59b15c9.svg
75
+ - dist/ad13da76642d8099fe70.module.wasm
76
+ - dist/b45b29da558efa211628.jpg
77
+ - dist/b5698a02eef37ce29146.svg
78
+ - dist/b805360fcc91834556c9.svg
79
+ - dist/before-load.js
80
+ - dist/c3432220f657733ed05f.svg
81
+ - dist/ca2af827049e9039ef9c.svg
82
+ - dist/contribute.json
83
+ - dist/d09537c705fb0878eb63.svg
84
+ - dist/d9c199b3e3e469cc5713.svg
85
+ - dist/da1f21c60c7217745dd8.svg
86
+ - dist/docs/README.md
87
+ - dist/docs/_navbar.md
88
+ - dist/docs/_sidebar.md
89
+ - dist/docs/advanced-topics.md
90
+ - dist/docs/bunny-2.md
91
+ - dist/docs/bunny.md
92
+ - dist/docs/case-studies.md
93
+ - dist/docs/css/style-overrides.css
94
+ - dist/docs/css/vue_v4.12.2.min.css
95
+ - dist/docs/gitpod.md
96
+ - dist/docs/guide-android-profiling.md
97
+ - dist/docs/guide-filtering-call-trees.md
98
+ - dist/docs/guide-getting-started.md
99
+ - dist/docs/guide-perf-profiling.md
100
+ - dist/docs/guide-profiler-fundamentals.md
101
+ - dist/docs/guide-profiling-android-directly-on-device.md
102
+ - dist/docs/guide-profiling-firefox-android.md
103
+ - dist/docs/guide-remote-profiling.md
104
+ - dist/docs/guide-removing-profiler.md
105
+ - dist/docs/guide-stack-samples-and-call-trees.md
106
+ - dist/docs/guide-startup-shutdown.md
107
+ - dist/docs/guide-ui-tour-panels.md
108
+ - dist/docs/guide-ui-tour-timeline.md
109
+ - dist/docs/images/about-debugging-remote-profiling-panel.png
110
+ - dist/docs/images/about-debugging-remote.png
111
+ - dist/docs/images/about-url.png
112
+ - dist/docs/images/allocation-calltree-2019-12-11.png
113
+ - dist/docs/images/allocation-feature.png
114
+ - dist/docs/images/allocation-flame-graph-2019-12-11.png
115
+ - dist/docs/images/allocation-js.png
116
+ - dist/docs/images/allocation-track.png
117
+ - dist/docs/images/bunny-analysis/bunny.png
118
+ - dist/docs/images/bunny-analysis/clone-flame-content.png
119
+ - dist/docs/images/bunny-analysis/clone-flame-worker.png
120
+ - dist/docs/images/bunny-analysis/clone-thread-list.png
121
+ - dist/docs/images/bunny-analysis/fillstyle-thread-list-measure.png
122
+ - dist/docs/images/bunny-analysis/fillstyle-thread-list.png
123
+ - dist/docs/images/bunny-analysis/flame-graph-content.png
124
+ - dist/docs/images/bunny-analysis/flame-graph-set-fillstyle.png
125
+ - dist/docs/images/bunny-analysis/flame-graph-worker.png
126
+ - dist/docs/images/bunny-analysis/focus-subtree.png
127
+ - dist/docs/images/bunny-analysis/threads-list-measure.png
128
+ - dist/docs/images/bunny-analysis/threads-list.png
129
+ - dist/docs/images/bunny-analysis/threads-parallel.png
130
+ - dist/docs/images/bunny-analysis/threads-sync.png
131
+ - dist/docs/images/bunny-analysis/threads-work-parallel.png
132
+ - dist/docs/images/bunny-analysis/threads-work-sync.png
133
+ - dist/docs/images/call-tree-running-time.svg
134
+ - dist/docs/images/call-tree-self-time.svg
135
+ - dist/docs/images/call-tree.svg
136
+ - dist/docs/images/favicon.svg
137
+ - dist/docs/images/filter-search.svg
138
+ - dist/docs/images/getting-started-delete-profile.png
139
+ - dist/docs/images/getting-started-devtools-panel.png
140
+ - dist/docs/images/getting-started-enable-popup.png
141
+ - dist/docs/images/getting-started-list-uploaded-profiles.png
142
+ - dist/docs/images/getting-started-naming-profiles.png
143
+ - dist/docs/images/getting-started-popup.png
144
+ - dist/docs/images/getting-started-upload-permalink.webm
145
+ - dist/docs/images/getting-started-upload.png
146
+ - dist/docs/images/getting-started-use-icon.webm
147
+ - dist/docs/images/getting-started-use-popup.webm
148
+ - dist/docs/images/implementation-2022-06-16.png
149
+ - dist/docs/images/implementation-filter.svg
150
+ - dist/docs/images/interval-2020-05.png
151
+ - dist/docs/images/invert-2022-06-16.png
152
+ - dist/docs/images/invert-after.svg
153
+ - dist/docs/images/invert-before.svg
154
+ - dist/docs/images/invert-call-tree.svg
155
+ - dist/docs/images/ipc-messages-feature.png
156
+ - dist/docs/images/ipc-messages-io-threads.png
157
+ - dist/docs/images/ipc-messages-popup.png
158
+ - dist/docs/images/popup.png
159
+ - dist/docs/images/qr-gve-nightly.gif
160
+ - dist/docs/images/qr-reference-browser-nightly.gif
161
+ - dist/docs/images/samples.svg
162
+ - dist/docs/images/screenshot-2022-04-25.png
163
+ - dist/docs/images/search-2022-06-16.png
164
+ - dist/docs/images/secret-menu-toast.png
165
+ - dist/docs/images/settings-menu.png
166
+ - dist/docs/images/simple-call-tree-self-time.svg
167
+ - dist/docs/images/simple-call-tree.svg
168
+ - dist/docs/images/simple-stacks-self-time.svg
169
+ - dist/docs/images/simple-stacks.svg
170
+ - dist/docs/images/start-profiler.png
171
+ - dist/docs/images/transform-collapse-direct-recursion.svg
172
+ - dist/docs/images/transform-collapse-resource.svg
173
+ - dist/docs/images/transform-focus-function.svg
174
+ - dist/docs/images/transform-focus-node.svg
175
+ - dist/docs/images/transform-merge-function.svg
176
+ - dist/docs/images/transform-merge-node.svg
177
+ - dist/docs/images/transforms-2022-06-16.png
178
+ - dist/docs/images/ui-tour-activity-graph.png
179
+ - dist/docs/images/ui-tour-panels-call-tree.png
180
+ - dist/docs/images/ui-tour-panels-flame-graph.png
181
+ - dist/docs/images/ui-tour-panels-marker-chart.png
182
+ - dist/docs/images/ui-tour-panels-network-chart.png
183
+ - dist/docs/images/ui-tour-panels-stack-chart.png
184
+ - dist/docs/images/ui-tour-panels.png
185
+ - dist/docs/images/ui-tour-ranges.png
186
+ - dist/docs/images/ui-tour-selection.webm
187
+ - dist/docs/images/ui-tour-timeline-markers.png
188
+ - dist/docs/images/ui-tour-timeline-memory.png
189
+ - dist/docs/images/ui-tour-timeline-network.png
190
+ - dist/docs/images/ui-tour-timeline-screenshots.png
191
+ - dist/docs/images/ui-tour-timeline-track-selection.png
192
+ - dist/docs/images/ui-tour-timeline.png
193
+ - dist/docs/index.html
194
+ - dist/docs/ipc-messages.md
195
+ - dist/docs/js/docsify_v4.12.2+.min.js
196
+ - dist/docs/js/ga_v4.12.2.min.js
197
+ - dist/docs/js/init.js
198
+ - dist/docs/js/search_v4.12.2.min.js
199
+ - dist/docs/memory-allocations.md
200
+ - dist/docs/videos-call-tree-1.md
201
+ - dist/docs/videos-call-tree-2.md
202
+ - dist/docs/videos-call-tree-3.md
203
+ - dist/docs/videos-intro.md
204
+ - dist/docs/videos-samples-markers.md
205
+ - dist/docs/videos-threads.md
206
+ - dist/docs/videos.md
207
+ - dist/e4ed50222911c5af9a32.svg
208
+ - dist/e70722c0fe0ac3d4227b.svg
209
+ - dist/f0599659345cf76717cd.svg
210
+ - dist/f8e25c2ebeb0a0725a9e.svg
211
+ - dist/favicon.png
212
+ - dist/fcb532a05dd4b09c2d08.svg
213
+ - dist/fd040fb5f4e7a515bb3c.svg
214
+ - dist/index.html
215
+ - dist/locales/README.md
216
+ - dist/locales/be/app.ftl
217
+ - dist/locales/de/app.ftl
218
+ - dist/locales/el/app.ftl
219
+ - dist/locales/en-GB/app.ftl
220
+ - dist/locales/en-US/app.ftl
221
+ - dist/locales/es-CL/app.ftl
222
+ - dist/locales/fr/app.ftl
223
+ - dist/locales/fy-NL/app.ftl
224
+ - dist/locales/ia/app.ftl
225
+ - dist/locales/it/app.ftl
226
+ - dist/locales/kab/app.ftl
227
+ - dist/locales/nl/app.ftl
228
+ - dist/locales/pt-BR/app.ftl
229
+ - dist/locales/ru/app.ftl
230
+ - dist/locales/sv-SE/app.ftl
231
+ - dist/locales/uk/app.ftl
232
+ - dist/locales/zh-CN/app.ftl
233
+ - dist/locales/zh-TW/app.ftl
234
+ - dist/main.8208fda2d35ddbe38d55.bundle.js
235
+ - dist/main.8208fda2d35ddbe38d55.bundle.js.LICENSE.txt
236
+ - dist/main.8208fda2d35ddbe38d55.bundle.js.map
237
+ - dist/photon/31fe933f3a12be1aa7f3.svg
238
+ - dist/photon/49da6a2153f62ef73d17.svg
239
+ - dist/photon/6bd0589a27236471fdab.svg
240
+ - dist/photon/6c8063be3afa1d95c902.svg
241
+ - dist/photon/76e5b29823c9fd62d90d.svg
242
+ - dist/photon/8aae7b979b04407f71a4.svg
243
+ - dist/photon/8dab2a6ba757bcc6e9a5.svg
244
+ - dist/photon/9103e94f1d34c15d44be.svg
245
+ - dist/photon/aa867391c311267af5a9.svg
246
+ - dist/photon/f0599659345cf76717cd.svg
247
+ - dist/photon/index.html
248
+ - dist/photon/main.8c8260452e7439ec6df9.bundle.js
249
+ - dist/photon/main.8c8260452e7439ec6df9.bundle.js.map
250
+ - dist/service-worker-compat.js
251
+ - dist/sw.js
252
+ - dist/sw.js.map
253
+ - dist/workbox-27b29e6f.js
254
+ - dist/workbox-27b29e6f.js.map
255
+ - dist/zee-worker.js
256
+ - ruby-bin/profile-viewer
257
+ homepage: https://rubygems.org/gems/example
258
+ licenses:
259
+ - MPL-2.0
260
+ metadata:
261
+ source_code_uri: https://github.com/tenderlove/profiler/tree/ruby
262
+ post_install_message:
263
+ rdoc_options: []
264
+ require_paths:
265
+ - lib
266
+ required_ruby_version: !ruby/object:Gem::Requirement
267
+ requirements:
268
+ - - ">="
269
+ - !ruby/object:Gem::Version
270
+ version: '0'
271
+ required_rubygems_version: !ruby/object:Gem::Requirement
272
+ requirements:
273
+ - - ">="
274
+ - !ruby/object:Gem::Version
275
+ version: '0'
276
+ requirements: []
277
+ rubygems_version: 3.5.0.dev
278
+ signing_key:
279
+ specification_version: 4
280
+ summary: Ruby Gem that packages the Mozilla Profiler
281
+ test_files: []