Skip to content

Commit

Permalink
v6.3.0 (#11332)
Browse files Browse the repository at this point in the history
  • Loading branch information
connorjclark authored Aug 27, 2020
1 parent 4e303e3 commit c2b7fcb
Show file tree
Hide file tree
Showing 15 changed files with 137 additions and 44 deletions.
3 changes: 1 addition & 2 deletions build/changelog-generator/templates/header.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,4 @@


~~ TODO: https://chromiumdash.appspot.com/schedule ~~
We expect this release to ship in the DevTools of [Chrome XX](https://chromiumdash.appspot.com/schedule), and to PageSpeed
Insights within 2 weeks.
We expect this release to ship in the DevTools of [Chrome XX](https://chromiumdash.appspot.com/schedule), and to PageSpeed Insights within 2 weeks.
83 changes: 83 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,86 @@
<a name="6.3.0"></a>
# 6.3.0 (2020-08-26)
[Full Changelog](https://github.com/GoogleChrome/lighthouse/compare/v6.2.0...v6.3.0)

We expect this release to ship in the DevTools of [Chrome 87](https://chromiumdash.appspot.com/schedule), and to PageSpeed Insights within 2 weeks.

## New Contributors

Thanks to our new contributors 👽🐷🐰🐯🐻!

* Adriana Ixba @adrianaixba
* Daniel Hollas @danielhollas
* Danilo Velasquez Urrutia @dvelasquez
* Jivthesh M R @jivthesh
* Pete Nykänen @petetnt
* Radu Micu @radum
* ryo @ryoAccount
* Saavan Nanavati @saavannanavati
* Stanislav Popov @popstas
* Wicked @Wicked7000

## Notable Changes

* revert: move unsized-images to experimental due to perf impact ([#11317](https://github.com/GoogleChrome/lighthouse/pull/11317))

## New Audits

* add preload-fonts audit ([#11255](https://github.com/GoogleChrome/lighthouse/pull/11255))
* add large-javascript-libraries audit ([#11096](https://github.com/GoogleChrome/lighthouse/pull/11096))
* add valid-source-maps audit ([#11236](https://github.com/GoogleChrome/lighthouse/pull/11236))
* add autocomplete to experimental config ([#11186](https://github.com/GoogleChrome/lighthouse/pull/11186))

## Core

* global-listeners: dedupe duplicate events in GlobalListener gatherer ([#11303](https://github.com/GoogleChrome/lighthouse/pull/11303))
* module-duplication: ignore smaller modules ([#11277](https://github.com/GoogleChrome/lighthouse/pull/11277))
* non-composited-animations: add unsupported css properties ([#11246](https://github.com/GoogleChrome/lighthouse/pull/11246))
* non-composited-animations: add more actionable failure reasons ([#11268](https://github.com/GoogleChrome/lighthouse/pull/11268))
* non-composited-animations: update the "learn more" link ([#11258](https://github.com/GoogleChrome/lighthouse/pull/11258))
* renderer: improve the unknown timezone checks in util.js ([#9822](https://github.com/GoogleChrome/lighthouse/pull/9822))
* response-time: add time spent to details ([#11307](https://github.com/GoogleChrome/lighthouse/pull/11307))
* trace-elements: do not break on unresolvable node id ([#11298](https://github.com/GoogleChrome/lighthouse/pull/11298))
* font-size: remove deprecated DOM.getFlattenedDocument ([#11248](https://github.com/GoogleChrome/lighthouse/pull/11248))

## Report

* third-party-summary: show resources for entity ([#11219](https://github.com/GoogleChrome/lighthouse/pull/11219))
* handle invalid urls for source location items ([#11299](https://github.com/GoogleChrome/lighthouse/pull/11299))
* show axe version in runtime settings ([#10729](https://github.com/GoogleChrome/lighthouse/pull/10729))
* use dash gauge for categories with entirely n/a audits ([#11024](https://github.com/GoogleChrome/lighthouse/pull/11024))

## Deps

* update lighthouse-plugin-publisher-ads to 1.2.0 ([#11301](https://github.com/GoogleChrome/lighthouse/pull/11301))

## I18n

* import ([#11324](https://github.com/GoogleChrome/lighthouse/pull/11324))
* translate remaining strings in font-size ([#11327](https://github.com/GoogleChrome/lighthouse/pull/11327))
* make double dollar validation less strict ([#10299](https://github.com/GoogleChrome/lighthouse/pull/10299))

## Docs

* add Code of Conduct to project ([#11212](https://github.com/GoogleChrome/lighthouse/pull/11212))
* add audit naming guide ([#11308](https://github.com/GoogleChrome/lighthouse/pull/11308))
* throttling: replace comcast with throttle and add more windows options ([#11143](https://github.com/GoogleChrome/lighthouse/pull/11143))
* readme: add related projects: site-audit-seo ([#11305](https://github.com/GoogleChrome/lighthouse/pull/11305), [#11250](https://github.com/GoogleChrome/lighthouse/pull/11250))
* readme: align headings with table of contents ([#11288](https://github.com/GoogleChrome/lighthouse/pull/11288))

## Tests

* run chromium webtests for devtools integration ([#11176](https://github.com/GoogleChrome/lighthouse/pull/11176), [#11328](https://github.com/GoogleChrome/lighthouse/pull/11328))

## Misc

* benchmark: update BenchmarkIndex for m86 changes ([#11304](https://github.com/GoogleChrome/lighthouse/pull/11304))
* add benchmark script with octane and speedometer ([#11247](https://github.com/GoogleChrome/lighthouse/pull/11247))
* add gcp fleet creation scripts ([#11257](https://github.com/GoogleChrome/lighthouse/pull/11257), [#11233](https://github.com/GoogleChrome/lighthouse/pull/11233))
* rephrase comments to be more inclusive ([#11228](https://github.com/GoogleChrome/lighthouse/pull/11228))
* fix types in duplicated-javascript ([#11278](https://github.com/GoogleChrome/lighthouse/pull/11278))
* fix typo in method name ([#11239](https://github.com/GoogleChrome/lighthouse/pull/11239))
* move doc link ([#11300](https://github.com/GoogleChrome/lighthouse/pull/11300))

<a name="6.2.0"></a>
# 6.2.0 (2020-08-06)
[Full Changelog](https://github.com/GoogleChrome/lighthouse/compare/v6.1.1...v6.2.0)
Expand Down
4 changes: 2 additions & 2 deletions docs/plugins.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,10 @@ A Lighthouse plugin is just a node module with a name that starts with `lighthou
"name": "lighthouse-plugin-cats",
"main": "plugin.js",
"peerDependencies": {
"lighthouse": "^6.2.0"
"lighthouse": "^6.3.0"
},
"devDependencies": {
"lighthouse": "^6.2.0"
"lighthouse": "^6.3.0"
}
}
```
Expand Down
2 changes: 1 addition & 1 deletion docs/recipes/custom-audit/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@
"private": true,
"scripts": {},
"devDependencies": {
"lighthouse": "^6.2.0"
"lighthouse": "^6.3.0"
}
}
2 changes: 1 addition & 1 deletion docs/recipes/gulp/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@
"devDependencies": {
"gulp": "^3.9.1",
"gulp-connect": "^5.0.0",
"lighthouse": "^6.2.0"
"lighthouse": "^6.3.0"
}
}
4 changes: 2 additions & 2 deletions docs/recipes/lighthouse-plugin-example/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
"private": true,
"main": "./plugin.js",
"peerDependencies": {
"lighthouse": "^6.2.0"
"lighthouse": "^6.3.0"
},
"devDependencies": {
"lighthouse": "^6.2.0"
"lighthouse": "^6.3.0"
}
}
51 changes: 32 additions & 19 deletions docs/releasing.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,32 +65,29 @@ cd ../lighthouse-pristine

Confirm DevTools integration will work:
```sh
# You should have Chromium already checked out at ~/chromium/src
# See: https://www.chromium.org/developers/how-tos/get-the-code
# Checkout the DevTools Frontend code.
# See: https://chromium.googlesource.com/devtools/devtools-frontend/+/HEAD/docs/workflows.md

# Roll to Chromium folder.
yarn devtools
# Roll to DevTools Frontend folder.
# If at ~/src/devtools/devtools-frontend, the command to run is:
yarn devtools ~/src/devtools/devtools-frontend

# Checkout latest Chromium code.
cd ~/chromium/src
git pull
git new-branch lh-roll-x.x.x
gclient sync
autoninja -C out/Release chrome blink_tests
# Build DevTools Frontend.
cd ~/src/devtools/devtools-frontend
gclient sync && autoninja -C out/Default

# Run tests and rebase.
yarn --cwd ~/chromium/src/third_party/blink/renderer/devtools test 'http/tests/devtools/lighthouse/*.js' --reset-results
# Verify the changes are expected.
git diff
# Verify things work in DevTools.
# Mac:
"/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary" --custom-devtools-frontend=file://$HOME/src/devtools/devtools-frontend/out/Default/resources/inspector

# Verify that the Lighthouse panel still works. Consider the new features that have been added.
# If anything is wrong, stop releasing, investigate, land a fix and start over.

# For bonus points, add some tests covering new features. Either a new test, or an extra
# assertion in an existing test.
# (TODO: when this is a required check in CI, can remove from release steps)
# Run webtests.
DEVTOOLS_PATH=~/src/devtools/devtools-frontend yarn test-devtools

git cl upload --bypass-hooks
# Go to Gerrit, run CQ dry run, ensure the tests all pass.
# Done with DevTools for now, will open a CL later.
```

Confirm Lightrider integration will work:
Expand All @@ -116,7 +113,12 @@ Now that the integrations are confirmed to work, go back to `lighthouse` folder.
# Prepare the commit, replace x.x.x with the desired version
bash ./lighthouse-core/scripts/release/prepare-commit.sh x.x.x

# Open the PR and await merge...
# Fix-up the CHANGELOG.

# Rebaseline DevTools tests one more time (only version number should change).
yarn update:test-devtools

# Open PR with title `vx.x.x` and await merge...
echo "It's been merged! 🎉"

# One last test (this script uses origin/master, so we also get the commit with the new changelog - that commit should be HEAD).
Expand Down Expand Up @@ -166,6 +168,17 @@ If this is a branching week, wait until _after_ the branch point email, then lan

Otherwise, you can land it immediately.

```sh
git checkout vx.x.x # Checkout the specific version.
yarn build-devtools
yarn devtools ~/src/devtools/devtools-frontend

cd ~/src/devtools/devtools-frontend
git new-branch rls
git commit -am "[Lighthouse] Roll Lighthouse x.x.x\n\nBug: 772558"
git cl upload --bypass-hooks
```

### The following Monday

Evaluate LR staging, if all looks good, promote to production!
1 change: 1 addition & 0 deletions lighthouse-core/scripts/release/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ cd /tmp/lighthouse-local-test

npm init -y
npm install "$LH_PRISTINE_ROOT/lighthouse-$VERSION.tgz"
cd node_modules/lighthouse/lighthouse-cli/test/ && npm install lodash.clonedeep && cd ../../../../
npm explore lighthouse -- npm run smoke -- --retries=3
npm explore lighthouse -- npm run fast -- http://example.com

Expand Down
15 changes: 6 additions & 9 deletions lighthouse-core/scripts/roll-to-devtools.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,25 +6,23 @@
# Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
##

# You will need a Chromium checkout: https://chromium.googlesource.com/devtools/devtools-frontend/+/HEAD/docs/workflows.md#integrated-checkout
# You could use the standalone DevTools workflow, but you won't be able to run layout tests, so
# if you are the release manager you'll need the full Chromium checkout.
# You will need a DevTools Frontend checkout
# See https://chromium.googlesource.com/devtools/devtools-frontend/+/HEAD/docs/workflows.md

# usage:

# default to an full checkout at ~/chromium/src
# default to checkout at ~/src/devtools/devtools-frontend
# yarn devtools

# with a custom devtools location (could be path to standalone checkout):
# yarn devtools ~/code/devtools/devtools-frontend

chromium_dir="$HOME/chromium/src"
check="\033[96m ✓\033[39m"

if [[ -n "$1" ]]; then
dt_dir="$1"
else
dt_dir="$chromium_dir/third_party/devtools-frontend/src"
dt_dir="$HOME/src/devtools/devtools-frontend"
fi

if [[ ! -d "$dt_dir" || ! -a "$dt_dir/front_end/shell.js" ]]; then
Expand Down Expand Up @@ -62,6 +60,5 @@ fe_webtests_dir="$dt_dir/test/webtests/http/tests/devtools/lighthouse"
rsync -avh "$lh_webtests_dir" "$fe_webtests_dir" --exclude="OWNERS" --delete

echo ""
echo "Done. To rebase the test expectations, run: "
echo " cd '$chromium_dir' && third_party/blink/tools/run_web_tests.py http/tests/devtools/lighthouse -t Default --layout-tests-dir third_party/devtools-frontend/src/test/webtests --reset-results"
echo " (you also need to do 'autoninja -C out/Default chrome blink_tests content_shell' in the chromium checkout)"
echo "Done. To run the webtests: "
echo " DEVTOOLS_PATH=\"$dt_dir\" yarn test-devtools"
2 changes: 1 addition & 1 deletion lighthouse-core/test/chromium-web-tests/test-locally.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ TEST_DIR="$LH_ROOT/.tmp/chromium-web-tests"

# Setup dependencies.
export DEPOT_TOOLS_PATH="$TEST_DIR/depot-tools"
export DEVTOOLS_PATH="$TEST_DIR/devtools/devtools-frontend"
export DEVTOOLS_PATH=${DEVTOOLS_PATH:-"$TEST_DIR/devtools/devtools-frontend"}
export BLINK_TOOLS_PATH="$TEST_DIR/blink_tools"
export PATH=$DEPOT_TOOLS_PATH:$PATH

Expand Down
2 changes: 1 addition & 1 deletion lighthouse-core/test/results/sample_v2.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"axe-core": "2.1.1"
}
},
"lighthouseVersion": "6.2.0",
"lighthouseVersion": "6.3.0",
"fetchTime": "2018-03-13T00:55:45.840Z",
"requestedUrl": "http://localhost:10200/dobetterweb/dbw_tester.html",
"finalUrl": "http://localhost:10200/dobetterweb/dbw_tester.html",
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "lighthouse",
"version": "6.2.0",
"version": "6.3.0",
"description": "Lighthouse",
"main": "./lighthouse-core/index.js",
"bin": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Generate report: enabled visible

=============== Lighthouse Results ===============
URL: http://127.0.0.1:8000/devtools/lighthouse/resources/lighthouse-emulate-pass.html
Version: 6.2.0
Version: 6.3.0
TestedAsMobileDevice: true
ViewportDimensions: {
"innerWidth": 360,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@ Tests that exporting works.

++++++++ testExportHtml

# of .lh-audit divs (original): 136
# of .lh-audit divs (original): 135

# of .lh-audit divs (exported html): 136
# of .lh-audit divs (exported html): 135

++++++++ testExportJson

# of audits (json): 152
# of audits (json): 151

Original file line number Diff line number Diff line change
Expand Up @@ -349,7 +349,7 @@ Generating results...

=============== Lighthouse Results ===============
URL: http://127.0.0.1:8000/devtools/lighthouse/resources/lighthouse-basic.html
Version: 6.2.0
Version: 6.3.0
TestedAsMobileDevice: true
ViewportDimensions: {
"innerWidth": 980,
Expand Down

0 comments on commit c2b7fcb

Please sign in to comment.