lighthouse 11.7.1 → 12.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 (272) hide show
  1. package/CONTRIBUTING.md +2 -2
  2. package/cli/bin.js +0 -7
  3. package/cli/cli-flags.d.ts +1 -5
  4. package/cli/cli-flags.js +4 -8
  5. package/cli/test/smokehouse/__snapshots__/report-assert-test.js.snap +14 -14
  6. package/cli/test/smokehouse/config/exclusions.js +3 -0
  7. package/cli/test/smokehouse/core-tests.js +6 -20
  8. package/cli/test/smokehouse/frontends/smokehouse-bin.js +2 -2
  9. package/core/audits/accessibility/aria-conditional-attr.d.ts +10 -0
  10. package/core/audits/accessibility/aria-conditional-attr.js +43 -0
  11. package/core/audits/accessibility/{duplicate-id-active.d.ts → aria-deprecated-role.d.ts} +3 -3
  12. package/core/audits/accessibility/aria-deprecated-role.js +43 -0
  13. package/core/audits/accessibility/aria-prohibited-attr.d.ts +10 -0
  14. package/core/audits/accessibility/aria-prohibited-attr.js +44 -0
  15. package/core/audits/accessibility/target-size.js +0 -1
  16. package/core/audits/byte-efficiency/byte-efficiency-audit.d.ts +0 -16
  17. package/core/audits/byte-efficiency/byte-efficiency-audit.js +1 -38
  18. package/core/audits/byte-efficiency/offscreen-images.d.ts +0 -11
  19. package/core/audits/byte-efficiency/offscreen-images.js +0 -15
  20. package/core/audits/byte-efficiency/render-blocking-resources.js +27 -26
  21. package/core/audits/byte-efficiency/unminified-css.js +2 -2
  22. package/core/audits/byte-efficiency/unused-css-rules.js +3 -1
  23. package/core/audits/dobetterweb/uses-http2.d.ts +0 -13
  24. package/core/audits/dobetterweb/uses-http2.js +4 -38
  25. package/core/audits/font-display.js +2 -2
  26. package/core/audits/layout-shifts.js +1 -1
  27. package/core/audits/preload-fonts.d.ts +1 -5
  28. package/core/audits/preload-fonts.js +1 -10
  29. package/core/audits/prioritize-lcp-image.js +2 -2
  30. package/core/audits/redirects-http.d.ts +19 -0
  31. package/core/audits/redirects-http.js +75 -0
  32. package/core/audits/resource-summary.d.ts +2 -0
  33. package/core/audits/resource-summary.js +5 -4
  34. package/core/audits/seo/is-crawlable.d.ts +2 -1
  35. package/core/audits/seo/link-text.js +12 -0
  36. package/core/audits/uses-rel-preload.d.ts +1 -5
  37. package/core/audits/uses-rel-preload.js +5 -15
  38. package/core/audits/work-during-interaction.d.ts +2 -2
  39. package/core/audits/work-during-interaction.js +2 -2
  40. package/core/computed/js-bundles.d.ts +1 -1
  41. package/core/computed/metrics/lantern-first-contentful-paint.d.ts +13 -82
  42. package/core/computed/metrics/lantern-first-contentful-paint.js +16 -178
  43. package/core/computed/metrics/lantern-first-meaningful-paint.d.ts +13 -12
  44. package/core/computed/metrics/lantern-first-meaningful-paint.js +11 -49
  45. package/core/computed/metrics/lantern-interactive.d.ts +13 -21
  46. package/core/computed/metrics/lantern-interactive.js +12 -84
  47. package/core/computed/metrics/lantern-largest-contentful-paint.d.ts +13 -25
  48. package/core/computed/metrics/lantern-largest-contentful-paint.js +13 -80
  49. package/core/computed/metrics/lantern-max-potential-fid.d.ts +13 -24
  50. package/core/computed/metrics/lantern-max-potential-fid.js +12 -64
  51. package/core/computed/metrics/lantern-metric.d.ts +14 -18
  52. package/core/computed/metrics/lantern-metric.js +34 -30
  53. package/core/computed/metrics/lantern-speed-index.d.ts +13 -32
  54. package/core/computed/metrics/lantern-speed-index.js +13 -116
  55. package/core/computed/metrics/lantern-total-blocking-time.d.ts +13 -25
  56. package/core/computed/metrics/lantern-total-blocking-time.js +10 -94
  57. package/core/computed/metrics/metric.js +1 -3
  58. package/core/computed/module-duplication.d.ts +1 -1
  59. package/core/computed/navigation-insights.d.ts +36 -0
  60. package/core/computed/navigation-insights.js +35 -0
  61. package/core/computed/page-dependency-graph.js +3 -7
  62. package/core/computed/resource-summary.d.ts +10 -12
  63. package/core/computed/resource-summary.js +12 -19
  64. package/core/computed/trace-engine-result.d.ts +16 -3
  65. package/core/computed/trace-engine-result.js +19 -14
  66. package/core/computed/unused-css.d.ts +3 -1
  67. package/core/computed/unused-css.js +6 -5
  68. package/core/config/config-helpers.js +0 -4
  69. package/core/config/constants.js +0 -1
  70. package/core/config/default-config.js +63 -142
  71. package/core/config/experimental-config.js +11 -0
  72. package/core/config/filters.js +0 -1
  73. package/core/gather/driver/navigation.js +4 -1
  74. package/core/gather/driver/prepare.js +1 -1
  75. package/core/gather/driver/target-manager.js +4 -3
  76. package/core/gather/driver/wait-for-condition.js +2 -3
  77. package/core/gather/driver.d.ts +12 -0
  78. package/core/gather/driver.js +27 -0
  79. package/core/gather/gatherers/accessibility.js +4 -6
  80. package/core/gather/gatherers/css-usage.d.ts +0 -21
  81. package/core/gather/gatherers/css-usage.js +9 -119
  82. package/core/gather/gatherers/root-causes.d.ts +2 -2
  83. package/core/gather/gatherers/root-causes.js +6 -5
  84. package/core/gather/gatherers/stylesheets.d.ts +26 -0
  85. package/core/gather/gatherers/stylesheets.js +138 -0
  86. package/core/gather/gatherers/trace-elements.d.ts +2 -12
  87. package/core/gather/gatherers/trace-elements.js +2 -21
  88. package/core/gather/navigation-runner.js +3 -1
  89. package/core/gather/session.d.ts +8 -0
  90. package/core/gather/session.js +14 -1
  91. package/core/lib/emulation.js +2 -2
  92. package/core/lib/i18n/i18n.d.ts +0 -1
  93. package/core/lib/i18n/i18n.js +0 -2
  94. package/core/lib/lantern/cpu-node.d.ts +7 -1
  95. package/core/lib/lantern/cpu-node.js +12 -2
  96. package/core/lib/lantern/lantern-error.d.ts +8 -0
  97. package/core/lib/lantern/lantern-error.js +9 -0
  98. package/core/lib/lantern/metric.js +2 -6
  99. package/core/lib/lantern/metrics/first-contentful-paint.d.ts +79 -0
  100. package/core/lib/lantern/metrics/first-contentful-paint.js +200 -0
  101. package/core/lib/lantern/metrics/first-meaningful-paint.d.ts +6 -0
  102. package/core/lib/lantern/metrics/first-meaningful-paint.js +64 -0
  103. package/core/lib/lantern/metrics/interactive.d.ts +26 -0
  104. package/core/lib/lantern/metrics/interactive.js +112 -0
  105. package/core/lib/lantern/metrics/largest-contentful-paint.d.ts +19 -0
  106. package/core/lib/lantern/metrics/largest-contentful-paint.js +108 -0
  107. package/core/lib/lantern/metrics/max-potential-fid.d.ts +30 -0
  108. package/core/lib/lantern/metrics/max-potential-fid.js +92 -0
  109. package/core/lib/lantern/metrics/speed-index.d.ts +38 -0
  110. package/core/lib/lantern/metrics/speed-index.js +144 -0
  111. package/core/lib/lantern/metrics/total-blocking-time.d.ts +31 -0
  112. package/core/lib/lantern/metrics/total-blocking-time.js +128 -0
  113. package/core/lib/lantern/network-node.js +28 -4
  114. package/core/lib/lantern/page-dependency-graph.d.ts +4 -4
  115. package/core/lib/lantern/page-dependency-graph.js +19 -7
  116. package/core/lib/lantern/simulator/connection-pool.d.ts +2 -12
  117. package/core/lib/lantern/simulator/connection-pool.js +3 -22
  118. package/core/lib/lantern/simulator/network-analyzer.js +1 -12
  119. package/core/lib/lantern/simulator/simulator.d.ts +2 -4
  120. package/core/lib/lantern/simulator/simulator.js +7 -14
  121. package/core/lib/lantern/types/lantern.d.ts +5 -3
  122. package/core/lib/lantern-trace-saver.js +0 -1
  123. package/core/lib/lh-error.d.ts +9 -0
  124. package/core/lib/lh-error.js +13 -3
  125. package/core/lib/lighthouse-compatibility.js +53 -10
  126. package/core/lib/navigation-error.js +3 -0
  127. package/core/lib/network-request.d.ts +1 -0
  128. package/core/lib/network-request.js +28 -0
  129. package/core/runner.js +18 -25
  130. package/dist/report/bundle.esm.js +11 -112
  131. package/dist/report/flow.js +16 -117
  132. package/dist/report/standalone.js +12 -113
  133. package/flow-report/src/help-dialog.tsx +0 -1
  134. package/flow-report/src/i18n/i18n.d.ts +0 -4
  135. package/flow-report/src/i18n/ui-strings.d.ts +0 -1
  136. package/flow-report/src/i18n/ui-strings.js +0 -2
  137. package/flow-report/src/summary/category.tsx +10 -12
  138. package/package.json +5 -5
  139. package/readme.md +4 -4
  140. package/report/assets/styles.css +1 -60
  141. package/report/assets/templates.html +0 -95
  142. package/report/renderer/category-renderer.js +1 -1
  143. package/report/renderer/components.d.ts +2 -2
  144. package/report/renderer/components.js +2 -103
  145. package/report/renderer/dom.d.ts +1 -1
  146. package/report/renderer/dom.js +1 -1
  147. package/report/renderer/performance-category-renderer.d.ts +0 -7
  148. package/report/renderer/performance-category-renderer.js +1 -32
  149. package/report/renderer/report-renderer.js +3 -13
  150. package/report/renderer/report-ui-features.js +1 -1
  151. package/report/renderer/report-utils.d.ts +0 -1
  152. package/report/renderer/report-utils.js +13 -13
  153. package/shared/localization/locales/ar-XB.json +62 -329
  154. package/shared/localization/locales/ar.json +62 -329
  155. package/shared/localization/locales/bg.json +62 -329
  156. package/shared/localization/locales/ca.json +62 -329
  157. package/shared/localization/locales/cs.json +62 -329
  158. package/shared/localization/locales/da.json +62 -329
  159. package/shared/localization/locales/de.json +62 -329
  160. package/shared/localization/locales/el.json +62 -329
  161. package/shared/localization/locales/en-GB.json +62 -329
  162. package/shared/localization/locales/en-US.json +41 -272
  163. package/shared/localization/locales/en-XA.json +62 -329
  164. package/shared/localization/locales/en-XL.json +41 -272
  165. package/shared/localization/locales/es-419.json +62 -329
  166. package/shared/localization/locales/es.json +62 -329
  167. package/shared/localization/locales/fi.json +62 -329
  168. package/shared/localization/locales/fil.json +61 -328
  169. package/shared/localization/locales/fr.json +62 -329
  170. package/shared/localization/locales/he.json +62 -329
  171. package/shared/localization/locales/hi.json +62 -329
  172. package/shared/localization/locales/hr.json +63 -330
  173. package/shared/localization/locales/hu.json +62 -329
  174. package/shared/localization/locales/id.json +62 -329
  175. package/shared/localization/locales/it.json +62 -329
  176. package/shared/localization/locales/ja.json +62 -329
  177. package/shared/localization/locales/ko.json +62 -329
  178. package/shared/localization/locales/lt.json +62 -329
  179. package/shared/localization/locales/lv.json +62 -329
  180. package/shared/localization/locales/nl.json +62 -329
  181. package/shared/localization/locales/no.json +62 -329
  182. package/shared/localization/locales/pl.json +61 -328
  183. package/shared/localization/locales/pt-PT.json +62 -329
  184. package/shared/localization/locales/pt.json +64 -331
  185. package/shared/localization/locales/ro.json +62 -329
  186. package/shared/localization/locales/ru.json +62 -329
  187. package/shared/localization/locales/sk.json +62 -329
  188. package/shared/localization/locales/sl.json +62 -329
  189. package/shared/localization/locales/sr-Latn.json +62 -329
  190. package/shared/localization/locales/sr.json +62 -329
  191. package/shared/localization/locales/sv.json +62 -329
  192. package/shared/localization/locales/ta.json +61 -328
  193. package/shared/localization/locales/te.json +62 -329
  194. package/shared/localization/locales/th.json +62 -329
  195. package/shared/localization/locales/tr.json +62 -329
  196. package/shared/localization/locales/uk.json +62 -329
  197. package/shared/localization/locales/vi.json +61 -328
  198. package/shared/localization/locales/zh-HK.json +62 -329
  199. package/shared/localization/locales/zh-TW.json +61 -328
  200. package/shared/localization/locales/zh.json +62 -329
  201. package/tsconfig.json +1 -3
  202. package/types/artifacts.d.ts +21 -110
  203. package/types/audit.d.ts +0 -10
  204. package/types/config.d.ts +0 -1
  205. package/types/externs.d.ts +0 -2
  206. package/types/gatherer.d.ts +3 -0
  207. package/types/internal/smokehouse.d.ts +1 -1
  208. package/types/lh.d.ts +0 -2
  209. package/types/lhr/audit-details.d.ts +9 -4
  210. package/types/lhr/lhr.d.ts +0 -4
  211. package/types/lhr/settings.d.ts +0 -4
  212. package/core/audits/accessibility/duplicate-id-active.js +0 -42
  213. package/core/audits/content-width.d.ts +0 -17
  214. package/core/audits/content-width.js +0 -76
  215. package/core/audits/installable-manifest.d.ts +0 -111
  216. package/core/audits/installable-manifest.js +0 -248
  217. package/core/audits/layout-shift-elements.d.ts +0 -16
  218. package/core/audits/layout-shift-elements.js +0 -101
  219. package/core/audits/manual/pwa-cross-browser.d.ts +0 -12
  220. package/core/audits/manual/pwa-cross-browser.js +0 -40
  221. package/core/audits/manual/pwa-each-page-has-url.d.ts +0 -12
  222. package/core/audits/manual/pwa-each-page-has-url.js +0 -38
  223. package/core/audits/manual/pwa-page-transitions.d.ts +0 -12
  224. package/core/audits/manual/pwa-page-transitions.js +0 -38
  225. package/core/audits/maskable-icon.d.ts +0 -25
  226. package/core/audits/maskable-icon.js +0 -70
  227. package/core/audits/multi-check-audit.d.ts +0 -28
  228. package/core/audits/multi-check-audit.js +0 -82
  229. package/core/audits/no-unload-listeners.d.ts +0 -16
  230. package/core/audits/no-unload-listeners.js +0 -86
  231. package/core/audits/performance-budget.d.ts +0 -39
  232. package/core/audits/performance-budget.js +0 -154
  233. package/core/audits/script-elements-test-audit.d.ts +0 -14
  234. package/core/audits/script-elements-test-audit.js +0 -29
  235. package/core/audits/seo/plugins.d.ts +0 -15
  236. package/core/audits/seo/plugins.js +0 -150
  237. package/core/audits/seo/tap-targets.d.ts +0 -50
  238. package/core/audits/seo/tap-targets.js +0 -352
  239. package/core/audits/splash-screen.d.ts +0 -37
  240. package/core/audits/splash-screen.js +0 -98
  241. package/core/audits/themed-omnibox.d.ts +0 -42
  242. package/core/audits/themed-omnibox.js +0 -102
  243. package/core/audits/timing-budget.d.ts +0 -43
  244. package/core/audits/timing-budget.js +0 -175
  245. package/core/computed/manifest-values.d.ts +0 -24
  246. package/core/computed/manifest-values.js +0 -136
  247. package/core/config/budget.d.ts +0 -74
  248. package/core/config/budget.js +0 -340
  249. package/core/config/metrics-to-audits.d.ts +0 -19
  250. package/core/config/metrics-to-audits.js +0 -62
  251. package/core/gather/driver/service-workers.d.ts +0 -16
  252. package/core/gather/driver/service-workers.js +0 -52
  253. package/core/gather/gatherers/dobetterweb/tags-blocking-first-paint.d.ts +0 -47
  254. package/core/gather/gatherers/dobetterweb/tags-blocking-first-paint.js +0 -233
  255. package/core/gather/gatherers/global-listeners.d.ts +0 -27
  256. package/core/gather/gatherers/global-listeners.js +0 -108
  257. package/core/gather/gatherers/installability-errors.d.ts +0 -17
  258. package/core/gather/gatherers/installability-errors.js +0 -56
  259. package/core/gather/gatherers/script-elements.d.ts +0 -21
  260. package/core/gather/gatherers/script-elements.js +0 -100
  261. package/core/gather/gatherers/seo/embedded-content.d.ts +0 -10
  262. package/core/gather/gatherers/seo/embedded-content.js +0 -63
  263. package/core/gather/gatherers/seo/tap-targets.d.ts +0 -21
  264. package/core/gather/gatherers/seo/tap-targets.js +0 -389
  265. package/core/gather/gatherers/service-worker.d.ts +0 -10
  266. package/core/gather/gatherers/service-worker.js +0 -32
  267. package/core/gather/gatherers/web-app-manifest.d.ts +0 -32
  268. package/core/gather/gatherers/web-app-manifest.js +0 -106
  269. package/report/renderer/pwa-category-renderer.d.ts +0 -55
  270. package/report/renderer/pwa-category-renderer.js +0 -184
  271. package/third-party/chromium-synchronization/installability-errors-test.js +0 -79
  272. package/types/lhr/budget.d.ts +0 -60
@@ -35,6 +35,24 @@
35
35
  "core/audits/accessibility/aria-command-name.js | title": {
36
36
  "message": "`button`, `link`, and `menuitem` elements have accessible names"
37
37
  },
38
+ "core/audits/accessibility/aria-conditional-attr.js | description": {
39
+ "message": "Some ARIA attributes are only allowed on an element under certain conditions. [Learn more about conditional ARIA attributes](https://dequeuniversity.com/rules/axe/4.9/aria-conditional-attr)."
40
+ },
41
+ "core/audits/accessibility/aria-conditional-attr.js | failureTitle": {
42
+ "message": "ARIA attributes are not used as specified for the element's role"
43
+ },
44
+ "core/audits/accessibility/aria-conditional-attr.js | title": {
45
+ "message": "ARIA attributes are used as specified for the element's role"
46
+ },
47
+ "core/audits/accessibility/aria-deprecated-role.js | description": {
48
+ "message": "Deprecated ARIA roles may not be processed correctly by assistive technology. [Learn more about deprecated ARIA roles](https://dequeuniversity.com/rules/axe/4.9/aria-deprecated-role)."
49
+ },
50
+ "core/audits/accessibility/aria-deprecated-role.js | failureTitle": {
51
+ "message": "Deprecated ARIA roles were used"
52
+ },
53
+ "core/audits/accessibility/aria-deprecated-role.js | title": {
54
+ "message": "Deprecated ARIA roles were not used"
55
+ },
38
56
  "core/audits/accessibility/aria-dialog-name.js | description": {
39
57
  "message": "ARIA dialog elements without accessible names may prevent screen readers users from discerning the purpose of these elements. [Learn how to make ARIA dialog elements more accessible](https://dequeuniversity.com/rules/axe/4.9/aria-dialog-name)."
40
58
  },
@@ -89,6 +107,15 @@
89
107
  "core/audits/accessibility/aria-progressbar-name.js | title": {
90
108
  "message": "ARIA `progressbar` elements have accessible names"
91
109
  },
110
+ "core/audits/accessibility/aria-prohibited-attr.js | description": {
111
+ "message": "Using ARIA attributes in roles where they are prohibited can mean that important information is not communicated to users of assistive technologies. [Learn more about prohibited ARIA roles](https://dequeuniversity.com/rules/axe/4.9/aria-prohibited-attr)."
112
+ },
113
+ "core/audits/accessibility/aria-prohibited-attr.js | failureTitle": {
114
+ "message": "Elements use prohibited ARIA attributes"
115
+ },
116
+ "core/audits/accessibility/aria-prohibited-attr.js | title": {
117
+ "message": "Elements use only permitted ARIA attributes"
118
+ },
92
119
  "core/audits/accessibility/aria-required-attr.js | description": {
93
120
  "message": "Some ARIA roles have required attributes that describe the state of the element to screen readers. [Learn more about roles and required attributes](https://dequeuniversity.com/rules/axe/4.9/aria-required-attr)."
94
121
  },
@@ -236,15 +263,6 @@
236
263
  "core/audits/accessibility/document-title.js | title": {
237
264
  "message": "Document has a `<title>` element"
238
265
  },
239
- "core/audits/accessibility/duplicate-id-active.js | description": {
240
- "message": "All focusable elements must have a unique `id` to ensure that they're visible to assistive technologies. [Learn how to fix duplicate `id`s](https://dequeuniversity.com/rules/axe/4.9/duplicate-id-active)."
241
- },
242
- "core/audits/accessibility/duplicate-id-active.js | failureTitle": {
243
- "message": "`[id]` attributes on active, focusable elements are not unique"
244
- },
245
- "core/audits/accessibility/duplicate-id-active.js | title": {
246
- "message": "`[id]` attributes on active, focusable elements are unique"
247
- },
248
266
  "core/audits/accessibility/duplicate-id-aria.js | description": {
249
267
  "message": "The value of an ARIA ID must be unique to prevent other instances from being overlooked by assistive technologies. [Learn how to fix duplicate ARIA IDs](https://dequeuniversity.com/rules/axe/4.9/duplicate-id-aria)."
250
268
  },
@@ -743,18 +761,6 @@
743
761
  "core/audits/byte-efficiency/uses-text-compression.js | title": {
744
762
  "message": "Enable text compression"
745
763
  },
746
- "core/audits/content-width.js | description": {
747
- "message": "If the width of your app's content doesn't match the width of the viewport, your app might not be optimized for mobile screens. [Learn how to size content for the viewport](https://developer.chrome.com/docs/lighthouse/pwa/content-width/)."
748
- },
749
- "core/audits/content-width.js | explanation": {
750
- "message": "The viewport size of {innerWidth}px does not match the window size of {outerWidth}px."
751
- },
752
- "core/audits/content-width.js | failureTitle": {
753
- "message": "Content is not sized correctly for the viewport"
754
- },
755
- "core/audits/content-width.js | title": {
756
- "message": "Content is sized correctly for the viewport"
757
- },
758
764
  "core/audits/critical-request-chains.js | description": {
759
765
  "message": "The Critical Request Chains below show you what resources are loaded with a high priority. Consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load. [Learn how to avoid chaining critical requests](https://developer.chrome.com/docs/lighthouse/performance/critical-request-chains/)."
760
766
  },
@@ -1004,105 +1010,6 @@
1004
1010
  "core/audits/image-size-responsive.js | title": {
1005
1011
  "message": "Serves images with appropriate resolution"
1006
1012
  },
1007
- "core/audits/installable-manifest.js | already-installed": {
1008
- "message": "The app is already installed"
1009
- },
1010
- "core/audits/installable-manifest.js | cannot-download-icon": {
1011
- "message": "Could not download a required icon from the manifest"
1012
- },
1013
- "core/audits/installable-manifest.js | columnValue": {
1014
- "message": "Failure reason"
1015
- },
1016
- "core/audits/installable-manifest.js | description": {
1017
- "message": "Service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. With proper service worker and manifest implementations, browsers can proactively prompt users to add your app to their homescreen, which can lead to higher engagement. [Learn more about manifest installability requirements](https://developer.chrome.com/docs/lighthouse/pwa/installable-manifest/)."
1018
- },
1019
- "core/audits/installable-manifest.js | displayValue": {
1020
- "message": "{itemCount, plural,\n =1 {1 reason}\n other {# reasons}\n }"
1021
- },
1022
- "core/audits/installable-manifest.js | failureTitle": {
1023
- "message": "Web app manifest or service worker do not meet the installability requirements"
1024
- },
1025
- "core/audits/installable-manifest.js | ids-do-not-match": {
1026
- "message": "The Play Store app URL and Play Store ID do not match"
1027
- },
1028
- "core/audits/installable-manifest.js | in-incognito": {
1029
- "message": "Page is loaded in an incognito window"
1030
- },
1031
- "core/audits/installable-manifest.js | manifest-display-not-supported": {
1032
- "message": "Manifest `display` property must be one of `standalone`, `fullscreen`, or `minimal-ui`"
1033
- },
1034
- "core/audits/installable-manifest.js | manifest-display-override-not-supported": {
1035
- "message": "Manifest contains 'display_override' field, and the first supported display mode must be one of 'standalone', 'fullscreen', or 'minimal-ui'"
1036
- },
1037
- "core/audits/installable-manifest.js | manifest-empty": {
1038
- "message": "Manifest could not be fetched, is empty, or could not be parsed"
1039
- },
1040
- "core/audits/installable-manifest.js | manifest-location-changed": {
1041
- "message": "Manifest URL changed while the manifest was being fetched."
1042
- },
1043
- "core/audits/installable-manifest.js | manifest-missing-name-or-short-name": {
1044
- "message": "Manifest does not contain a `name` or `short_name` field"
1045
- },
1046
- "core/audits/installable-manifest.js | manifest-missing-suitable-icon": {
1047
- "message": "Manifest does not contain a suitable icon - PNG, SVG or WebP format of at least {value0} px is required, the sizes attribute must be set, and the purpose attribute, if set, must include \"any\"."
1048
- },
1049
- "core/audits/installable-manifest.js | manifest-parsing-or-network-error": {
1050
- "message": "Manifest could not be fetched, is empty, or could not be parsed"
1051
- },
1052
- "core/audits/installable-manifest.js | no-acceptable-icon": {
1053
- "message": "No supplied icon is at least {value0} px square in PNG, SVG or WebP format, with the purpose attribute unset or set to \"any\""
1054
- },
1055
- "core/audits/installable-manifest.js | no-icon-available": {
1056
- "message": "Downloaded icon was empty or corrupted"
1057
- },
1058
- "core/audits/installable-manifest.js | no-id-specified": {
1059
- "message": "No Play store ID provided"
1060
- },
1061
- "core/audits/installable-manifest.js | no-manifest": {
1062
- "message": "Page has no manifest <link> URL"
1063
- },
1064
- "core/audits/installable-manifest.js | no-url-for-service-worker": {
1065
- "message": "Could not check service worker without a 'start_url' field in the manifest"
1066
- },
1067
- "core/audits/installable-manifest.js | noErrorId": {
1068
- "message": "Installability error id '{errorId}' is not recognized"
1069
- },
1070
- "core/audits/installable-manifest.js | not-from-secure-origin": {
1071
- "message": "Page is not served from a secure origin"
1072
- },
1073
- "core/audits/installable-manifest.js | not-in-main-frame": {
1074
- "message": "Page is not loaded in the main frame"
1075
- },
1076
- "core/audits/installable-manifest.js | not-offline-capable": {
1077
- "message": "Page does not work offline"
1078
- },
1079
- "core/audits/installable-manifest.js | pipeline-restarted": {
1080
- "message": "PWA has been uninstalled and installability checks resetting."
1081
- },
1082
- "core/audits/installable-manifest.js | platform-not-supported-on-android": {
1083
- "message": "The specified application platform is not supported on Android"
1084
- },
1085
- "core/audits/installable-manifest.js | prefer-related-applications": {
1086
- "message": "Manifest specifies prefer_related_applications: true"
1087
- },
1088
- "core/audits/installable-manifest.js | prefer-related-applications-only-beta-stable": {
1089
- "message": "prefer_related_applications is only supported on Chrome Beta and Stable channels on Android."
1090
- },
1091
- "core/audits/installable-manifest.js | protocol-timeout": {
1092
- "message": "Lighthouse could not determine if the page is installable. Please try with a newer version of Chrome."
1093
- },
1094
- "core/audits/installable-manifest.js | start-url-not-valid": {
1095
- "message": "Manifest start URL is not valid"
1096
- },
1097
- "core/audits/installable-manifest.js | title": {
1098
- "message": "Web app manifest and service worker meet the installability requirements"
1099
- },
1100
- "core/audits/installable-manifest.js | url-not-supported-for-webapk": {
1101
- "message": "A URL in the manifest contains a username, password, or port"
1102
- },
1103
- "core/audits/installable-manifest.js | warn-not-offline-capable": {
1104
- "message": "Page does not work offline. The page will not be regarded as installable after Chrome 93, stable release August 2021."
1105
- },
1106
1013
  "core/audits/is-on-https.js | allowed": {
1107
1014
  "message": "Allowed"
1108
1015
  },
@@ -1160,15 +1067,6 @@
1160
1067
  "core/audits/largest-contentful-paint-element.js | title": {
1161
1068
  "message": "Largest Contentful Paint element"
1162
1069
  },
1163
- "core/audits/layout-shift-elements.js | columnContribution": {
1164
- "message": "Layout shift impact"
1165
- },
1166
- "core/audits/layout-shift-elements.js | description": {
1167
- "message": "These DOM elements were most affected by layout shifts. Some layout shifts may not be included in the CLS metric value due to [windowing](https://web.dev/articles/cls#what_is_cls). [Learn how to improve CLS](https://web.dev/articles/optimize-cls)"
1168
- },
1169
- "core/audits/layout-shift-elements.js | title": {
1170
- "message": "Avoid large layout shifts"
1171
- },
1172
1070
  "core/audits/layout-shifts.js | columnScore": {
1173
1071
  "message": "Layout shift score"
1174
1072
  },
@@ -1223,33 +1121,6 @@
1223
1121
  "core/audits/mainthread-work-breakdown.js | title": {
1224
1122
  "message": "Minimizes main-thread work"
1225
1123
  },
1226
- "core/audits/manual/pwa-cross-browser.js | description": {
1227
- "message": "To reach the most number of users, sites should work across every major browser. [Learn about cross-browser compatibility](https://developer.chrome.com/docs/lighthouse/pwa/pwa-cross-browser/)."
1228
- },
1229
- "core/audits/manual/pwa-cross-browser.js | title": {
1230
- "message": "Site works cross-browser"
1231
- },
1232
- "core/audits/manual/pwa-each-page-has-url.js | description": {
1233
- "message": "Ensure individual pages are deep linkable via URL and that URLs are unique for the purpose of shareability on social media. [Learn more about providing deep links](https://developer.chrome.com/docs/lighthouse/pwa/pwa-each-page-has-url/)."
1234
- },
1235
- "core/audits/manual/pwa-each-page-has-url.js | title": {
1236
- "message": "Each page has a URL"
1237
- },
1238
- "core/audits/manual/pwa-page-transitions.js | description": {
1239
- "message": "Transitions should feel snappy as you tap around, even on a slow network. This experience is key to a user's perception of performance. [Learn more about page transitions](https://developer.chrome.com/docs/lighthouse/pwa/pwa-page-transitions/)."
1240
- },
1241
- "core/audits/manual/pwa-page-transitions.js | title": {
1242
- "message": "Page transitions don't feel like they block on the network"
1243
- },
1244
- "core/audits/maskable-icon.js | description": {
1245
- "message": "A maskable icon ensures that the image fills the entire shape without being letterboxed when installing the app on a device. [Learn about maskable manifest icons](https://developer.chrome.com/docs/lighthouse/pwa/maskable-icon-audit/)."
1246
- },
1247
- "core/audits/maskable-icon.js | failureTitle": {
1248
- "message": "Manifest doesn't have a maskable icon"
1249
- },
1250
- "core/audits/maskable-icon.js | title": {
1251
- "message": "Manifest has a maskable icon"
1252
- },
1253
1124
  "core/audits/metrics/cumulative-layout-shift.js | description": {
1254
1125
  "message": "Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more about the Cumulative Layout Shift metric](https://web.dev/articles/cls)."
1255
1126
  },
@@ -1289,15 +1160,6 @@
1289
1160
  "core/audits/network-server-latency.js | title": {
1290
1161
  "message": "Server Backend Latencies"
1291
1162
  },
1292
- "core/audits/no-unload-listeners.js | description": {
1293
- "message": "The `unload` event does not fire reliably and listening for it can prevent browser optimizations like the Back-Forward Cache. Use `pagehide` or `visibilitychange` events instead. [Learn more about unload event listeners](https://web.dev/articles/bfcache#never_use_the_unload_event)"
1294
- },
1295
- "core/audits/no-unload-listeners.js | failureTitle": {
1296
- "message": "Registers an `unload` listener"
1297
- },
1298
- "core/audits/no-unload-listeners.js | title": {
1299
- "message": "Avoids `unload` event listeners"
1300
- },
1301
1163
  "core/audits/non-composited-animations.js | description": {
1302
1164
  "message": "Animations which are not composited can be janky and increase CLS. [Learn how to avoid non-composited animations](https://developer.chrome.com/docs/lighthouse/performance/non-composited-animations/)"
1303
1165
  },
@@ -1325,15 +1187,6 @@
1325
1187
  "core/audits/non-composited-animations.js | unsupportedTimingParameters": {
1326
1188
  "message": "Effect has unsupported timing parameters"
1327
1189
  },
1328
- "core/audits/performance-budget.js | description": {
1329
- "message": "Keep the quantity and size of network requests under the targets set by the provided performance budget. [Learn more about performance budgets](https://developers.google.com/web/tools/lighthouse/audits/budgets)."
1330
- },
1331
- "core/audits/performance-budget.js | requestCountOverBudget": {
1332
- "message": "{count, plural,\n =1 {1 request}\n other {# requests}\n }"
1333
- },
1334
- "core/audits/performance-budget.js | title": {
1335
- "message": "Performance budget"
1336
- },
1337
1190
  "core/audits/preload-fonts.js | description": {
1338
1191
  "message": "Preload `optional` fonts so first-time visitors may use them. [Learn more about preloading fonts](https://web.dev/articles/preload-optional-fonts)"
1339
1192
  },
@@ -1349,6 +1202,15 @@
1349
1202
  "core/audits/prioritize-lcp-image.js | title": {
1350
1203
  "message": "Preload Largest Contentful Paint image"
1351
1204
  },
1205
+ "core/audits/redirects-http.js | description": {
1206
+ "message": "Make sure that you redirect all HTTP traffic to HTTPS in order to enable secure web features for all your users. [Learn more](https://developer.chrome.com/docs/lighthouse/pwa/redirects-http/)."
1207
+ },
1208
+ "core/audits/redirects-http.js | failureTitle": {
1209
+ "message": "Does not redirect HTTP traffic to HTTPS"
1210
+ },
1211
+ "core/audits/redirects-http.js | title": {
1212
+ "message": "Redirects HTTP traffic to HTTPS"
1213
+ },
1352
1214
  "core/audits/redirects.js | description": {
1353
1215
  "message": "Redirects introduce additional delays before the page can be loaded. [Learn how to avoid page redirects](https://developer.chrome.com/docs/lighthouse/performance/redirects/)."
1354
1216
  },
@@ -1484,15 +1346,6 @@
1484
1346
  "core/audits/seo/meta-description.js | title": {
1485
1347
  "message": "Document has a meta description"
1486
1348
  },
1487
- "core/audits/seo/plugins.js | description": {
1488
- "message": "Search engines can't index plugin content, and many devices restrict plugins or don't support them. [Learn more about avoiding plugins](https://developer.chrome.com/docs/lighthouse/seo/plugins/)."
1489
- },
1490
- "core/audits/seo/plugins.js | failureTitle": {
1491
- "message": "Document uses plugins"
1492
- },
1493
- "core/audits/seo/plugins.js | title": {
1494
- "message": "Document avoids plugins"
1495
- },
1496
1349
  "core/audits/seo/robots-txt.js | description": {
1497
1350
  "message": "If your robots.txt file is malformed, crawlers may not be able to understand how you want your website to be crawled or indexed. [Learn more about robots.txt](https://developer.chrome.com/docs/lighthouse/seo/invalid-robots-txt/)."
1498
1351
  },
@@ -1511,27 +1364,6 @@
1511
1364
  "core/audits/seo/robots-txt.js | title": {
1512
1365
  "message": "robots.txt is valid"
1513
1366
  },
1514
- "core/audits/seo/tap-targets.js | description": {
1515
- "message": "Interactive elements like buttons and links should be large enough (48x48px), or have enough space around them, to be easy enough to tap without overlapping onto other elements. [Learn more about tap targets](https://developer.chrome.com/docs/lighthouse/seo/tap-targets/)."
1516
- },
1517
- "core/audits/seo/tap-targets.js | displayValue": {
1518
- "message": "{decimalProportion, number, percent} appropriately sized tap targets"
1519
- },
1520
- "core/audits/seo/tap-targets.js | explanationViewportMetaNotOptimized": {
1521
- "message": "Tap targets are too small because there's no viewport meta tag optimized for mobile screens"
1522
- },
1523
- "core/audits/seo/tap-targets.js | failureTitle": {
1524
- "message": "Tap targets are not sized appropriately"
1525
- },
1526
- "core/audits/seo/tap-targets.js | overlappingTargetHeader": {
1527
- "message": "Overlapping Target"
1528
- },
1529
- "core/audits/seo/tap-targets.js | tapTargetHeader": {
1530
- "message": "Tap Target"
1531
- },
1532
- "core/audits/seo/tap-targets.js | title": {
1533
- "message": "Tap targets are sized appropriately"
1534
- },
1535
1367
  "core/audits/server-response-time.js | description": {
1536
1368
  "message": "Keep the server response time for the main document short because all other requests depend on it. [Learn more about the Time to First Byte metric](https://developer.chrome.com/docs/lighthouse/performance/time-to-first-byte/)."
1537
1369
  },
@@ -1544,24 +1376,6 @@
1544
1376
  "core/audits/server-response-time.js | title": {
1545
1377
  "message": "Initial server response time was short"
1546
1378
  },
1547
- "core/audits/splash-screen.js | description": {
1548
- "message": "A themed splash screen ensures a high-quality experience when users launch your app from their homescreens. [Learn more about splash screens](https://developer.chrome.com/docs/lighthouse/pwa/splash-screen/)."
1549
- },
1550
- "core/audits/splash-screen.js | failureTitle": {
1551
- "message": "Is not configured for a custom splash screen"
1552
- },
1553
- "core/audits/splash-screen.js | title": {
1554
- "message": "Configured for a custom splash screen"
1555
- },
1556
- "core/audits/themed-omnibox.js | description": {
1557
- "message": "The browser address bar can be themed to match your site. [Learn more about theming the address bar](https://developer.chrome.com/docs/lighthouse/pwa/themed-omnibox/)."
1558
- },
1559
- "core/audits/themed-omnibox.js | failureTitle": {
1560
- "message": "Does not set a theme color for the address bar."
1561
- },
1562
- "core/audits/themed-omnibox.js | title": {
1563
- "message": "Sets a theme color for the address bar."
1564
- },
1565
1379
  "core/audits/third-party-cookies.js | description": {
1566
1380
  "message": "Support for third-party cookies will be removed in a future version of Chrome. [Learn more about phasing out third-party cookies](https://developer.chrome.com/en/docs/privacy-sandbox/third-party-cookie-phase-out/)."
1567
1381
  },
@@ -1616,18 +1430,6 @@
1616
1430
  "core/audits/third-party-summary.js | title": {
1617
1431
  "message": "Minimize third-party usage"
1618
1432
  },
1619
- "core/audits/timing-budget.js | columnMeasurement": {
1620
- "message": "Measurement"
1621
- },
1622
- "core/audits/timing-budget.js | columnTimingMetric": {
1623
- "message": "Metric"
1624
- },
1625
- "core/audits/timing-budget.js | description": {
1626
- "message": "Set a timing budget to help you keep an eye on the performance of your site. Performant sites load fast and respond to user input events quickly. [Learn more about performance budgets](https://developers.google.com/web/tools/lighthouse/audits/budgets)."
1627
- },
1628
- "core/audits/timing-budget.js | title": {
1629
- "message": "Timing budget"
1630
- },
1631
1433
  "core/audits/unsized-images.js | description": {
1632
1434
  "message": "Set an explicit width and height on image elements to reduce layout shifts and improve CLS. [Learn how to set image dimensions](https://web.dev/articles/optimize-cls#images_without_dimensions)"
1633
1435
  },
@@ -1721,8 +1523,8 @@
1721
1523
  "core/audits/work-during-interaction.js | presentationDelay": {
1722
1524
  "message": "Presentation delay"
1723
1525
  },
1724
- "core/audits/work-during-interaction.js | processingTime": {
1725
- "message": "Processing time"
1526
+ "core/audits/work-during-interaction.js | processingDuration": {
1527
+ "message": "Processing duration"
1726
1528
  },
1727
1529
  "core/audits/work-during-interaction.js | title": {
1728
1530
  "message": "Minimizes work during key interaction"
@@ -1799,12 +1601,6 @@
1799
1601
  "core/config/default-config.js | bestPracticesUXGroupTitle": {
1800
1602
  "message": "User Experience"
1801
1603
  },
1802
- "core/config/default-config.js | budgetsGroupDescription": {
1803
- "message": "Performance budgets set standards for the performance of your site."
1804
- },
1805
- "core/config/default-config.js | budgetsGroupTitle": {
1806
- "message": "Budgets"
1807
- },
1808
1604
  "core/config/default-config.js | diagnosticsGroupDescription": {
1809
1605
  "message": "More information about the performance of your application. These numbers don't [directly affect](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/) the Performance score."
1810
1606
  },
@@ -1817,12 +1613,6 @@
1817
1613
  "core/config/default-config.js | firstPaintImprovementsGroupTitle": {
1818
1614
  "message": "First Paint Improvements"
1819
1615
  },
1820
- "core/config/default-config.js | loadOpportunitiesGroupDescription": {
1821
- "message": "These suggestions can help your page load faster. They don't [directly affect](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/) the Performance score."
1822
- },
1823
- "core/config/default-config.js | loadOpportunitiesGroupTitle": {
1824
- "message": "Opportunities"
1825
- },
1826
1616
  "core/config/default-config.js | metricGroupTitle": {
1827
1617
  "message": "Metrics"
1828
1618
  },
@@ -1835,21 +1625,6 @@
1835
1625
  "core/config/default-config.js | performanceCategoryTitle": {
1836
1626
  "message": "Performance"
1837
1627
  },
1838
- "core/config/default-config.js | pwaCategoryDescription": {
1839
- "message": "These checks validate the aspects of a Progressive Web App. [Learn what makes a good Progressive Web App](https://web.dev/articles/pwa-checklist)."
1840
- },
1841
- "core/config/default-config.js | pwaCategoryManualDescription": {
1842
- "message": "These checks are required by the baseline [PWA Checklist](https://web.dev/articles/pwa-checklist) but are not automatically checked by Lighthouse. They do not affect your score but it's important that you verify them manually."
1843
- },
1844
- "core/config/default-config.js | pwaCategoryTitle": {
1845
- "message": "PWA"
1846
- },
1847
- "core/config/default-config.js | pwaInstallableGroupTitle": {
1848
- "message": "Installable"
1849
- },
1850
- "core/config/default-config.js | pwaOptimizedGroupTitle": {
1851
- "message": "PWA Optimized"
1852
- },
1853
1628
  "core/config/default-config.js | seoCategoryDescription": {
1854
1629
  "message": "These checks ensure that your page is following basic search engine optimization advice. There are many additional factors Lighthouse does not score here that may affect your search ranking, including performance on [Core Web Vitals](https://web.dev/explore/vitals). [Learn more about Google Search Essentials](https://support.google.com/webmasters/answer/35769)."
1855
1630
  },
@@ -2519,9 +2294,6 @@
2519
2294
  "core/lib/i18n/i18n.js | columnName": {
2520
2295
  "message": "Name"
2521
2296
  },
2522
- "core/lib/i18n/i18n.js | columnOverBudget": {
2523
- "message": "Over Budget"
2524
- },
2525
2297
  "core/lib/i18n/i18n.js | columnRequests": {
2526
2298
  "message": "Requests"
2527
2299
  },
@@ -2696,6 +2468,9 @@
2696
2468
  "core/lib/lh-error.js | requestContentTimeout": {
2697
2469
  "message": "Fetching resource content has exceeded the allotted time"
2698
2470
  },
2471
+ "core/lib/lh-error.js | targetCrashed": {
2472
+ "message": "Browser tab has unexpectedly crashed."
2473
+ },
2699
2474
  "core/lib/lh-error.js | urlInvalid": {
2700
2475
  "message": "The URL you have provided appears to be invalid."
2701
2476
  },
@@ -2732,9 +2507,6 @@
2732
2507
  "flow-report/src/i18n/ui-strings.js | categoryPerformance": {
2733
2508
  "message": "Performance"
2734
2509
  },
2735
- "flow-report/src/i18n/ui-strings.js | categoryProgressiveWebApp": {
2736
- "message": "Progressive Web App"
2737
- },
2738
2510
  "flow-report/src/i18n/ui-strings.js | categorySeo": {
2739
2511
  "message": "SEO"
2740
2512
  },
@@ -3401,9 +3173,6 @@
3401
3173
  "report/renderer/report-utils.js | passedAuditsGroupTitle": {
3402
3174
  "message": "Passed audits"
3403
3175
  },
3404
- "report/renderer/report-utils.js | pwaRemovalMessage": {
3405
- "message": "As per [Chrome’s updated Installability Criteria](https://developer.chrome.com/blog/update-install-criteria), Lighthouse will be deprecating the PWA category in a future release. Please refer to the [updated PWA documentation](https://developer.chrome.com/docs/devtools/progressive-web-apps/) for future PWA testing."
3406
- },
3407
3176
  "report/renderer/report-utils.js | runtimeAnalysisWindow": {
3408
3177
  "message": "Initial page load"
3409
3178
  },