lighthouse v3.1.0 Release Notes

Release Date: 2018-09-06 // over 5 years ago
  • Full Changelog

    ๐Ÿ†• New Contributors!

    Huge thanks to @midzer and @justinribeiro for being so darn helpful. Great stuff. :D

    ๐Ÿ“š And thanks to @mettamatt for some helpful documentation. Who doesn't love better docs?!

    Notable changes

    • red/orange/green color buckets for scores are tougher now. (#5831)
    Previously Now
    Red (bad) 0-44 0-49
    Orange (average) 45-74 50-89
    Green (good) 75-100 90-100

    Scoring itself hasn't changed; only what color is used to decorate a score.

    • trace-processor: fix bug where top-level events weren't being found in the trace (#5841)

    Core

    • normalize URL before checking equality (#5960)
    • ๐Ÿ”ฆ expose LighthouseRunWarnings on audit context (#5684)
    • adjust audit titles for consistency (#5717)
    • export any page-functions as string (#5902)
    • all ByteEfficiency audits require a trace (#5840)
    • โœจ enhanced noopener output (#5857)
    • errors: class rename and re-source page load errors (#5972)
    • ๐Ÿ›  fix defaultConfig UIStrings and exit code for test (#5884)
    • โœ‚ remove last debugString references (#5856)
    • โšก๏ธ redirects: update redirects to use OpportunityDetails (#5791)
    • warn when extensions affected perf (#5666)
    • driver: handle when page redefines global.URL (#5748)
    • gather-runner: call clearDataForOrigin on teardown (#5933)
    • lhr: expose environment info (#5871)
    • lr: add LR presets for desktop and mobile (#5886)
    • lr: drop maxWaitForLoad 45 -> 35 (#5938)
    • network: handle LR transferSize (#5895)
    • network-analyzer: infer RTT from receiveHeadersEnd (#5694)
    • โšก๏ธ optimized-images: support non-standard mime types (#5688)
    • ๐Ÿšš preload: remove CRC dependency (#5901)
    • screenshot-thumbnails: improve caching (#5976)
    • ttfb: reuse requestMainResource (#5657)
    • trace-of-tab: only use navstart of chrome/http documents (#5917)
    • tracing-processor: throw on no top level events (#5878)
    • ๐Ÿ‘‰ uses-long-cache-ttl: handle multiple cache-control headers (#5745)

    Extension

    • access core through module instead of Runner (#5855)
    • ๐Ÿ‘‰ tweak runLighthouseAsInCLI jsdoc (#5812)
    • ๐Ÿ”จ refactor option/flag passing (breaking change) (#5769)
    • โœ‚ remove X-UA-Compatible meta (#5739)
    • popup: keep feedback class (#5872)

    i18n

    • โž• add i18n 'type' for prlint (#5880)
    • minor message and description changes based on translator feedback (#5829)
    • reframe the ICU message descriptions with placeholders (#5737)
    • export rendererFormattedStrings (#5713)
    • ๐ŸŽ extract performance category strings to UIStrings (#5716)
    • ๐Ÿ”Š always use english for status logs (#5727)
    • โž• add 'ln' locale which maps to 'fr' (#5879)
    • ๐Ÿ‘Œ support descriptions (#5718)
    • โž• add [ICU Syntax] label to relevant message descriptions (#5736)
    • import psuedo-locale json from TC (#5726)
    • incorporate 52 languages into messages pipeline (#5781)
    • โž• add descriptions to UI strings (#5743)
    • โž• add strings of the opportunity group split (first paint, overall) (#5744)
    • โž• add locale fallback when language not supported (#5746)
    • localize strings at end of run (#5655)
    • always use formatted strings for extension popup (#5761)
    • โž• add strings for user timing entries table (#5806)
    • sort the ICU messages when saved (#5771)
    • โœ… roll latest TC messages (#5802)
    • โž• add localized messages for 52 locales (#5780)
    • โž• add assertion script (#5686)
    • report: use LHR locale for toLocaleString (#5734)
    • report: localize CRC renderer strings (#5730)

    Types

    • don't use index signature in LHErrors (#5896)
    • type check config files (#5858)
    • don't use index signature in simulator.js (#5897)
    • โšก๏ธ update debugger protocol type checking (#5836)
    • โœ‚ remove more reliance on implicit index signatures (#5874)
    • โšก๏ธ update types in emulation.js (#5830)
    • tighten traceOfTab timing types (#5887)
    • โšก๏ธ update to ts 3.1 to support new protocol defs (#5942)
    • โšก๏ธ update to latest tsc (#5581)
    • NetworkRequest.RESOURCE_TYPES type fix (#5851)
    • โž• add explicit index signature in mainthread-work-breakdown (#5859)
    • cli: make LH.Flags type correct and consistent (#5849)

    Report

    • ๐Ÿ”— link to our own "unused css" reference doc (#5698)
    • ๐Ÿ”ฆ expose prepareLabData directly as a fn (#5818)
    • ๐Ÿ’… responsive styles (#5706)
    • โž• add PSI.prepareLabData() (#5804)
    • adopt 80-char line-length license (#5757)
    • โž• add method to get the final screenshot (#5673)
    • metrics: display metrics in seconds (#5914)
    • psi: add Util.prepareReportResult method (#5766)
    • ๐Ÿ’… psi: reset template styles on every call of prepareLabData (#5877)
    • psi: add lab data summary sentence (#5961)

    ๐Ÿ†• New Audits

    • a11y: add manual audit for interactive element affordance (#5764)

    โœ… Tests

    • ๐Ÿ‘ท quiet down collect-scripts during CI (#5801)
    • ๐Ÿ‘ better display value tests with i18n (#5720)
    • ๐Ÿšš dbw: remove createShadowRoot call (#5906)
    • 0๏ธโƒฃ jest: disable coverage collection by default (#5772)
    • โšก๏ธ smokehouse: update expectations for HTML Imports deprecation (#5943)
    • โšก๏ธ smokehouse: update passive listener expectations (#5899)

    Deps

    • โšก๏ธ snyk: update snyk snapshot (#5774), (#5773), (#5762), (#5691)
    • depend on speedline-core, rather than the cli (#5800)

    ๐Ÿ“„ Docs

    • headless: Require Node 8 and apt install chromium (#5974)
    • headless: example script to post report as gist (#5975)\
    • integrations: Add SpeedCurve to "Lighthouse Integrations" (#5732)
    • ๐Ÿ”— link FCP audit description to lighthouse docs (#5850)
    • ๐Ÿšš puppeteer: remove appMode mention (#5923)
    • readme: mention chrome-flags troubleshooting in getting started (#5916)
    • report: add a renderer readme (#5725)
    • scoring: http2 redirect PWA score issue (#5929)

    Misc

    • 0๏ธโƒฃ cli: enableErrorReporting must be undefined by default (#5854)
    • ๐Ÿฑ asset-saver: tweak output format of logAssets (#5696)
    • logger: add time/timeEnd methods (#5905)
    • ๐Ÿ›  fix grocers apostrophe typo (API's v APIs) (#5948)