lighthouse v9.0.0 Release Notes

Release Date: 2021-11-15 // 22 days ago
  • Full Changelog

    πŸš€ We expect this release to ship in the DevTools of Chrome 98, and to PageSpeed Insights within 2 weeks.

    πŸ‘€ See the What's new in Lighthouse 9.0 blog post. Continue for the changelog.

    πŸ†• New Contributors

    Thanks to our new contributors πŸ‘½πŸ·πŸ°πŸ―πŸ»!

    • Sergii Bondarenko @BR0kEN-
    • Prerana Nawar @prerana1821

    Notable Changes

    • 🚚 [BREAKING] move to minimum Node 14 (#13243)
    • a11y: add relatedNodes to accessibility audits (#13193)

    βœ‚ Removed Audits

    • 🚚 [BREAKING] appcache-manifest: remove audit (#13287)
    • 🚚 [BREAKING] external-anchors-use-rel-noopener: remove audit (#13298)
    • 🚚 [BREAKING] remove the redirect pass and redirects-http audit (#12643)

    Preview: Audit User Flows

    πŸ‘€ Lighthouse now offers auditing user flows, scripted with Puppeteer, via the Node CLI. This means you can now audit a page beyond its initial load. See the Lighthouse user flows blog post for more.

    Core

    • πŸ›  fix launching chrome in node 17 (#13301)
    • ⬇️ reduce image hotlinking in the report (#13185)
    • πŸ“‡ emulation: set client-hints metadata when spoofing the UA (#13341)
    • emulation: bump chrome version to m98 (#13340)
    • config: use abbreviation for pwa category title (#13270)
    • πŸ—„ deprecations: use inspector issues (#13342)
    • avoid fatal errors when collecting base artifacts (#13312)
    • 🚚 [BREAKING] errors-in-console: remove url property from items (#13286)
    • 🚚 [BREAKING] image-size-responsive: remove elidedUrl, elide url property instead (#13226)
    • 🚚 [BREAKING] image-elements: remove mimeType from artifact (#13265)

    Report

    • introduce the new report api, add dom.rootEl (#13277, #13279, #13361)
    • πŸ‘‰ make denser. changes to typography, group descriptions, more (#13249)
    • display final screenshot prominently (#13123)
    • redesign runtime settings (#13125, #13350)
    • 🚚 help-dialog: remove timespan SEO (#13354)
    • order metrics by row (#13328)
    • sort audits by weight (#13053)
    • translate newly added report strings (#13308)
    • [BREAKING] group perf audits by details type. change the meaning of an audit whose group is not defined–before no group implied an audit would not be renderered, but now an explicit hidden group is used (#13241, #13310)
    • 🚚 [BREAKING] pwa: remove renderScoreGauge, replaced with renderCategoryScore (#13269)

    β›οΈπŸ‘· Fraggle Rock

    Support for auditing user flows (#11313)

    • πŸ– handle 0 throughput in timespan (#13323)
    • 0️⃣ clone default categories to avoid modification (#13337)
    • βž• add timespan support to h2 (#12814)
    • 🚚 report: remove smooth scrolling (#13317)
    • report: network throttling settings (#13305)
    • report: use filmstrip thumbnail in navigation (#13283)
    • report: fix report anchors (#13233)
    • report: full page screenshot renderer (#13276)
    • report: category tooltip highest impact (#13230)
    • report: import lhr strings (#13215)
    • report: i18n formatter (#13190)
    • πŸ’… report: mock styles (#13220)

    Deps

    • ⬆️ bump lighthouse-plugin-publisher-ads (#13339)
    • ⚑️ deps: update chrome-launcher to 0.15.0 (#13353)

    Clients

    • devtools: only use locales that have locale files to download (#13214)
    • psi: retire prepareLabData, reuse standard report rendering (#13229)

    I18n

    • import (#13360)
    • βž• add better support for the default locale in bundles (#13211)

    βœ… Tests

    • πŸ‘• eslint: add export rule (#13282)
    • ⏱ longer timeout for installability errors check (#13297)
    • ignore .tmp directory in jest modules (#13285)
    • βž• add cdt folders to devtools test cache buster (#13268)
    • ⚑️ update devtools default branch to 'main' (#13266)
    • βœ… ci tests should include all files (#13235)
    • report: throw on axe error (#13234)
    • βœ… flow: puppeteer test (#13281)

    Misc

    • πŸ“¦ publish: include the report bundle in npm package (#13349)
    • πŸ— build: create inline-fs rollup plugin to replace brfs (#13232, #13240, #13248, #13272, #13275, #13278, #13280)
    • πŸ— build: use rollup to build lighthouse-core bundles (#12771)
    • πŸ— build: call close method on rollup builds (#13307)
    • πŸ— build: use prepack script to build report (#13261)
    • πŸ— build: do not assign runBundledLighthouse in devtools bundle (#13311)
    • πŸ— build: use cross platform sed for devtools script (#13242)
    • ⏱ preserve error stack when using promise timeout (#13333)
    • πŸ‘Œ support old devtools in yarn run-devtools (#13284)
    • βž• add report bundles to nightly build (#13222)
    • πŸ“‡ rename lighthouse-treemap to treemap (#13246)
    • πŸ“‡ rename lighthouse-viewer to viewer (#13247)
    • πŸš€ simplify release process, run package-test in CI (#13212)
    • βž• add os to bug report template (#13245)
    • proto: add throttling and throttling_method (#13309)
    • βͺ revert missing bundle tests (#13289)
    • πŸ›  fix typo (#13224)

Previous changes from v8.6.0

  • Full Changelog

    πŸš€ We expect this release to ship in the DevTools of Chrome 97, and to PageSpeed Insights within 2 weeks.

    πŸ†• New Contributors

    Thanks to our new contributors πŸ‘½πŸ·πŸ°πŸ―πŸ»!

    • meehawk @meehawk
    • Edwin Gustafson @edwingustafson
    • Yorkie Liu @yorkie

    Core

    • crawlable-anchors: ignore event listeners, validate url (#13105)
    • full-page-screenshot: fix emulation reset (#13175)
    • response-compression: add x-content-encoding-over-network (#13176)
    • share localization between core and report (#13146)
    • ⚑️ update cdt SourceMap to latest devtools frontend (#13095)
    • stack-packs: simplify i18n filename lookup (#13133)

    β›οΈπŸ‘· Fraggle Rock

    Support for auditing user flows (#11313)

    • βž• add UserFlow usability improvements (#13139)
    • βž• add supportedModes filter to categories (#13161)
    • πŸ– handle cached timespan records (#13181)
    • βž• add parity logging (#13114)
    • animate timespan thumbnail (#13178)
    • 🐎 refine snapshot and timespan performance (#13184)
    • topbar save button (#13109)
    • elide step name (#13171)
    • localized sample (#13143)
    • timeline header (#13128)
    • βž• add help dialog to explain flows (#13159)
    • collect i18n strings (#13152)

    CLI

    • βž• add list-locales flag (#12983)
    • always return correct version (#13130)

    Report

    • πŸ’… move logger styles into js (#13204)
    • βœ‚ remove href from category score gauge (#13180)
    • πŸ’… inject report/assets/styles.css via components.js (#13057)
    • βœ‚ remove smooth scrolling css (#13102)
    • βž• add lh- prefix to remaining show class (#13203)
    • πŸ– handle gauge fragment links in script (#13186)

    Clients

    • πŸ’… psi: include global reports styles in legacy psi rendering (#13151)
    • viewer: swap locale (#10148, #13192)
    • 🚚 viewer: remove devtools disclaimer (#13145)
    • πŸ’… viewer: add body styles (#13144)
    • ⬆️ viewer: upgrade to firebase 9 (#13115)
    • viewer: use access token regardless of firebase auth (#13116)
    • viewer: use new firebase credentials (#13110)

    I18n

    πŸ“„ Docs

    • correct the Node.js version base (#13099)
    • βž• add user flow docs (#13134)

    βœ… Tests

    • πŸ—„ smoke: make specific assertions about deprecations (#13191)
    • ⚑️ update deprecations smoke for M96 (#13179)
    • βœ… make yarn unit run all available unit tests (#13148)
    • βœ… centralize running of docs tests (#13150)
    • βœ… split out axe test (#13142)

    Misc

    • convert lighthouse-core/scripts to ES modules (#13121)
    • βœ‚ remove patrick from issue assigner (#13194)
    • set predictable order for sample json timing entries (#13162)
    • scripts: fix run-devtools sniffing, add error checking (#13163)
    • ensure psi.espanol sample-report es en espanol (#13160)
    • βž• add notes about software versions in issue template (#13089)
    • πŸ— build: fix smokehouse bundle (#13135)
    • πŸš€ build: fix vercel deployment by adopting stricter engines grammar (#13183)
    • πŸ— build: create rollup-plugins.js helper module (#13122)
    • πŸ— build: don't build flow if only --standalone is requested (#13124)