diff --git a/changelog.md b/changelog.md index 128fe5c9b4a3..97acb31c848b 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,142 @@ + +# 4.0.0-alpha.0 (2018-10-31) +[Full Changelog](https://github.com/googlechrome/lighthouse/compare/v3.2.0...v4.0.0-alpha.0) + +## 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](https://github.com/googlechrome/lighthouse/pull/6397)) + +## Core + +* aspectratio: ignore placeholder images ([#6305](https://github.com/googlechrome/lighthouse/pull/6305)) +* audit: add utm parameters when calling snyk ([#6172](https://github.com/googlechrome/lighthouse/pull/6172)) +* audits: clarify diff between load-fast-enough-for-pwa's TTI and perf TTI ([#6286](https://github.com/googlechrome/lighthouse/pull/6286)) +* axe: disable unused audits ([#6180](https://github.com/googlechrome/lighthouse/pull/6180)) +* computed: fix new computed artifact interface ([#6151](https://github.com/googlechrome/lighthouse/pull/6151)) +* config: add new PWA category groups ([#6396](https://github.com/googlechrome/lighthouse/pull/6396)) +* critical-request-chain: remove empty children from LHR ([#6211](https://github.com/googlechrome/lighthouse/pull/6211)) +* driver: save performance.now() to avoid conflict ([#6387](https://github.com/googlechrome/lighthouse/pull/6387)) +* driver: request smaller trace in m71+ ([#6117](https://github.com/googlechrome/lighthouse/pull/6117)) +* driver: stringify protocol error messages ([#6302](https://github.com/googlechrome/lighthouse/pull/6302)) +* driver: address bckenny feedback on #6117 ([#6285](https://github.com/googlechrome/lighthouse/pull/6285)) +* driver: reduce required traceCategories again ([54baf91](https://github.com/googlechrome/lighthouse/commit/54baf91)) +* driver: recover from rejection on handleJavaScriptDialog ([#6327](https://github.com/googlechrome/lighthouse/pull/6327)) +* emulation: fix missing space in mobile UA ([#6161](https://github.com/googlechrome/lighthouse/pull/6161)) +* icons: defer to manifest-icon type hint for image type ([#6230](https://github.com/googlechrome/lighthouse/pull/6230)) +* network: handle invalid NetworkRequests ([#6157](https://github.com/googlechrome/lighthouse/pull/6157)) +* network-analyzer: move throughput to NetworkAnalyzer ([#5900](https://github.com/googlechrome/lighthouse/pull/5900)) +* perf: add timing instrumentation to measure runtime perf ([#3745](https://github.com/googlechrome/lighthouse/pull/3745)) +* proto: add proto definition for LHR ([#6183](https://github.com/googlechrome/lighthouse/pull/6183)) +* simulator: start nodes in observed order ([#5362](https://github.com/googlechrome/lighthouse/pull/5362)) +* unminified-javascript: replace esprima with custom tokenizer ([#5925](https://github.com/googlechrome/lighthouse/pull/5925)) +* remove recoverOrThrow / err.fatal ([#6343](https://github.com/googlechrome/lighthouse/pull/6343)) +* convert computed artifact loading to regular require() ([#6204](https://github.com/googlechrome/lighthouse/pull/6204)) +* remove no-websql audit ([#6293](https://github.com/googlechrome/lighthouse/pull/6293)) +* bail on run if insecure ssl certification ([#6300](https://github.com/googlechrome/lighthouse/pull/6300)) +* make throttled offscreen-images work without TTI ([#6039](https://github.com/googlechrome/lighthouse/pull/6039)) +* save HTMLElement.p.matches function to avoid conflict ([#6283](https://github.com/googlechrome/lighthouse/pull/6283)) +* remove fonts gatherer, move font-display to use CSSUsage artifact ([#6166](https://github.com/googlechrome/lighthouse/pull/6166)) +* remove last dependency on WebInspector ([#6209](https://github.com/googlechrome/lighthouse/pull/6209)) +* add timeout to all protocol commands ([#6347](https://github.com/googlechrome/lighthouse/pull/6347)) +* don't load blank page twice in first pass ([#6369](https://github.com/googlechrome/lighthouse/pull/6369)) +* refactor finding of trace start ([#6370](https://github.com/googlechrome/lighthouse/pull/6370)) +* increase Page.navigate timeout ([#6412](https://github.com/googlechrome/lighthouse/pull/6412)) + +## Report + +* fix tooltip hover animation ([#6288](https://github.com/googlechrome/lighthouse/pull/6288)) +* reframe Fast 3G as Slow 4G ([#6163](https://github.com/googlechrome/lighthouse/pull/6163)) +* fix html report viewing bugs for Safari ([#6143](https://github.com/googlechrome/lighthouse/pull/6143)) +* dom-size: right-align the value column ([#6372](https://github.com/googlechrome/lighthouse/pull/6372)) + +## Clients + +* simplify viewer build process ([#6426](https://github.com/googlechrome/lighthouse/pull/6426)) +* reorganize file structure and build process ([#6344](https://github.com/googlechrome/lighthouse/pull/6344)) +* build: ignore all locales from devtools & extension build ([#6170](https://github.com/googlechrome/lighthouse/pull/6170)) +* lr: skip early emulation now that lr-desktop is defined ([#6158](https://github.com/googlechrome/lighthouse/pull/6158)) +* split browserifying and extension packaging into separate scripts ([#6295](https://github.com/googlechrome/lighthouse/pull/6295)) +* simplify bundle building ([#6282](https://github.com/googlechrome/lighthouse/pull/6282)) +* stop report bug prompt for file:// urls ([#6278](https://github.com/googlechrome/lighthouse/pull/6278)) + +## Deps + +* update typescript to latest patch release ([#6235](https://github.com/googlechrome/lighthouse/pull/6235)) +* update to tsc 3.1.1 ([#6126](https://github.com/googlechrome/lighthouse/pull/6126)) +* jsdom: upgrade to support Element.prototype.closest ([#6411](https://github.com/googlechrome/lighthouse/pull/6411)) +* snyk: update snyk snapshot ([#6377](https://github.com/googlechrome/lighthouse/pull/6377)) + +## Docs + +* contributing: consistent capitalization ([#6174](https://github.com/googlechrome/lighthouse/pull/6174)) +* new-audits: revise issue template ([#6233](https://github.com/googlechrome/lighthouse/pull/6233)) +* readme: Add new related project, lighthouse-github-reporter ([#6307](https://github.com/googlechrome/lighthouse/pull/6307)) +* readme: change image references be commit hash raw gh urls ([#6116](https://github.com/googlechrome/lighthouse/pull/6116)) +* add primer on viewing the timing data ([#6393](https://github.com/googlechrome/lighthouse/pull/6393)) +* typo fix ([#6335](https://github.com/googlechrome/lighthouse/pull/6335)) +* Remove "sh" format for CLI --help output ([#6311](https://github.com/googlechrome/lighthouse/pull/6311)) +* update docs for --output-path re: multiple output types ([#6339](https://github.com/googlechrome/lighthouse/pull/6339)) + +## I18n + +* roll latest messages from TC ([#6388](https://github.com/googlechrome/lighthouse/pull/6388)) +* update test for new canonical locale codes ([#6360](https://github.com/googlechrome/lighthouse/pull/6360)) + +## Tests + +* use predictable numbers in golden LHR ([#6404](https://github.com/googlechrome/lighthouse/pull/6404)) +* add basic sentry tests ([#6308](https://github.com/googlechrome/lighthouse/pull/6308)) +* restore lr-entry test ([#6214](https://github.com/googlechrome/lighthouse/pull/6214)) +* remove more mock computed artifacts ([#6195](https://github.com/googlechrome/lighthouse/pull/6195)) +* add trace creator ([#6196](https://github.com/googlechrome/lighthouse/pull/6196)) +* add networkRecord-to-devtoolsLog mocking utility ([#6171](https://github.com/googlechrome/lighthouse/pull/6171)) +* add angular test for JS minification ([#6138](https://github.com/googlechrome/lighthouse/pull/6138)) +* run node 10 on Travis ([#6361](https://github.com/googlechrome/lighthouse/pull/6361)) + +## Misc + +* tweaks for devtools client ([#6127](https://github.com/googlechrome/lighthouse/pull/6127)) +* simplify proto npm scripts ([#6406](https://github.com/googlechrome/lighthouse/pull/6406)) +* add cli module diagram ([#6129](https://github.com/googlechrome/lighthouse/pull/6129)) +* keep download-chrome script in npm package ([#6153](https://github.com/googlechrome/lighthouse/pull/6153)) +* lantern script path resolution fix ([#6380](https://github.com/googlechrome/lighthouse/pull/6380)) +* add integrity data to yarn.lock ([#6212](https://github.com/googlechrome/lighthouse/pull/6212)) +* add yarn integrity hashes for extension/viewer ([#6277](https://github.com/googlechrome/lighthouse/pull/6277)) +* only allow 1 error from each audit/gatherer ([#6215](https://github.com/googlechrome/lighthouse/pull/6215)) +* Revert "core(driver): stringify protocol error messages (#6302)" ([#6328](https://github.com/googlechrome/lighthouse/pull/6328)) +* fix typo in feature request template ([#6431](https://github.com/googlechrome/lighthouse/pull/6431)) +* remove plots/ ([#6346](https://github.com/googlechrome/lighthouse/pull/6346)) +* build: cleanup extension package zip using gulp ([#6210](https://github.com/googlechrome/lighthouse/pull/6210)) +* build: rename bundled files (devtools/ext/lr) ([#6179](https://github.com/googlechrome/lighthouse/pull/6179)) +* eslint: enforce infix-op spacing ([#6382](https://github.com/googlechrome/lighthouse/pull/6382)) +* logger: isVerbose(), getTimeEntries() ([#6383](https://github.com/googlechrome/lighthouse/pull/6383)) +* logging: add hanging request logging in driver ([#6297](https://github.com/googlechrome/lighthouse/pull/6297)) +* proto: made default LighthouseError enum 'UNDEFINED' ([#6334](https://github.com/googlechrome/lighthouse/pull/6334)) +* proto: align proto whitespace ([#6374](https://github.com/googlechrome/lighthouse/pull/6374)) +* proto: convert int32's into DoubleValue in proto ([#6332](https://github.com/googlechrome/lighthouse/pull/6332)) +* proto: adjust configSetting.output in preprocessor ([#6310](https://github.com/googlechrome/lighthouse/pull/6310)) +* proto: add audit_mode and timings ([#6363](https://github.com/googlechrome/lighthouse/pull/6363)) +* proto: fix linting and add LR hook ([#6373](https://github.com/googlechrome/lighthouse/pull/6373)) +* proto: make NO_ERROR default in proto ([#6358](https://github.com/googlechrome/lighthouse/pull/6358)) +* proto: reduce configSettings in proto to minimum ([88b2829](https://github.com/googlechrome/lighthouse/commit/88b2829)) +* yarn: update lockfile for micromatch ([#6384](https://github.com/googlechrome/lighthouse/pull/6384)) + + +# 3.2.1 (2018-10-01) +[Full Changelog](https://github.com/googlechrome/lighthouse/compare/v3.2.0...v3.2.1) + +## Core + +* emulation: set desktop viewport to 1350x940 ([#6131](https://github.com/googlechrome/lighthouse/pull/6131)) +* await js-libraries detection ([#6141](https://github.com/googlechrome/lighthouse/pull/6141)) + # 3.2.0 (2018-09-27) [Full Changelog](https://github.com/googlechrome/lighthouse/compare/v3.1.1...v3.2.0) diff --git a/clients/extension/manifest.json b/clients/extension/manifest.json index 5dfb917e5fd7..21bc640406b4 100644 --- a/clients/extension/manifest.json +++ b/clients/extension/manifest.json @@ -1,6 +1,6 @@ { "name": "__MSG_appName__", - "version": "3.2.0", + "version": "3.3.0.4000", "minimum_chrome_version": "66", "manifest_version": 2, "description": "__MSG_appDescription__", diff --git a/docs/releasing.md b/docs/releasing.md index 3d129ebc3772..5a203bc6d11e 100644 --- a/docs/releasing.md +++ b/docs/releasing.md @@ -70,6 +70,8 @@ echo "Test the lighthouse-viewer build" # Start a server in dist/viewer/ and open the page in a tab. You should see the viewer. # Drop in a results.json or paste an existing gist url (e.g. https://gist.github.com/ebidel/b9fd478b5f40bf5fab174439dc18f83a). # Check for errors! +cd dist/viewer ; python -m SimpleHTTPServer +# go to http://localhost:8000/ # * Update changelog * git fetch --tags diff --git a/lighthouse-core/test/results/sample_v2.json b/lighthouse-core/test/results/sample_v2.json index 424dc2862f4f..6efb0e73fddc 100644 --- a/lighthouse-core/test/results/sample_v2.json +++ b/lighthouse-core/test/results/sample_v2.json @@ -5,7 +5,7 @@ "hostUserAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3358.0 Safari/537.36", "benchmarkIndex": 1000 }, - "lighthouseVersion": "3.2.0", + "lighthouseVersion": "4.0.0-alpha.0", "fetchTime": "2018-03-13T00:55:45.840Z", "requestedUrl": "http://localhost:10200/dobetterweb/dbw_tester.html", "finalUrl": "http://localhost:10200/dobetterweb/dbw_tester.html", diff --git a/lighthouse-viewer/app/src/lighthouse-report-viewer.js b/lighthouse-viewer/app/src/lighthouse-report-viewer.js index b56558315da8..c8a76a15874e 100644 --- a/lighthouse-viewer/app/src/lighthouse-report-viewer.js +++ b/lighthouse-viewer/app/src/lighthouse-report-viewer.js @@ -138,11 +138,13 @@ class LighthouseReportViewer { _replaceReportHtml(json) { this._validateReportJson(json); - if (!json.lighthouseVersion.startsWith('3')) { + if (json.lighthouseVersion.startsWith('2')) { this._loadInLegacyViewerVersion(json); return; } + // TODO: viewer3x :) + const dom = new DOM(document); const renderer = new ReportRenderer(dom); diff --git a/package.json b/package.json index 44f745514787..5af9601f5e0d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "lighthouse", - "version": "3.2.0", + "version": "4.0.0-alpha.0", "description": "Lighthouse", "main": "./lighthouse-core/index.js", "bin": { diff --git a/proto/sample_v2_round_trip.json b/proto/sample_v2_round_trip.json index 0934f7b49ceb..7fd302905eba 100644 --- a/proto/sample_v2_round_trip.json +++ b/proto/sample_v2_round_trip.json @@ -3289,7 +3289,7 @@ "warningHeader": "Warnings: " } }, - "lighthouseVersion": "3.2.0", + "lighthouseVersion": "4.0.0-alpha.0", "requestedUrl": "http://localhost:10200/dobetterweb/dbw_tester.html", "runWarnings": [], "timing": {