v12.0.0
We expect this release to ship in the DevTools of Chrome 126, and to PageSpeed Insights within 2 weeks.
New Contributors
Thanks to our new contributors 👽🐷🐰🐯🐻!
- Ashley Rich @A5hleyRich
- MrAdib @JohnAdib
Notable Changes
PWA Category Removal
As per Chrome’s updated Installability Criteria, Lighthouse has removed the PWA category. For future PWA testing, users will be directed to use the updated PWA documentation.
SEO Category Reorganization
The SEO category has been updated to reflect the priorities of Google search in 2024. As such, several audits have been removed or moved to other categories:
- The
is-crawlableaudit is now weighted high enough to fail the SEO category on its own. (#15933) - The
viewportandfont-sizeaudits are no longer priorities for SEO, but are still important for UX in general so they have been moved to the best practices category. (#15930) - The
pluginsaudit is no longer a priority for SEO and has been removed. (#15928) - The
tap-targetsaudit is no longer a priority for SEO and has been replaced with thetarget-sizeaudit in accessibility. (#15906)
Overall Savings Deprecation
The overallSavingsMs value on performance diagnostic audits has been deprecated (#15902). We recommend using metricSavings.LCP or metricSavings.FCP to understand the estimated metric savings of performance diagnostics.
🆕 New Audits
- The
aria-conditional-attr,aria-deprecated-roleandaria-prohibited-attrAxe checks have been added to the Lighthouse accessibility category. (#15963) - The
redirects-httpaudit has been brought back, but will only passively check for a http -> https redirect if the provided URL happens to be on http (#13548)
Other Audit Changes
- The
layout-shifts-elementsaudit is removed. Improved layout shift information can be found in thelayout-shiftsaudit. (#15931) - The
no-unload-listenersaudit is removed. Unload listeners are deprecated and are still flagged in thedeprecationsandbf-cacheaudits. (#15874) - The
duplicate-id-activeaudit is removed because it's corresponding Axe check is deprecated. (#15900) - The
uses-rel-preloadandpreload-fontsaudits have been moved to the experimental config. Preload advice is still on hold and these audits were already in a disabled state. (#15876)
💥 Breaking Changes
- split up
CSSUsageartifact (#15952) - remove budgets (#15950)
- remove relevant audits lists from config (#15878)
- remove
ScriptElementsartifact (#15879) - config: use explicit diagnostic group (#15901)
- service-worker: remove
service-workergatherer (#15942)
Core
- remove pre-v10 compat for page graph construction (#15948)
- a11y: re-enable target-size hidden audit (#15888)
- driver: add sendCommandAndIgnore (#15913)
- gather: handle crash if CDP target crashes (#11840)
- lantern: always use flexible network ordering (#14612)
- lantern: remove LR statistics (#15946)
- lantern: inline rtt constant (#15944)
- lantern: add LanternError and adapter to LH error (#15937)
- lantern: correct overlapping tasks in CPU nodes (#15938)
- lantern: duplicate isNonNetworkProtocol in lib/lantern (#15936)
- lantern: replace usage of LH.Artifacts.ProcessedTrace (#15905)
- lantern: move lantern metrics to lib/lantern (#15875)
- metric: remove gatherContext mode check (#15899)
- render-blocking: use trace engine as the source of truth (#15839)
- runner: use early return for readability (#15914)
- seo: support Persian in link-text audit (#15949)
- target-size: use binary display mode (#15910)
Report
- fix hidden audit handling for non-perf categories (#15968)
Deps
- upgrade
tldts-icannto 6.1.16 (#15967) - upgrade
third-party-webto 0.24.2 (#15966) - upgrade puppeteer to 22.6.5 (#15951)
Clients
- viewer: stop using legacy DOM api (#15964)
I18n
- import (#15958)
Docs
- bug-report: require users to read FAQs (#14383)
- readme: add DeploymentHawk to the list of integrations (#15847)
Tests
- refresh sample artifacts (#15962)
- invalidate devtools build cache (#15947)
- update network target type expectations (#15916)
Misc
- deduplicate all the dom helpers (#15960)
- merge changelog from branch-11 (#15957)
- remove
BenchmarkIndexesbase artifact (#15941) - update public gatherer list (#15940)
- remove residual
lighthouse-clifile (#15935) - use "processing duration" instead of "processing time" for INP (#15893)
- treemap: fix column sorting when some values are blank (#15959)