Releases: GoogleChrome/lighthouse
v9.4.0
We expect this release to ship in the DevTools of Chrome 100, and to PageSpeed Insights within 2 weeks.
Notable Changes
- Allow auditing of navigations triggered by user interactions in user flows. See our user flow docs for more info. (#13496)
Core
- a11y: change link in category description to web.dev (#13638)
- full-page-screenshot: wait for doubleraf, network quiet (#13663)
- hreflang: remove eval, import axe valid-langs.js directly (#13385)
- inputs: refactor form-elements gatherer (#13662, #13671)
- page-functions: set style in getOuterHTMLSnippet without violating CSP (#13636)
- runner: independent gather and audit functions (#13569)
- uses-long-cache-ttl: ignore
stale-while-revalidate
(#13612)
Report
- add options onPrintOverride and onSaveFileOverride (#13529)
- add options disableFireworks and disableDarkMode (#13649)
- add onViewTrace to renderer options (#13528)
- remove pausing fireworks on click (#13650)
- fix fireworks (#13635)
Deps
Tests
- use simpler assertion in report-renderer-axe-test.js (#13658)
- fix single node a11y tests (#13626)
- devtools: sync (#13656)
- devtools: update report resource names (#13615)
- smoke: test array
_includes
andlhr.timing
(#13619)
Misc
- temporarily remove brendan from triage rotation (#13618)
v9.3.1
v9.3.0
We expect this release to ship in the DevTools of Chrome 100, and to PageSpeed Insights within 2 weeks.
Notable Changes
- Fixed a major bug introduced in 9.0 that broke
--cli-flags-path
#13589
Core
- preload-lcp-image: enable audit (#13599)
- ensure good and average scores start exactly at control points (#13559)
- fr: don't throw on unknown --only-categories value (#13499)
- inspector-issues: collect all issue types (#13462, #13603, #13595)
- object-alt: remove md syntax around "alt" (#13517)
- runner: asset manager helper (#13519)
CLI
Report
- allow client to configure how save-html is implemented (#13518)
Deps
- update various runtime deps (#13483)
- update various devDeps (#13485)
- update robots-parser to latest (#13554)
- update transitive deps to quiet vulnerability alerts (#13538)
- lighthouse-stack-packs: upgrade to 1.7.0 (#13604)
- snyk: update snyk snapshot (#13498, #13598)
- yargs: upgrade to 17.3.1 (#13590)
- yargs-parser: upgrade to 21.0.0 (#13597)
Clients
- use minimal 'url' polyfil instead of url-shim (#13545)
- devtools: add FR runners to DevTools entry (#13593)
I18n
- import (#13602)
Docs
- update devtools panel throttling details (#13504)
Tests
- add snapshot tests for cli-flags.js (#13596)
- tweak some CI job names for clarity (#13549)
- split devtools ci into build, web-tests and smoke jobs (#13546)
- more targeted caching for devtools build (#13540)
- run most smoke tests on devtools (#13456)
- clean up and add comments to cdt layout test scripts (#13471)
- devtools: ensure WebSQL table is populated (#13579)
v9.2.0
We expect this release to ship in the DevTools of Chrome 99, and to PageSpeed Insights within 2 weeks.
Notable Changes
- move no-unload-listeners to perf category (#13497)
Core
- font-size: fix CSS selector regex (#13455)
- fcp: handle negative request
endTime
(#13452) - legacy-javascript: update polyfilling, drop some signals (#13482, #13442)
- cache fetch to avoid bad polyfills (#13476)
- check equality of computed artifacts using dependency keys (#13430)
⛏️👷 Fraggle Rock
Support for auditing user flows (#11313)
Report
- psi: update styles for tighter fit in narrow viewports (#13355)
Deps
Tests
- smoke: fix chromestatus url (#13475)
- split smoke tests into one test per file (#13461)
- fix devtools build command (#13457)
- move sharding higher so smokehouse-bundle can also shard (#13387)
- port axe test to pptr (#13450)
Misc
v9.1.0
We expect this release to ship in the DevTools of Chrome 98, and to PageSpeed Insights within 2 weeks.
New Contributors
Thanks to our new contributors 👽🐷🐰🐯🐻!
- @whitep4nth3r
- Adam Read @adamread
Notable Changes
- If using Next.js, you will now see advice specific to it in some audits (#13424)
Core
- canonical: remove cross-origin check (#13412)
- add original location to most usages of source-location (#13393)
- mindfully order properties in the lhr (#13418)
- ensure log-normal score is always in correct range (#13392)
- installable-manifest: pipeline-restarted check (#13365)
Report
- remove margin when saving html in standalone report (#13409)
- consistent red display text (#13391)
- treemap: correct percentages when 0 bytes JS (#13382)
⛏️👷 Fraggle Rock
Support for auditing user flows (#11313)
Deps
Clients
I18n
- import (#13427)
Docs
Tests
- fix undefined HTMLInputElement in bundle-test (#13421)
- make inline-fs-test not reliant on cwd (#13420)
- increase timeout for axe test (#13386)
Misc
v9.0.0
We expect this release to ship in the DevTools of Chrome 98. It is already live in the new PageSpeed Insights.
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
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 withrenderCategoryScore
(#13269)
⛏️👷 Fraggle Rock
Support for auditing user flows (#11313)
- handle 0 throughput in timespan (#13323)
- 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
Clients
- devtools: only use locales that have locale files to download (#13214)
- psi: retire prepareLabData, reuse standard report rendering (#13229)
I18n
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)
v8.6.0
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
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
- import (#13206)
Docs
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)
v8.5.1
This is a patch release to fix an issue in the CLI when error reporting has been enabled.
New Contributors
Thanks to our new contributor 👽🐷🐰🐯🐻!
- Yorkie Liu @yorkie
CLI
- fix crash with Sentry init (#13104)
⛏️👷 Fraggle Rock
Support for auditing user flows (#11313)
v8.5.0
We expect this release to ship in the DevTools of Chrome 96, and to PageSpeed Insights within 2 weeks.
New Contributors
Thanks to our new contributors 👽🐷🐰🐯🐻!
Konstantin Popov @KonstHardy
Can Umay @canumay
Core
- lazy-lcp: fix failureTitle in lcp-lazy-loaded (#13049)
- tracing: remove cpu_profiler.hires (#13056)
- tsc: add base tsconfig for config inheritance (#13072)
- make main tsc compile cacheable (#13069)
⛏️👷 Fraggle Rock
Support for auditing user flows (#11313)
- cleanup driver on run completion (#13062)
- setup emulation and throttling for timespans (#13058)
- support additionalTraceCategories (#13030)
- add support for plugins (#13028)
- move GatherContext to baseArtifacts (#13033)
- preserve traces on failed page load (#13027)
- move HostUserAgent/FormFactor back to base artifacts (#12969)
- use devtools throttling by default in timespan mode (#13013)
- collect OOPIF network data (#12992)
- flow: summary sections (#13086)
- flow: topbar (#13065)
CLI
- convert to ES modules (#13045)
Report
- make metric value more prominent in table (#13036)
- 3p-filter: drop for/id as elements are already nested (#13067)
- add gatherMode option to category score (#13029)
- add fractional category scores (#13009)
Deps
Clients
Docs
- readme: add Peyk to the list of integrations (#13055)
Tests
- add FR integration scenarios (#13092)
- update SVGOMG expectations (#13088)
- restore use of latest node 16 in CI (#13079)
- eslint: trailing commas for import/export (#13059)
- smokehouse: add flag for test sharding (#13047)
- smokehouse: convert to ES modules (#13046)
- fix flaky robots smoke failure (#13031)
- smoke: upload smokehouse artifacts on failure (#13010)
Misc
v8.4.0
We expect this release to ship in the DevTools of Chrome 95, and to PageSpeed Insights within 2 weeks.
New Contributors
Thanks to our new contributors 👽🐷🐰🐯🐻!
Emmanouil Zoumpoulakis @emzoumpo
Milutin Kristofic @milutin
Bjørn Erik Pedersen @bep
Jerome Cukier @jckr
Saurav Kumar @svkrclg
New Audits
- Detect when the LCP element is lazy-loaded. Above-the-fold images that are lazily loaded render later in the page lifecycle, which can delay the largest contentful paint. Learn more (#12838)
Core
- network-request: identify filesystem resources as non-network (#12970)
- viewport: add viewport audit as perf diagnostic (#12972)
- csp-evaluator: bump package version (#12990)
- config: keep full-page-screenshot in skipAudits case (#12645)
- large-javascript-libraries: delete (#12941)
⛏️👷 Fraggle Rock
Support for auditing user flows (#11313)
- collect devtoolsLogs on pageLoadError (#12980)
- add config validation (#12945)
- align navigation failure behavior (#12862)
- add protocol timeout to session (#12913)
- parity on Stacks and FullPageSnapshot gatherers (#12907)
- http-status-code: navigation only (#13005)
- add --debugNavigation setting (#12902)
- flow: sidebar mocks (#13002)
- flow: embedded lighthouse report (#12989)
- flow: summary page (#12973)
- flow: navigation sidebar (#12929)
- flow: standalone shell report with preact (#12850)
Report
- accessible n/a icon (#12984)
- split topbar features (#12926)
- prefix all classnames with lh- (#12985)
- isolate type checking (#12953, #12952, #12951)
- use postMessage to open viewer outside devtools (#12927)
- better deduping of warnings (#12355)
Deps
Clients
- lightrider: use iframe fetcher (#13006)
- treemap: convert to ES modules (#12892)
- viewer: make entire directory use modules (#12975)
Docs
- auth: add missing build step in README (#12911)
- changelog: fix typo in changelog.md (#12997)
- hacking: add links to buildtracker/pr-tracking (#12922)
Tests
- avoid node 16.9.0 (#13012)
- ci: restore ToT Chromium download (#12943, #12950)
- dom: fix node 16 createObjectURL bug (#12935)
- eslint: add import/order rule (#12998)
- fr: convert screenshot expectations (#12912)
- smoke: check for passing robots-txt (#13007)
- smoke: fix dbw console error expectation (#13011)
- smoke: print command to rerun failures (#12924)
- devtools: sync (#12899)
- devtools: tsc type override bug workaround (#12933)
- create faux psi report (#12815)
Misc
- the great sample rebaseline (#12932)
- restructure types to use project references (#12914, #12946, #12940)
- build: sample flow report (#12930)
- build: do not include locales in devtools bundle (#12921)
- build: remove template.html from devtools report resources (#12891)
- build: create UMD bundle build (#12898)
- build: normalize sample-report build naming (#12901)
- build: prefer paths when using gh-pages-app (#12905)
- build: refactor devtools bundle tweaking (#12974)
- tweak folder used for vercel deployment (#12879)
- cli: improve error if invalid value for
--output
argument is passed (#12836) - exit collect-strings script with error code on failure (#12971)