{ "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36", "environment": { "networkUserAgent": "", "hostUserAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36", "benchmarkIndex": 2584.5, "credits": {} }, "lighthouseVersion": "6.3.0", "fetchTime": "2022-02-02T12:20:16.320Z", "requestedUrl": "https://bitbucket.org/birkenfeld/pygments-main/pull-requests/?state=MERGED", "finalUrl": "https://bitbucket.org/birkenfeld/pygments-main/pull-requests/?state=MERGED", "runWarnings": [ "Lighthouse was unable to reliably load the page you requested. Make sure you are testing the correct URL and that the server is properly responding to all requests. (Status code: 404)" ], "runtimeError": { "code": "ERRORED_DOCUMENT_REQUEST", "message": "Lighthouse was unable to reliably load the page you requested. Make sure you are testing the correct URL and that the server is properly responding to all requests. (Status code: 404)" }, "audits": { "first-contentful-paint": { "id": "first-contentful-paint", "title": "First Contentful Paint", "description": "First Contentful Paint marks the time at which the first text or image is painted. [Learn more](https://web.dev/first-contentful-paint/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "largest-contentful-paint": { "id": "largest-contentful-paint", "title": "Largest Contentful Paint", "description": "Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn More](https://web.dev/lighthouse-largest-contentful-paint/)", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "first-meaningful-paint": { "id": "first-meaningful-paint", "title": "First Meaningful Paint", "description": "First Meaningful Paint measures when the primary content of a page is visible. [Learn more](https://web.dev/first-meaningful-paint/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "speed-index": { "id": "speed-index", "title": "Speed Index", "description": "Speed Index shows how quickly the contents of a page are visibly populated. [Learn more](https://web.dev/speed-index/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "screenshot-thumbnails": { "id": "screenshot-thumbnails", "title": "Screenshot Thumbnails", "description": "This is what the load of your site looked like.", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "final-screenshot": { "id": "final-screenshot", "title": "Final Screenshot", "description": "The last screenshot captured of the pageload.", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "estimated-input-latency": { "id": "estimated-input-latency", "title": "Estimated Input Latency", "description": "Estimated Input Latency is an estimate of how long your app takes to respond to user input, in milliseconds, during the busiest 5s window of page load. If your latency is higher than 50 ms, users may perceive your app as laggy. [Learn more](https://web.dev/estimated-input-latency/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "total-blocking-time": { "id": "total-blocking-time", "title": "Total Blocking Time", "description": "Sum of all time periods between FCP and Time to Interactive, when task length exceeded 50ms, expressed in milliseconds. [Learn more](https://web.dev/lighthouse-total-blocking-time/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "max-potential-fid": { "id": "max-potential-fid", "title": "Max Potential First Input Delay", "description": "The maximum potential First Input Delay that your users could experience is the duration of the longest task. [Learn more](https://web.dev/lighthouse-max-potential-fid/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "cumulative-layout-shift": { "id": "cumulative-layout-shift", "title": "Cumulative Layout Shift", "description": "Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more](https://web.dev/cls/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "server-response-time": { "id": "server-response-time", "title": "Initial server response time was short", "description": "Keep the server response time for the main document short because all other requests depend on it. [Learn more](https://web.dev/time-to-first-byte/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "first-cpu-idle": { "id": "first-cpu-idle", "title": "First CPU Idle", "description": "First CPU Idle marks the first time at which the page's main thread is quiet enough to handle input. [Learn more](https://web.dev/first-cpu-idle/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "interactive": { "id": "interactive", "title": "Time to Interactive", "description": "Time to interactive is the amount of time it takes for the page to become fully interactive. [Learn more](https://web.dev/interactive/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "user-timings": { "id": "user-timings", "title": "User Timing marks and measures", "description": "Consider instrumenting your app with the User Timing API to measure your app's real-world performance during key user experiences. [Learn more](https://web.dev/user-timings/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "critical-request-chains": { "id": "critical-request-chains", "title": "Avoid chaining critical requests", "description": "The Critical Request Chains below show you what resources are loaded with a high priority. Consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load. [Learn more](https://web.dev/critical-request-chains/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "redirects": { "id": "redirects", "title": "Avoid multiple page redirects", "description": "Redirects introduce additional delays before the page can be loaded. [Learn more](https://web.dev/redirects/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "mainthread-work-breakdown": { "id": "mainthread-work-breakdown", "title": "Minimizes main-thread work", "description": "Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. [Learn more](https://web.dev/mainthread-work-breakdown/)", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "bootup-time": { "id": "bootup-time", "title": "JavaScript execution time", "description": "Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. [Learn more](https://web.dev/bootup-time/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "uses-rel-preload": { "id": "uses-rel-preload", "title": "Preload key requests", "description": "Consider using `` to prioritize fetching resources that are currently requested later in page load. [Learn more](https://web.dev/uses-rel-preload/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "uses-rel-preconnect": { "id": "uses-rel-preconnect", "title": "Preconnect to required origins", "description": "Consider adding `preconnect` or `dns-prefetch` resource hints to establish early connections to important third-party origins. [Learn more](https://web.dev/uses-rel-preconnect/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "font-display": { "id": "font-display", "title": "All text remains visible during webfont loads", "description": "Leverage the font-display CSS feature to ensure text is user-visible while webfonts are loading. [Learn more](https://web.dev/font-display/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "diagnostics": { "id": "diagnostics", "title": "Diagnostics", "description": "Collection of useful page vitals.", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "network-requests": { "id": "network-requests", "title": "Network Requests", "description": "Lists the network requests that were made during page load.", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "network-rtt": { "id": "network-rtt", "title": "Network Round Trip Times", "description": "Network round trip times (RTT) have a large impact on performance. If the RTT to an origin is high, it's an indication that servers closer to the user could improve performance. [Learn more](https://hpbn.co/primer-on-latency-and-bandwidth/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "network-server-latency": { "id": "network-server-latency", "title": "Server Backend Latencies", "description": "Server latencies can impact web performance. If the server latency of an origin is high, it's an indication the server is overloaded or has poor backend performance. [Learn more](https://hpbn.co/primer-on-web-performance/#analyzing-the-resource-waterfall).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "main-thread-tasks": { "id": "main-thread-tasks", "title": "Tasks", "description": "Lists the toplevel main thread tasks that executed during page load.", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "metrics": { "id": "metrics", "title": "Metrics", "description": "Collects all available metrics.", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "performance-budget": { "id": "performance-budget", "title": "Performance budget", "description": "Keep the quantity and size of network requests under the targets set by the provided performance budget. [Learn more](https://developers.google.com/web/tools/lighthouse/audits/budgets).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "timing-budget": { "id": "timing-budget", "title": "Timing budget", "description": "Set a timing budget to help you keep an eye on the performance of your site. Performant sites load fast and respond to user input events quickly. [Learn more](https://developers.google.com/web/tools/lighthouse/audits/budgets).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "resource-summary": { "id": "resource-summary", "title": "Keep request counts low and transfer sizes small", "description": "To set budgets for the quantity and size of page resources, add a budget.json file. [Learn more](https://web.dev/use-lighthouse-for-performance-budgets/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required devtoolsLogs gatherer did not run." }, "third-party-summary": { "id": "third-party-summary", "title": "Minimize third-party usage", "description": "Third-party code can significantly impact load performance. Limit the number of redundant third-party providers and try to load third-party code after your page has primarily finished loading. [Learn more](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "largest-contentful-paint-element": { "id": "largest-contentful-paint-element", "title": "Largest Contentful Paint element", "description": "This is the largest contentful element painted within the viewport. [Learn More](https://web.dev/lighthouse-largest-contentful-paint/)", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "layout-shift-elements": { "id": "layout-shift-elements", "title": "Avoid large layout shifts", "description": "These DOM elements contribute most to the CLS of the page.", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required TraceElements gatherer did not run." }, "long-tasks": { "id": "long-tasks", "title": "Avoid long main-thread tasks", "description": "Lists the longest tasks on the main thread, useful for identifying worst contributors to input delay. [Learn more](https://web.dev/long-tasks-devtools/)", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required traces gatherer did not run." }, "non-composited-animations": { "id": "non-composited-animations", "title": "Avoid non-composited animations", "description": "Animations which are not composited can be janky and increase CLS. [Learn more](https://web.dev/non-composited-animations)", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required TraceElements gatherer did not run." }, "large-javascript-libraries": { "id": "large-javascript-libraries", "title": "Avoids large JavaScript libraries with smaller alternatives", "description": "Large JavaScript libraries can lead to poor performance. Prefer smaller, functionally equivalent libraries to reduce your bundle size. [Learn more](https://developers.google.com/web/fundamentals/performance/webpack/decrease-frontend-size#optimize_dependencies).", "score": 1, "scoreDisplayMode": "binary", "displayValue": "0 large libraries found", "details": { "type": "table", "headings": [], "items": [], "summary": {} } }, "accesskeys": { "id": "accesskeys", "title": "`[accesskey]` values are unique", "description": "Access keys let users quickly focus a part of the page. For proper navigation, each access key must be unique. [Learn more](https://web.dev/accesskeys/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "aria-allowed-attr": { "id": "aria-allowed-attr", "title": "`[aria-*]` attributes match their roles", "description": "Each ARIA `role` supports a specific subset of `aria-*` attributes. Mismatching these invalidates the `aria-*` attributes. [Learn more](https://web.dev/aria-allowed-attr/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "aria-hidden-body": { "id": "aria-hidden-body", "title": "`[aria-hidden=\"true\"]` is not present on the document `
`", "description": "Assistive technologies, like screen readers, work inconsistently when `aria-hidden=\"true\"` is set on the document ``. [Learn more](https://web.dev/aria-hidden-body/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "aria-hidden-focus": { "id": "aria-hidden-focus", "title": "`[aria-hidden=\"true\"]` elements do not contain focusable descendents", "description": "Focusable descendents within an `[aria-hidden=\"true\"]` element prevent those interactive elements from being available to users of assistive technologies like screen readers. [Learn more](https://web.dev/aria-hidden-focus/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "aria-input-field-name": { "id": "aria-input-field-name", "title": "ARIA input fields have accessible names", "description": "When an input field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://web.dev/aria-input-field-name/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "aria-required-attr": { "id": "aria-required-attr", "title": "`[role]`s have all required `[aria-*]` attributes", "description": "Some ARIA roles have required attributes that describe the state of the element to screen readers. [Learn more](https://web.dev/aria-required-attr/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "aria-required-children": { "id": "aria-required-children", "title": "Elements with an ARIA `[role]` that require children to contain a specific `[role]` have all required children.", "description": "Some ARIA parent roles must contain specific child roles to perform their intended accessibility functions. [Learn more](https://web.dev/aria-required-children/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "aria-required-parent": { "id": "aria-required-parent", "title": "`[role]`s are contained by their required parent element", "description": "Some ARIA child roles must be contained by specific parent roles to properly perform their intended accessibility functions. [Learn more](https://web.dev/aria-required-parent/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "aria-roles": { "id": "aria-roles", "title": "`[role]` values are valid", "description": "ARIA roles must have valid values in order to perform their intended accessibility functions. [Learn more](https://web.dev/aria-roles/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "aria-toggle-field-name": { "id": "aria-toggle-field-name", "title": "ARIA toggle fields have accessible names", "description": "When a toggle field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://web.dev/aria-toggle-field-name/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "aria-valid-attr-value": { "id": "aria-valid-attr-value", "title": "`[aria-*]` attributes have valid values", "description": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid values. [Learn more](https://web.dev/aria-valid-attr-value/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "aria-valid-attr": { "id": "aria-valid-attr", "title": "`[aria-*]` attributes are valid and not misspelled", "description": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid names. [Learn more](https://web.dev/aria-valid-attr/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "button-name": { "id": "button-name", "title": "Buttons have an accessible name", "description": "When a button doesn't have an accessible name, screen readers announce it as \"button\", making it unusable for users who rely on screen readers. [Learn more](https://web.dev/button-name/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "bypass": { "id": "bypass", "title": "The page contains a heading, skip link, or landmark region", "description": "Adding ways to bypass repetitive content lets keyboard users navigate the page more efficiently. [Learn more](https://web.dev/bypass/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "color-contrast": { "id": "color-contrast", "title": "Background and foreground colors have a sufficient contrast ratio", "description": "Low-contrast text is difficult or impossible for many users to read. [Learn more](https://web.dev/color-contrast/).", "score": null, "scoreDisplayMode": "error", "errorMessage": "Required Accessibility gatherer did not run." }, "definition-list": { "id": "definition-list", "title": "`