Skip to content

Releases: GoogleChrome/lighthouse

1.4.0

05 Jan 00:47
Compare
Choose a tag to compare

1.4.0 (2017-01-04)

New Contributors!

@dracos, @Lokson, and @AdrianoCahete

Improvements

  • Add URL blocking by pattern to driver - #1195
  • Extension: Add test URL to "Report Error" template - #1357
  • Extension: Keep Lighthouse extension popup active while running - #1185
  • Extension: Use live icon and badge text while running - #1367
  • Gather: Only run axe tests that we have audits for - #1257
  • Report: Only use markdown for injected HTML - #1226
  • Report: Style tweaks for DevTools report - 4a2f97a, 68ccb64
  • Report: Include total score in JSON and pretty output modes - #1356
  • Viewer: Add input for gist URL on mobile - #1341

Bug Fixes

  • Audit: Handle invalid URLs in external-anchors-use-rel-noopener audit - #1358
  • Audit: Handle invalid URLs in no-console-time and no-datenow audits - #1288
  • Audit: Make zero-length critical-request chains pass the test - #1303
  • Audit: Add "minimal-ui" as an allowed Manifest display value - #1268
  • Audit: Improved handling of invalid URLs in call site and event listener audits - #1390
  • Audit: Async stylesheet handling to limit false positives for stylesheets blocking first paint - #1389
  • CLI: Improve Windows console support - #1307
  • CLI: Ignore which failures when looking for Linux Chrome executable - #1395

Docs

  • Closure type check fixes - #1293

Refactor

  • Return artifacts from Runner (and move assets/artifacts saving to CLI) - #1163, #1400
  • PerformanceExperiment: Centralize more implementation in server.js - #1189

Dependencies

  • Only list mkdirp dependency once - #1284
  • Add marked - #1226

1.3.2

23 Dec 20:30
Compare
Choose a tag to compare

1.3.2 (2016-12-23)

Bug Fixes

  • Audit: handle Date.now uses with no call site URL in no-datenow audit - #1238

1.3.1

23 Dec 20:28
Compare
Choose a tag to compare

1.3.1 (2016-12-22)

New Contributor!

@XhmikosR

Improvements

  • Report: remove noreferrer from helpText links (#1190)
  • Viewer: add consolidated export button - #1182

Bug Fixes

  • Remove Node v7 URL parsing while bugs are being fixed - #1187
  • Fix driver.captureFunctionCallSites in the face of Error polyfills - #1218
  • Audit: handle anchor tags with no href in 'external-anchors-use-rel-noopener' audit - #1238
  • CLI: use exec, not spawn, to kill Chrome process on Windows - #1206
  • Viewer: don't check upload's file type, try to parse json file directly - #1234

Docs

  • readme: improve definition - #1216

1.3.0

20 Dec 00:51
Compare
Choose a tag to compare

1.3.0 (2016-12-19)

New Contributors!

@Janpot, @robdodson, and @WeiweiAtGit

Major Changes

Improvements

  • Use whatwg-url to parse URLs - #997
  • Use firstMeaningfulPaint trace event directly - #1066
  • Remove whitespace and comments from traceviewer-js - #1095, #1103
  • Audit: Remove browser-generated paintNonDefaultBackgroundColor event from user-timings - #1077
  • Audit: Handle where tracingStartedInPage doesn't precede navStart in trace - #1152, 9c8d13e
  • Audit: Add new required attr and attr-value accessibility audits - #1156
  • CLI: Add improved search for Chrome executable on Linux - #856
  • CLI: Add check that TypeScript files have been compiled before running - #1113
  • CLI: Add --view flag which serves generated report after Lighthouse run - #1130, f6afd22
  • Driver: Return meaningful errors from page context when evaluateAsync rejects - #1037
  • Report: Create "Fancier Stuff" section for newer (but not necessarily better) APIs - #1087
  • Report: Convert helpText toggle to pure CSS - #1104
  • Report: Stick header to top of page - #1121, #1132, #1133
  • Report: Make mobile-friendly and responsive - #1134
  • Report: Don't emit script tags in devtools report - #1105
  • Report: Use same favicon throughout all reports - #1172
  • Viewer: Move share button to core report - #1117
  • Viewer: Add support for copy and paste of report JSON - #1126, #1128
  • Viewer: Concat CSS files - #1153

Bug Fixes

  • Unmute some smoke test failures - #1081
  • CLI: Make rimraf async for deleting Chrome temp profile - #1127
  • CLI: Eliminate errors from calling ChromeLauncher.kill() twice - #1131
  • CLI: Fix html reportContext when generated by the CLI - #1171
  • Driver: Fix evaluateAsync when page has overridden native Promise - #1037, #1178
  • Report: Fix for formatting with unknown time zone - #1086
  • Report: Fix report color issues in Safari - #1114
  • Report: Fix print styling - #1180
  • Testing: Handle critical-request-chains audit promise rejections - #1100
  • Testing: Fix failing lint test - aa6d38b
  • Viewer: Disable sharing button if gist is already saved - #1118

Testing

  • Don't run Closure type checking on Travis - 558a26
  • Update eslint and eslint-config-google to latest - #1136, #1159, #1160
  • Audit: Add tests for notification-on-start - #1089
  • CLI: Add test for obsolete CLI flags - #1168
  • Viewer: Add analytics #1120, #1162
  • Viewer: Add build of viewer to CI test suite - #1160

Docs

  • Update jsconfig for intellisense - 835ae98
  • Audit: Fix type in no-console-time helpText - #1142
  • Audit: Add links to DoBetterWeb helpText docs - #1161
  • readme: Add Viewer to readme - #1164

Refactor

  • Audit: Add check for an audit's requiredArtifacts before running - #1088
  • Audit: Centralize auditing of axe-core results - #1167
  • CLI: Unify bin.ts execution and error-handling paths - #1141
  • Gatherer: Gatherers now return artifacts directly rather than setting this.artifact - #1122
  • Viewer: Split code into modules - #1116
  • Viewer: Use tsc to es3ify viewer code - #1150

Dependencies

1.2.2

30 Nov 00:22
Compare
Choose a tag to compare

1.2.2 (2016-11-29)

New Contributor!

@beaufortfrancois

Improvements

  • Extension: remove "tabs" extension permission - #1032

Bug Fixes

  • Ensure driver.captureFunctionCallSites resolves to an array - #1036
  • Handle call sites in eval'd code in driver.captureFunctionCallSites - #1073
  • Audit: identify noopener when in list of link types in rel - #1035
  • CLI: explicitly close outfile and errfile in chrome launcher - #1057
  • Extension: set minimum supported Chrome to m54 - #1027
  • Extension: better error message if user attempts to audit the Chrome Web Store - #1025
  • Report: work around unsupported timezones when pretty printing dates - #1067
  • Report: fix coloring by score - #1070

Docs

  • Report: better formatting for Manifest icon size list - #1041, #1044
  • Report: improve language consistency in audit description strings - #1045
  • Report: add helpText to remaining audits - #998
  • Report: remove scores from performance metrics; change to pass/fail - #1072

1.2.1

23 Nov 02:38
Compare
Choose a tag to compare

1.2.1 (2016-11-22)

Improvements

  • Audit: add DBW audit for <script> elements in head that block first paint - #965
  • Extension: Add error description to title of auto-generated github issues - #992

Bug Fixes

  • fix typo in default config file - f9f7c25
  • Audit: treat non-strings as an error in without-javascript gatherer and audit - #971
  • Audit: catch driver errors (and set on artifact.debugString) in geolocation gatherer - #999
  • Audit: fix property name used for error value in all-event-listeners gatherer - #1013
  • CLI: fix implicit-any-typed _ in chrome launcher - #981
  • Extension: fix aggregation category filtering based on selection in options panel - #973
  • Report: escape </script> tags when embedding raw results in the html page - #1003

Testing

  • Force npm install (for now) on Travis after their change to prefer yarn - #994

Docs

  • readme: new report screenshot - cb2ebfd

Refactor

  • Unify CLI and extension implementations of debugger protocol error handling - #977

1.2.0

17 Nov 22:48
Compare
Choose a tag to compare

1.2.0 (2016-11-17)

New Contributors!

@Bassoon08, @karanjthakkar, @chowse, @hsingh23, @olingern, and @patrickhulce

Major Changes

  • Launch DoBetterWeb (DBW) audits and gatherers as part of default Lighthouse run - #917
  • Report: Lighthouse report refactor and refresh - #926, #935

Improvements

  • Log errors in red, warnings in yellow - #860, #915
  • Audit: Add DBW audit for Mutation Events - #786
  • Audit: Add DBW audit for <link> elements in head that block first paint - #892
  • Audit: Add DBW audit for rel=noopener on external links - #912
  • Audit: Make geolocation audit return error if permission already granted - #925
  • CLI: Handle --quiet logging as silent - #881
  • Extension: Add integrated 'Report Error' button with pre-populated data - #944
  • Gatherer: Add support for collecting event listeners across all DOM nodes - #930
  • Report: Remove excessive EIL percentiles from report - #851
  • Report: Update TTI scoring label to 5000ms to match guidance - #947
  • Report: Cleanup of event listener extended info display - #952
  • Report: Group event listener extended info by call site location - #960

Bug Fixes

  • Restore log's status event payload - #883
  • Ignore protocol error from defensive DOM.disable call - #895, #907
  • Remove cache-contents gatherer from default config since currently no audit requires it - #900
  • Enforce audit naming consistency in the config file and filenames - #914
  • Audit: Handle error case from htmlwithoutjs gatherer and audit - #891
  • Audit: Prevent attempts to parse script URLs when no URL was found - #893
  • Audit: Don't include disabled <link>s in link-blocking-first-paint audit - #911
  • Audit: Handle undefined Accessibility violations array - #942
  • Audit: Only create a manifest display debugString when there is an error - #954
  • Audit: Look for non-async <link>s and fix unit of time in link-blocking-first-paint audit - #963
  • CLI: Add main field to CLI's package.json - #875
  • CLI: Disable Chrome's Google Translate service during Lighthouse run - #897
  • CLI: Disable Chrome's default Apps during Lighthouse run - #918
  • Driver: Dedupe function call site entries on location, not stack trace - #958
  • Extension: Properly filter the audits to run - #946
  • Gatherer: Handle CSS parse errors in stylesheet gatherer - #906
  • Report: Move gt handlebars helper to accessibility formatter - #929
  • Report: Fix handlebars and helper to show displayValue in reports - #938

Testing

  • Add DBW to smokehouse tests - #843, #901
  • Add script for bumping Travis to restart timing-out test runs - #913
  • Fix Travis timeouts by rerunning with random Chrome debug ports - #922

Docs

  • Audit: Update EQT/EIL design doc links to latest docs - #923
  • Audit: Fix no-datenow helpText typo - #955
  • Audit: Update uses-passive-event-listeners `description text - #956
  • readme: Add DBW to readme - #863
  • readme: Update development section with TypeScript info - #859
  • readme: Document yarn install command - #939

Refactor

  • Audit: Rewrite geolocation-on-start audit to use DBW tooling and testing - #903
  • CLI: Migrate chrome-debug binary to use internal Chrome launcher - #898
  • Report: Refactor report generation to be blob based and simpler - #908

Dependencies

1.1.7

01 Nov 00:01
Compare
Choose a tag to compare

1.1.7 (2016-10-31)

Features

  • Add cpu throttling option (initially disabled by default) - #747
  • Stop Lighthouse run if tabs with a shared Service Worker are found - #639
  • Add Web Worker entry point to lighthouse-background.js - #803
  • Audit: add DBW stylesheet gatherer and old flexbox audit - #767
  • Audit: adopt Perceptual Speed Index - #785
  • Audit: add DBW audit for passive event listeners - #830
  • CLI: add support for using stable Google Chrome on MacOS - #782

Bug Fixes

  • Fix function call location from driver.captureJSCallUsage - #779
  • Update driver.captureFunctionCallSites to use updated driver.evaluateAsync - #809
  • Stop interpreting manifest parse errors as failure to fetch manifest - #823
  • Update npm run dbw to use new emulation flags - #834
  • Make network emulation numbers always integers - #839
  • Trim extendedInfo returned from DBW http2 audit to prevent circular references - #842
  • Navigate to about:blank before driver setup - #850
  • Fix handling of errors from the debugging protocol - #853
  • Stop spreading strings in log - #835
  • Allow debugger protocol's DOM domain to be redundantly disabled - #861
  • Remove tab targetId requirement for checking if other tabs will share a service worker - #852
  • Consistently reject Promises with an Error - #862
  • Don't throw an error in stylesheet gatherer if no stylesheets are found - #864
  • CLI: Disable extension system in launched Chrome instance - #771
  • CLI: make Chrome Launcher respect --quiet flag - #774
  • CLI: use about:blank as initial URL - #776
  • CLI: make HTML report have gitignorable filename - #790
  • CLI: fix outputMode conditional - #846
  • CLI: add warning if tsc has not been run before use - #857
  • Report: fix pluralization of "resources" - #773

Testing

  • Add smokehouse, an end-to-end test runner, and use for smoke tests - #781, #788
  • Run default smoke tests with full config - #801
  • Add prefer-const eslint rule - #804
  • Run well-known-PWA smokehouse tests in CI - #824
  • Fix several eslint warnings - #831
  • Test node v6 and v7 explicitly in CI - #832
  • Add tests for getLogNormalDistribution and getRiskToResponsiveness on TracingProcessor - #806

Docs

  • CLI: clarify description of --select-chrome flag - #829
  • readme: add basic instructions for custom audits/gatherers - 8d696af
  • readme: update module diagram - ee1dc0d
  • readme: add node debugging getting started tip - #807
  • readme: add CLI TS development notes - #818
  • readme: matching parentheses - #855

Refactor

  • Make web-inspector.js worker friendly - #795
  • Migrate driver.evaluateAsync to Runtime.evaluate(awaitPromise) - #793
  • Extract a Connection abstraction from driver - #800
  • Create connections/ directory for debugger protocol connection classes - #822
  • CLI: convert CLI to typescript - #702
  • CLI: split mobile emulation and network emulation into separate --disable-device-emulation and --disable-network-throttling flags - #747
  • CLI: add more explicit TS typing - #825
  • Extension: simplify reloading clean state at end of run - #813, #816

Dependencies

1.1.5

10 Oct 22:50
Compare
Choose a tag to compare

1.1.5 (2016-10-10)

Features

  • Enable passing in a custom pauseAfterLoad option #697
  • Wait until network has settled before considering page as loaded #714
  • Support dynamic plugins in lighthouse config #730
  • Audit: add DBW AppCache audit #681, #687
  • Audit: add DBW WebSQL audit #691
  • Audit: add DBW requests-should-be-over-h2 audit #700
  • Audit: add DBW Date.now() -> performance.now() audit #707
  • Audit: add DBW console.time() -> performance.mark() audit #712
  • Audit: add DBW document.write() audit #716
  • CLI: add chrome-debug binary to launch the debuggable standalone chrome #678
  • CLI: reporter pretty formatting #682
  • CLI: add npm run dbw to run DoBetterWeb audits #696
  • Extension: print errors thrown from handlebars #731
  • Report: add version number #673
  • Report: add helpText associated with audit results #695
  • Report: add version number on all report formats #749
  • Report: tighter vertical whitespace in HTML report #754
  • Report: add generatedTime property in json output #752
  • Report: add toggle to display helpText #751

Bug Fixes

  • Remove old auditWhitelist argument #676
  • Stop clearing cookies when run #717
  • Allow updated speedline to display results for traces with fewer than three frames #745
  • Sort trace events by timestamp before calculating FMP #756
  • CLI: add support for Windows 10 without Chrome Canary #690
  • CLI: fix screenshot save via --save-assets #711
  • CLI: fix --mobile flag #721
  • Extension: fixes for updated dependencies #734
  • Report: add fallback font for url heading #674
  • Testing: loosen path requirement for closure formatter replacement #701
  • Testing: handle http-redirect gatherer promise rejections #729
  • Testing: handle https gatherer promise rejections #738
  • Testing: handle promise rejections in runner testing #739

Refactor

  • Automatically cache computed artifacts #675
  • Streamline extensible gather and audit loading #679, #692
  • Add 'use strict'; to files where it was missing #694
  • Handle sendCommand promise rejections #703
  • Rename of some config.json properties #727
  • Extension: improve queryCurrentTab impl #680
  • Testing: stronger user-timing test assertions #732
  • Testing: run coveralls only after build success #733
  • Testing: fix tests which were unconditionally passing failed assertions #737

Dependencies

1.1.4

19 Sep 21:54
Compare
Choose a tag to compare

change list: 1.1.3...1.1.4