New features and major changes coming to DevTools in Chrome 66 include:
- Blackboxing in the Network panel
- Auto-adjust zooming in Device Mode
- Pretty-printing in the Preview and Response tabs
- Previewing HTML content in the Preview tab
- Local Overrides with styles inside of HTML
Read on, or watch the video version of the release notes below.
Blackboxing in the Network panel
The Initiator column in the Network panel tells you why a resource was requested. For example, if JavaScript causes an image to be fetched, the Initiator column shows you the line of JavaScript code that caused the request.
Previously, if your framework wrapped network requests in a wrapper, the Initiator column wouldn't be that helpful. All network requests pointed to the same line of wrapper code.

requests.js
What you really want in this scenario is to see the application code that causes the request. That's now possible:
- Hover over the Initiator column. The call stack that caused the request appears in a pop-up.
- Right-click the call that you want to hide from the initiator results.
- Select Blackbox script. The Initiator column now hides any calls from the script that you blackboxed.

requests.js

requests.js
, the
Initiator column now shows more helpful results
Manage your blackboxed scripts from the Blackboxing tab in Settings.
See Ignore a script or pattern of scripts to learn more about blackboxing.
Pretty-printing in the Preview and Response tabs
The Preview tab in the Network panel now pretty-prints resources by default when it detects that those resources have been minified.

analytics.js
by default
To view the unminified version of a resource, use the Response tab. You can also manually pretty-print resources from the Response tab, via the new Format button.

analytics.js
via the
Format button
Previewing HTML content in the Preview tab
Previously, the Preview tab in the Network panel showed the code of an HTML resource in certain situations, while rendering a preview of the HTML in others. The Preview tab now always does a basic rendering of the HTML. It's not intended to be a full browser, so it may not display HTML exactly as you expect. If you want to see the HTML code, click the Response tab, or right-click a resource and select Open in Sources panel.

Auto-adjust zooming in Device Mode
When in Device Mode, open the Zoom dropdown and select Auto-adjust zoom to automatically resize the viewport whenever you change device orientation.
Local Overrides now works with some styles defined in HTML
Back when DevTools launched Local Overrides in Chrome 65, one limitation was that it
couldn't track changes to styles defined within HTML. For example, in Figure 7 there's a
style rule in the head
of the document that declares font-weight: bold
for h1
elements.

In Chrome 65, if you changed the font-weight
declaration via the DevTools Style pane,
Local Overrides wouldn't track the change. In other words, on the next reload, the
style would revert back to font-weight: bold
. But in Chrome 66, changes like this now persist
across page loads.
Bonus tip: Blackbox framework scripts to make Event Listener Breakpoints more useful
Back when I created the Get Started With Debugging JavaScript video, some
viewers commented that event listener breakpoints aren't useful for apps built on top of
frameworks, because the event listeners are often wrapped in framework code. For example, in
Figure 8 I've set up a click
breakpoint in DevTools. When I click the button in the demo,
DevTools automatically pauses in the first line of listener code. In this case, it
pauses in Vue.js's wrapper code on line 1802, which isn't that helpful.

click
breakpoint pauses in Vue.js' wrapper code
Since the Vue.js script is in a separate file, I can blackbox that script from the Call Stack
pane in order to make this click
breakpoint more useful.

The next time I click the button and trigger the click
breakpoint, it executes the Vue.js
code without pausing in it, and then pauses on the first line of code in my app's listener,
which is where I really wanted to pause all along.

click
breakpoint now pauses on the app's listener code
A request from the DevTools team: consider Canary
If you're on Mac or Windows, please consider using Chrome Canary as your default development browser. If you report a bug or a change that you don't like while it's still in Canary, the DevTools team can address your feedback significantly faster.
Feedback
The best place to discuss any of the features or changes you see here is the google-chrome-developer-tools@googlegroups.com mailing list. You can also tweet us at @ChromeDevTools if you're short on time. If you're sure that you've encountered a bug in DevTools, please open an issue.
Discover other DevTools features
Below is a list of everything that's been covered in the What's New In DevTools series.
Chrome 80
- Support for
let
andclass
redeclarations in the Console - Improved WebAssembly debugging
- Request Initiator Chains in the Initiator tab
- Highlight the selected network request in the Overview
- URL and path columns in the Network panel
- Updated User-Agent strings
- New Audits panel configuration UI
- Per-function or per-block code coverage modes
- Code coverage must now be initiated by a page reload
Chrome 79
- Debug why a cookie was blocked
- View cookie values
- Simulate different prefers-color-scheme and prefers-reduced-motion preferences
- Code coverage updates
- Debug why a network resource was requested
- Console and Sources panels respect indentation preferences again
- New shortcuts for cursor navigation
Chrome 78
- Multi-client support in the Audits panel
- Payment Handler debugging
- Lighthouse 5.2 in the Audits panel
- Largest Contentful Paint in the Performance panel
- File DevTools issues from the Main Menu
Chrome 77
- Copy element styles
- Visualize layout shifts
- Lighthouse 5.1 in the Audits panel
- OS theme syncing
- Keyboard shortcut for opening the Breakpoint Editor
- Prefetch cache in the Network panel
- Private properties when viewing objects
- Notifications and push messages in the Application panel
Chrome 76
- Autocomplete with CSS values
- A new UI for network settings
- WebSocket messages in HAR exports
- HAR import and export buttons
- Real-time memory usage
- Service worker registration port numbers
- Inspect Background Fetch and Background Sync events
- Puppeteer for Firefox
Chrome 75
- Meaningful presets when autocompleting CSS functions
- Clear site data from the Command Menu
- View all IndexedDB databases
- View a resource's uncompressed size on hover
- Inline breakpoints in the Breakpoints pane
- IndexedDB and Cache resource counts
- Setting for disabling the detailed Inspect tooltip
- Setting for toggling tab indentation in the Editor
Chrome 74
- Highlight all nodes affected by CSS property
- Lighthouse v4 in the Audits panel
- WebSocket binary message viewer
- Capture area screenshot in the Command Menu
- Service worker filters in the Network panel
- Performance panel updates
- Long tasks in Performance panel recordings
- First Paint in the Timing section
- Bonus tip: Shortcut for viewing RGB and HSL color codes (video)
Chrome 73
- Logpoints
- Detailed tooltips in Inspect Mode
- Export code coverage data
- Navigate the Console with a keyboard
- AAA contrast ratio line in the Color Picker
- Save custom geolocation overrides
- Code folding
- Frames tab renamed to Messages tab
- Bonus tip: Network panel filtering by property (video)
Chrome 72
- Visualize performance metrics in the Performance panel
- Highlight text nodes in the DOM Tree
- Copy the JS path to a DOM node
- Audits panel updates, including a new audit that detects JS libraries and new keywords for accessing the Audits panel from the Command Menu
- Bonus tip: Use Device Mode to inspect media queries (video)
Chrome 71
- Hover over a Live Expression result to highlight a DOM node
- Store DOM nodes as global variables
- Initiator and priority information now in HAR imports and exports
- Access the Command Menu from the Main Menu
- Picture-in-Picture breakpoints
- Bonus tip: Use
monitorEvents()
to log a node's fired events in the Console (video)
Chrome 70
- Live Expressions in the Console
- Highlight DOM nodes during Eager Evaluation
- Performance panel optimizations
- More reliable debugging
- Enable network throttling from the Command Menu
- Autocomplete Conditional Breakpoints
- Break on AudioContext events
- Debug Node.js apps with ndb
- Bonus tip: Measure real world user interactions with the User Timing API
Chrome 68
- Eager Evaluation
- Argument hints
- Function autocompletion
- ES2017 keywords
- Lighthouse 3.0 in the Audits panel
- BigInt support
- Adding property paths to the Watch pane
- "Show timestamps" moved to Settings
- Bonus tip: Lesser-known Console methods (video)
Chrome 67
- Search across all network headers
- CSS variable value previews
- Copy as fetch
- New audits, desktop configuration options, and viewing traces
- Stop infinite loops
- User Timing in the Performance tabs
- JavaScript VM instances clearly listed in the Memory panel
- Network tab renamed to Page tab
- Dark theme updates
- Certificate transparency information in the Security panel
- Site isolation features in the Performance panel
- Bonus tip: Layers panel + Animations Inspector (video)
Chrome 66
- Blackboxing in the Network panel
- Auto-adjust zooming in Device Mode
- Pretty-printing in the Preview and Response tabs
- Previewing HTML content in the Preview tab
- Local Overrides support for styles inside of HTML
- Bonus tip: Blackbox framework scripts to make Event Listener Breakpoints more useful
Chrome 65
- Local Overrides
- New accessibility tools
- The Changes tab
- New SEO and performance audits
- Multiple recordings in the Performance panel
- Reliable code stepping with workers in async code
- Bonus tip: Automate DevTools actions with Puppeteer (video)
Chrome 64
- Performance Monitor
- Console Sidebar
- Group similar Console messages
- Bonus tip: Toggle hover pseudo-class (video)
Chrome 63
- Multi-client remote debugging support
- Workspaces 2.0
- 4 new audits
- Simulate push notifications with custom data
- Trigger background sync events with custom tags
- Bonus tip: Event listener breakpoints (video)
Chrome 62
- Top-level await in the Console
- New screenshot workflows
- CSS Grid highlighting
- A new Console API for querying objects
- New Console filters
- HAR imports in the Network panel
- Previewable cache resources
- More predictable cache debugging
- Block-level code coverage
Chrome 61
- Mobile device throttling simulation
- View storage usage
- View when a service worker cached responses
- Enable the FPS meter from the Command Menu
- Set mousewheel behavior to zoom or scroll
- Debugging support for ES6 modules
Chrome 60
- New Audits panel
- 3rd-Party Badges
- A new gesture for Continue To Here
- Step into async
- More informative object previews in the Console
- More informative context selection in the Console
- Real-time updates in the Coverage tab
- Simpler network throttling options
- Async stacks on by default