Releases: GoogleChrome/lighthouse
v4.3.1
4.3.1 (2019-04-30)
Core
- support traces missing TracingStartedInBrowser (#7122)
- driver: only fail security state if scheme is not cryptographic (#8338)
Clients
- extension: remove github link in favor of copy to clipboard (#8294)
Deps
- snyk: update snyk snapshot (#8354)
Misc
- add releasing scripts (#8387)
v4.3.0
4.3.0 (2019-04-08)
New contributors!
Thanks to @rdlabo and @yashrajbharti for their first contributions!
Report
Core
- artifacts: rename Scripts to ScriptElements artifact (#7920)
- canonical: move canonical audit to LinkElements (#7080)
- font-display: handle carriage returns (#7712)
- font-display: ignore data URLs (#7684)
- image-aspect-ratio: ignore css background images (#7516)
- jsonld: add structured data validation (#6750)
- lhr: truncate measure timings to hundredths (#7748)
- logging: don't log when closing already closed page (#7576)
- main-thread-tasks: improve event-order error messages (#7745)
- main-thread-tasks: handle last task not finishing (#7728)
- main-thread-tasks: use toplevel tasks in main thread audit (#7711)
- oopif: attach to all descendants (#7608)
- oopif: skip OOPIF network records in some gatherers (#7640)
- optimized-images: cap execution to 5 seconds (#7237)
- settings: add lighthouse channel (#7312)
- remove hreflang gatherer (#7477)
- tap-targets: exclude sticky elements from tap targets audit (#7603)
- vuln-libs: match against all semver ranges provided by snyk (#7402)
- uses-http2: ignore requests from service-worker (#7197)
Docs
- add plugin recipe (#6965)
- readme: Foo integration (#8035)
- url-shim: add comment about public suffix lst (#7671)
Clients
- devtools: refactor build script (#7421, #7567)
- lr: always use transferSize from X-TotalFetchedSize header (#7478)
- lr: gather network timing numbers from headers (#7888)
- lr: add custom config support (#7613)
Tests
- better fatal trace logic error coverage (#7959)
- fix test coverage generation (#7475)
- finish removing mocha (#7429)
- upgrade jest to fix current node 11 build (#7413)
- smoke: remove trivial uses of rawValue from expectations (#7780)
- smoke: set Content-Type for files served by static-server.js (#7612, #8015, #8078)
Misc
- chore: remove old dep postinstall-prepare (#7647)
- remove unused typedef (#8075)
- specify types for some dependency-graph options objects (#7962)
- simplifications in simulator/connection-pool (#7894)
- drive-by code cleanup in BaseNode (#7723)
- remove lhr-lite.d.ts (#7991)
- remove obsolete Util.formatDisplayValue (#7628)
- various spelling fixes (#7370, #7492, #7427)
- fix unit-viewer command for windows (#7624)
- remove obsolete unused files (#7476)
- cli: add --plugins flag to load from the command line (#7407)
- gather: update comment re: ClientRect copying (#7785)
Deps
I18n
v4.2.0
4.2.0 (2019-03-06)
We expect this release to ship in the DevTools of Chrome 74.
New contributors!
@pra85, @tgfjt, @gidztech and @jburger424. Thank ya!
New Audits
- tap-targets: verify tap targets are well sized and distinct (#5846)
Report
- reorganize a11y audit groups (#7129)
- clip exceptionally long URLs in the header (#6858)
- details-renderer: use new audit-details types (#7192)
Core
- fid: add Max Potential FID to JSON (#5842)
- artifacts: unify AnchorElements into single gatherer (#7101)
- artifacts: include inline scripts in Scripts artifact (#7065)
- artifacts: create ViewportMeta computed artifact (#7264)
- artifacts: add TestedAsMobileDevice base artifact (#7280)
- bootup-time: better attribution (#7059)
- byte-efficiency: use more optimistic GZIP ratios (#7210)
- cache-headers: fix typo in must-revalidate (#7189)
- details-renderer: add snippet details renderer (#6999)
- diagnostics: add diagnostic audits (#7052)
- driver: add waitForFCP timeout (#7356)
- driver: collect network requests from out-of-process iframes (#6922)
- driver: add ' Chrome-Lighthouse' to useragent (#7297)
- emulation: bump chrome useragent to m74 (#7211)
- fcp-3g: remove unused i18n for LR compatibility (#7103)
- font-display: more accurately follow CSS spec (#7191)
- image-elements: cap natural-size fetch time (#7274)
- lantern: add configuration for precomputed network analysis (#7239)
- lhr: include resourceSize in network-requests audit (#7056)
- manifest: remove Manifest artifact in favor of new WebAppManifest (#7078)
- metrics: do not fail if TTI fails (#7132)
- network-analysis: set additional RTT to 0 not NaN (#7156)
- network-recorder: redirects started by script are set as initiators (#7352)
- plugins: add support for groups (#7304)
- seo: remove manual mobile-friendly audit (#7223)
- seo: add rel=canonical test for auditing a domain root (#7228)
- tap-targets: disable font size and tap targets audit on desktop (#7393)
- tap-targets: make tap targets failures more visible (#7373)
- tsc: fix audit details type hierarchy (#7177), #7154, #7285)
- unused-css: change title Defer -> Remove (#7235)
- give sort fallback for broken test details in node 11 (#7216)
- suppress protocol timeout for app manifest bug in LR (#7184)
- optimize tap-targets audit (#7130)
- remove NO_ERROR runtimeError when no error (#7358)
CLI
- write report in runLighthouse before quitting Chrome (#7339)
Deps
- snyk: update snyk snapshot (#7277, (#7233, #7167), #7116)
- updates to weed out transitive vulnerabilities (#7319)
- update cssstyle to parse more named colors, CSS4 colors (#7283)
Docs
- contributing.md: fix typos (#7170)
- fix throttling rate comment and tweak comcast bandwidth (#7374)
- improve explanations of extending and using config files (#7354)
- update throttling docs to public version (#7332)
- readme: add lighthouse-keeper to integrations (#7399)
- docs(related-projects) add react-lighthouse-viewer (#7262)
- readme: Add Fluxguard to the list of integrations (#7249)
- variability: add dedicated variance doc (#7175)
I18n
- fix max potential FID description (#7353)
- ICU syntax correction (#7320)
- seo strings prepped for i18n (#6860)
- translate strings in the tap-targets audit (#7111)
- a11y category title and description (#7113)
- import translated accessibility and lh-error messages (#7008)
Tests
- refactor driver, more gotoURL tests (#7270, #7242, #7212)
- run node 11 in CI (#7230)
- replace non-volatile snapshots with inline literals (#7217)
- smokehouse: refactor to enable Smokerider (#7284)
- smokehouse: +/- operator (#7343)
- smokehouse: gzip test to assert transfer and resource sizes (#7286)
- smokehouse: fail on finalUrl/errorCode mismatches (#7227)
Misc
4.1.0 (2019-01-28)
New contributors!
@castilloandres you da man, man.
Core
- font-size audit: count code points for text length (#6973)
- cache headers audit: ignore private, must-validate, no-cache (#6835)
- introduce Lighthouse plugins (#6959)
- new audit: add FCP on 3G (#7062)
Refactor
- refactor meta element artifacts to single
meta-elements
artifact (#7025) - images: cleanup
ImageUsage
to match other*Elements
artifacts (#7030) - add baseArtifacts (with new WebAppManifest) to passContext (#6957)
- use async/await in evaluateAsync (#7038)
Report / Viewer
- renderer: do not attempt fireworks for devtools (#7090)
- viewer: allow loading RunnerResult json (#7031)
Misc
4.0.0 (2019-01-16)
New contributors!
@mattzeunert, @dima74, @jeffbcross, @knoxmic, and @shogunsea. Thanks!
Major changes
-
A bevy of bug fixes and performance improvements.
-
A special reward for getting a perfect score.
-
A new layout for the PWA category, emphasizing speed, installability, and polish.
Breaking changes
- New PWA category, organization, and scoring (#6395)
- audits'
scoreDisplayMode
'not-applicable'
is now'notApplicable'
(#6783) no-websql
audit removed due to performance cost (#6293)speed-index
scoring now scales based on throttling (#7007)- empty children arrays are now removed from
critical-request-chain
audit result (#6211) - the correct Nexus 5X screen height of 660 now used instead of 732 (#6932)
- throttling constants under
mobile3G
renamed to the more accuratemobileSlow4G
with no change in values (#6163) - typescript definition files are now located under
types/
(#6617) - computed artifact files are now located under
lighthouse-core/computed/
(#6618)
Full Changelog (in addition to the changes in 4.0.0-beta, 4.0.0-alpha.1, and 4.0.0-alpha.0)
Core
- config: reorder categories to match new score gauge order (#6848)
- driver: handle navigation rejections within
Driver.gotoURL
(#6739) - driver: exit early when testing page with insecure certificate (#6608)
- driver:
waitForFCP
when tracing (#6944) - handle invalid network timing data (#6780)
- fix
usesObjectFit
property for ImageElement (#6761) - fonts: resolve URLs relative to stylesheet (#6782)
- lantern: remove unnecessary sort calls (#6900)
- lantern: drop node id from error message (#6774)
- minification: properly handle regex character classes (#6745)
- preconnect: add warning if preconnect link is not used (#6694)
- preload: warn when duplicate requests issued (#6849)
- scoreDisplayMode: change
'not-applicable'
to'notApplicable'
(#6783) - service-worker: check that
start_url
is within SW's scope (#6678) - speedindex: scale scoring coefficients based on throttling (#7007)
- tap-targets: helper functions for working with
ClientRects
(#6703) - url: add intent protocol to
NON_NETWORK_PROTOCOLS
(#6711) - user-timings: move into computed artifact (#6719)
- change
displayValue
to be string only (#6767) - add type checking to
pwmetrics-events
(#6980) - stricter LR-desktop metric scoring (#6969)
- in-page functions refactor (#6702)
Deps
- update axe-core to latest (#7020)
- update details-element-polyfill to 2.2.0 (#6928)
- update tsc to 3.2.2 (#6684)
- snyk: update snyk snapshot (#6888, #6842)
Docs
- readme: add speedrank to integrations list (#6987)
- readme: added simple guidance on install options (#6810)
- configuration.md: update link to pwmetrics (#6816)
- scoring: update TTI references (#6865)
--help
: use HTTPS link to bit.ly/chrome-flags (#6692)- ask people to test a11y issues upstream first (#6764)
Extension
- return
runnerResult
fromrunLighthouseInExtension()
(#6839)
I18n
Report
- pwa: add tooltip to badge gauge (#6689)
- add top-level section for passed audits that had warnings (#6989)
- celebrate all 100s (#5455)
- expand groups within "Passed Audits" by default (#6930)
- fix margin on score gauge wrappers (#6948, #6972)
- support narrow screens (#6857)
- larger margins for audit group summaries (#6688)
- clean up more clump/group/expandable cruft (#6982)
Tests
- smokehouse: assert
errorCode
in expectations (#6851) - smokehouse: use node's native
URLSearchParams
(#6929) - add type checking to
cli/tests/
(#6874) - report: restore old, disabled failed grouping test (#7006)
Misc
4.0.0-beta (2018-11-29)
Core
- service-worker: check that test page is in SW scope (#6609)
- throw fatally on page hang (#6497)
- define new DNS failure LH Error (#6579)
- assert securityIssues before getPageLoadError (#6578)
- remove protocol timeout for Page.navigate (#6413)
- rename webapp-install-banner audit to installable-manifest (#6630)
- computed-artifacts: fix cache and add perf timing (#6619)
Report
- add PWA category badge gauge (#6526, #6670)
- give passed-opportunities group an icon (#6594)
- safari: fix dropdown overlap translateZ (#6546)
- use details-element-polyfill from node_modules (#6593, #6607)
CLI
- exit and kill Chrome on unhandledRejection (#6394)
Tests
- add smoketest for slow service worker (#6648)
Misc
v4.0.0-alpha.2-3.2.1
We accidentally published an alpha release to NPM without the @next
publish tag as v4.0.0-alpha.1
.
This new release (v4.0.0-alpha.2-3.2.1
) is just a republish of our latest stable v3.2.1
, to fix the bug for anyone using lighthouse@latest
.
4.0.0-alpha.1 (2018-11-15)
Warning: This release was accidentally published to NPM without the @next
publish tag. To address this, the stable v3.2.1 release was republished as v4.0.0-alpha.2-3.2.1
. Sorry y'all.
Core
- skip h2 audit in LR (#6564)
- config: faster category validation (#6445)
- driver: wait for Page.frameNavigated for about:blank (#6446)
- lib: add chrome-extension to URL allowedProtocols and add test (#6447)
- pwa: audit and report group renames (#6494)
- seo: properly handle anchors in SVG (#6483)
- increase protocol timeout to 30s (#6505, #6531)
Report
- pwa: give badges to groups with all passing audits (#6504)
- pwa: add pwa-category-renderer (#6486)
- compat: add details-element polyfill for Edge (#6465)
- compat: fix support for edge (#6459)
- compat: ignore Edge's Invalid Argument error (#6456)
- compat: fix summary rendering in FF (#6448)
- handle underscored not_applicable scoreDisplayMode (#6549)
- css: make performance category more compact (#6437)
- rename clump classes; give classes to all audit groups (#6482)
- refactor rendering of top-level failed/passing/etc clumps (#6460)
Misc
4.0.0-alpha.0 (2018-10-31)
New Contributors!
Thanks to @carlesnunez and @justin0022 for their first contributions!
Thanks to @CodeDem for improving how the image-aspect-ratio audit handles small images!
Huge thanks to myself (@hoten) for joining Lighthouse! Go me!
New Audits
- offline-start-url (#6397)
Core
- aspectratio: ignore placeholder images (#6305)
- audit: add utm parameters when calling snyk (#6172)
- audits: clarify diff between load-fast-enough-for-pwa's TTI and perf TTI (#6286)
- axe: disable unused audits (#6180)
- computed: fix new computed artifact interface (#6151)
- config: add new PWA category groups (#6396)
- critical-request-chain: remove empty children from LHR (#6211)
- driver: save performance.now() to avoid conflict (#6387)
- driver: request smaller trace in m71+ (#6117)
- driver: stringify protocol error messages (#6302)
- driver: address bckenny feedback on #6117 (#6285)
- driver: reduce required traceCategories again (54baf91)
- driver: recover from rejection on handleJavaScriptDialog (#6327)
- emulation: fix missing space in mobile UA (#6161)
- icons: defer to manifest-icon type hint for image type (#6230)
- network: handle invalid NetworkRequests (#6157)
- network-analyzer: move throughput to NetworkAnalyzer (#5900)
- perf: add timing instrumentation to measure runtime perf (#3745)
- proto: add proto definition for LHR (#6183)
- simulator: start nodes in observed order (#5362)
- unminified-javascript: replace esprima with custom tokenizer (#5925)
- remove recoverOrThrow / err.fatal (#6343)
- convert computed artifact loading to regular require() (#6204)
- remove no-websql audit (#6293)
- bail on run if insecure ssl certification (#6300)
- make throttled offscreen-images work without TTI (#6039)
- save HTMLElement.p.matches function to avoid conflict (#6283)
- remove fonts gatherer, move font-display to use CSSUsage artifact (#6166)
- remove last dependency on WebInspector (#6209)
- add timeout to all protocol commands (#6347)
- don't load blank page twice in first pass (#6369)
- refactor finding of trace start (#6370)
- increase Page.navigate timeout (#6412)
Report
- fix tooltip hover animation (#6288)
- reframe Fast 3G as Slow 4G (#6163)
- fix html report viewing bugs for Safari (#6143)
- dom-size: right-align the value column (#6372)
Clients
- simplify viewer build process (#6426)
- reorganize file structure and build process (#6344)
- build: ignore all locales from devtools & extension build (#6170)
- lr: skip early emulation now that lr-desktop is defined (#6158)
- split browserifying and extension packaging into separate scripts (#6295)
- simplify bundle building (#6282)
- stop report bug prompt for file:// urls (#6278)
Deps
- update typescript to latest patch release (#6235)
- update to tsc 3.1.1 (#6126)
- jsdom: upgrade to support Element.prototype.closest (#6411)
- snyk: update snyk snapshot (#6377)
Docs
- contributing: consistent capitalization (#6174)
- new-audits: revise issue template (#6233)
- readme: Add new related project, lighthouse-github-reporter (#6307)
- readme: change image references be commit hash raw gh urls (#6116)
- add primer on viewing the timing data (#6393)
- typo fix (#6335)
- Remove "sh" format for CLI --help output (#6311)
- update docs for --output-path re: multiple output types (#6339)
I18n
Tests
- use predictable numbers in golden LHR (#6404)
- add basic sentry tests (#6308)
- restore lr-entry test (#6214)
- remove more mock computed artifacts (#6195)
- add trace creator (#6196)
- add networkRecord-to-devtoolsLog mocking utility (#6171)
- add angular test for JS minification (#6138)
- run node 10 on Travis (#6361)
Misc
- tweaks for devtools client (#6127)
- simplify proto npm scripts (#6406)
- add cli module diagram (#6129)
- keep download-chrome script in npm package (#6153)
- lantern script path resolution fix (#6380)
- add integrity data to yarn.lock (#6212)
- add yarn integrity hashes for extension/viewer (#6277)
- only allow 1 error from each audit/gatherer (#6215)
- Revert "core(driver): stringify protocol error messages (#6302)" (#6328)
- fix typo in feature request template (#6431)
- remove plots/ (#6346)
- build: cleanup extension package zip using gulp (#6210)
- build: rename bundled files (devtools/ext/lr) (#6179)
- eslint: enforce infix-op spacing (#6382)
- logger: isVerbose(), getTimeEntries() (#6383)
- logging: add hanging request logging in driver (#6297)
- proto: made default LighthouseError enum 'UNDEFINED' (#6334)
- proto: align proto whitespace (#6374)
- proto: convert int32's into DoubleValue in proto (#6332)
- proto: adjust configSetting.output in preprocessor (#6310)
- proto: add audit_mode and timings (#6363)
- proto: fix linting and add LR hook ([#6373](...