What's New In DevTools (Chrome 80)

Kayce Basques
Kayce Basques

Support for let and class redeclarations in the Console

The Console now supports redeclarations of let and class statements. The inability to redeclare was a common annoyance for web developers who use the Console to experiment with new JavaScript code.

For example, previously, when redeclaring a local variable with let, the Console would throw an error:

A screenshot of the Console in Chrome 78 showing that the let redeclaration fails.

Now, the Console allows the redeclaration:

A screenshot of the Console in Chrome 80 showing that the let redeclaration succeeds.

Chromium issue #1004193

Improved WebAssembly debugging

DevTools has started to support the DWARF Debugging Standard, which means increased support for stepping over code, setting breakpoints, and resolving stack traces in your source languages within DevTools. Check out Improved WebAssembly debugging in Chrome DevTools for the full story.

A screenshot of the new DWARF-powered WebAssembly debugging.

Network panel updates

Request Initiator Chains in the Initiator tab

You can now view the initiators and dependencies of a network request as a nested list. This can help you understand why a resource was requested, or what network activity a certain resource (such as a script) caused.

A screenshot of a Request Initiator Chain in the Initiator tab

After logging network activity in the Network panel, click a resource and then go to the Initiator tab to view its Request Initiator Chain:

  • The inspected resource is bold. In the screenshot above, https://web.dev/default-627898b5.js is the inspected resource.
  • The resources above the inspected resource are the initiators. In the screenshot above, https://web.dev/bootstrap.js is the initiator of https://web.dev/default-627898b5.js. In other words, https://web.dev/bootstrap.js caused the network request for https://web.dev/default-627898b5.js.
  • The resources below the inspected resource are the dependencies. In the screenshot above, https://web.dev/chunk-f34f99f7.js is a dependency of https://web.dev/default-627898b5.js. In other words, https://web.dev/default-627898b5.js caused the network request for https://web.dev/chunk-f34f99f7.js.

Chromium issue #842488

Highlight the selected network request in the Overview

After you click a network resource in order to inspect it, the Network panel now puts a blue border around that resource in the Overview. This can help you detect if the network request is happening earlier or later than expected.

A screenshot of the Overview pane highlighting the inspected resource.

Chromium issue #988253

URL and path columns in the Network panel

Use the new Path and URL columns in the Network panel to see the absolute path or full URL of each network resource.

A screenshot of the new Path and URL columns in the Network panel.

Right-click the Waterfall table header and select Path or URL to show the new columns.

Chromium issue #993366

Updated User-Agent strings

DevTools supports setting a custom User-Agent string through the Network Conditions tab. The User-Agent string affects the User-Agent HTTP header attached to network resources, and also the value of navigator.userAgent.

The predefined User-Agent strings have been updated to reflect modern browser versions.

A screenshot of the User Agent menu in the Network Conditions tab.

To access Network Conditions, open the Command Menu and run the Show Network Conditions command.

Chromium issue #1029031

Audits panel updates

New configuration UI

The configuration UI has a new, responsive design, and the throttling configuration options have been simplified. See Audits Panel Throttling for more information on the throttling UI changes.

The new configuration UI.

Coverage tab updates

Per-function or per-block coverage modes

The Coverage tab has a new dropdown menu that lets you specify whether code coverage data should be collected per function or per block. Per block coverage is more detailed but also far more expensive to collect. DevTools uses per function coverage by default now.

The coverage mode dropdown menu.

Coverage must now be initiated by a page reload

Toggling code coverage without a page reload has been removed because the coverage data was unreliable. For example, a function can be reported as unused if its execution was a long time ago and V8's garbage collector has cleaned it up.

Chromium issue #1004203

Download the preview channels

Consider using the Chrome Canary, Dev, or Beta as your default development browser. These preview channels give you access to the latest DevTools features, let you test cutting-edge web platform APIs, and help you find issues on your site before your users do!

Get in touch with the Chrome DevTools team

Use the following options to discuss the new features, updates, or anything else related to DevTools.

What's new in DevTools

A list of everything that has been covered in the What's new in DevTools series.