ignoreI18nPages when cross-origin default is set for / (718b73b), closes #272radix3 (c011378), closes #254boxen and chalk deps (df1029a), closes #230importx warnings (0a70312), closes #218npx unlighthouse-ci global usage (0c6a0eb)protocolTimeout (383f246), closes #202This version is updated to use the latest version of Lighthouse - v12. Please see the release notes for further details.
You can use the latest by explicitly providing the latest version constraint.
npx unlighthouse@^0.11.0 --site <site>
⚠️ Node v18 or higher is now required
Before this release, the Lighthouse version was stuck on v9 which was last updated over a year ago. Now Unlighthouse scans with the latest Lighthouse version (v11.6).
Expect to see new and more accurate audits as well as an improved HTML report UI. See the Lighthouse changelog for more details.
Unlighthouse nows connects with the CrUX API to give you an overview of how your origin is performing. This is especially useful for catch catching regressions and to see how your INP performance.
Several improvements to the UI to make using Unlighthouse easier including tightened-up tabs, pagination to improve the stability of scanning large sites, and fixed category score sorting.
You can now generate and send your reports to your Lighthouse CI server using the lighthouseServer reporter.
unlighthouse-ci --site <your-site> --reporter lighthouseServer --lhci-host <lhci host> --lhci-build-token <lhci buildToken>
Many thanks to @lutejka for helping with this and upgrading Lighthouse.
--sitemaps option will override robots.txt sitemaps (8f01db0), closes #169pwa category (db78086), closes #168onlyCategories when onlyAudits is supplied (3ec2531), closes #175puppeteer-cluster for puppeteer v22 compatibility (fa274d8)Unlighthouse user agent by default (5359703)--urls, allow skipping root path (dc2563f), closes #163Full Changelog: https://github.com/harlan-zw/unlighthouse/compare/v0.10.4...v0.10.5
allow rules (d4accf1)include, exclude (ca5712c)authenticate hook (c7afd0c)Works the same as the previous puppeteer:before-go-to hook but this will only be called a single time before any routes are scanned. It will automatically collect any set cookies and local storage items during the hook.
// unlighthouse.config.ts
export default {
hooks: {
async authenticate (page) {
// login to the page
await page.goto('https://example.com/login')
const emailInput = await page.$('input[type="email"]')
await emailInput.type('[email protected]')
const passwordInput = await page.$('input[type="password"]')
await passwordInput.type('password')
await Promise.all([
page.$eval('.login-form', form => form.submit()),
page.waitForNavigation(),
])
},
},
}