Comments (5)
I am seeing information for cross-origin iframes in traces collected by Lighthouse. For example:
https://trace.cafe/t/YgqEQVRVS9
This page contains several iframes and the data for each frame is present in the trace. I got the trace by running the following command:
lighthouse https://www.paulirish.com/2012/why-moving-elements-with-translate-is-better-than-posabs-topleft/ -G
Then I loaded latest-run/defaultPass.trace.json
into a trace viewer (in this case trace.cafe but the DevTools performance panel is the same).
Maybe I'm misunderstanding something. What steps can I take to reproduce what you are seeing?
from lighthouse.
Thank you for the cli pointer - indeed it is working for me there. Here is a trace of paulirish.com with my setup where I don't see the iframes - https://trace.cafe/t/ZJoILNJNJX
Given that it is working with the cli, I should be able to compare my setup to this, and can report back with what the issue was.
from lighthouse.
@rggammon are you launching Chrome in old headless mode? I believe this was the default when using Puppeteer before Puppeteer v22.x.
In old headless mode, OOPIFs are disabled and so iframe thread activity will appear on the main thread.
If this is the case, using the new headless mode should be enough to fix the issue.
from lighthouse.
@adamraine I am actually launching chrome via playwright launchPersistentContext with headless: true - which is likely the issue. Thank you for the pointer! Will figure out how to get launchPersistentContext using new headless mode, and can post that here & resolve this
from lighthouse.
My issue wasn't with lighthouse but with how it is getting run -
- Playwright has an environment variable, PLAYWRIGHT_CHROMIUM_USE_HEADLESS_NEW, that is needed to get --headless=new https://github.com/microsoft/playwright/blob/291567b922ff9afe8357103e005292a8464bbc85/packages/playwright-core/src/server/chromium/chromium.ts#L316
- Playwright config for our site is setting things like --disable-features=IsolateOrigins --disable-site-isolation-trials
- Setting DEBUG_FILE=... and DEBUG="pw:*" includes how playwright is running chromium, and for lighthouse cli, adding --verbose shows how lighthouse is running chrome, and the differences here are the source of my issue.
Closing the bug, thank you again for the pointers!
from lighthouse.
Related Issues (20)
- Unable to connect to Chrome HOT 1
- ..
- browser extensions HOT 2
- Lighthouse warns when an anchor tag is just a placeholder HOT 6
- a11y gatherer hangs on https://almanac.httparchive.org/en/2021/ecommerce HOT 7
- Improve `runtimeError` HOT 1
- Lighthouse fails to produce accessibility score altogether for incomplete axe-core result HOT 4
- People detect Lighthouse to cheat its performance score HOT 4
- Isolate lantern in preparation for moving to trace engine
- Protocol error (Storage.getUsageAndQuota): Quota information is not available HOT 1
- Invalid_url when trying to run in Incognito HOT 2
- Page is hidden at first causing a `visibilitychange` event during testing HOT 11
- INP report in Detail HOT 2
- RootCauses Artifact is slow if there are lots of "SVG changed" invalidations HOT 3
- TraceElements: `impactedNodes` is not iterable HOT 3
- Allow clicking on timeline images to open the full-size image HOT 1
- Lighthouse SEO section shows "unable to download a robots.txt file" for every site HOT 5
- layout-shifts `details.headings[n].subHeadings` is missing `valueType: 'node'` HOT 1
- zstd not recognized as compression (new in M123)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lighthouse.