Chrome Release Summary

Chrome version: 125, 124, 123, 122, 121, 120, 119, 118, 117, 116, 115, 114, 113, 112, 111, 110, 109, 108, 107, 106, 105, 104, 103, 102, 101, 100, 99, 98, 97, 96, 95, 94, 93, 92, 91, 90, 89, 88, 87, 86, 85, 84, 83, 82, 81, 80, 79, 78, 77, 76, 75, 74, 73, 72, 71, 70, 69, 68, 67, 66, 65, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0

Chrome 84

Enabled (15) | Origin Trial (0) | Behind a flag (0) | Deprecated (0) | Removed (2)

Enabled by default in 84

This release of Chrome had 15 new features.

Content Indexing API

Allows websites to register offline enabled content in the browser. This allows the browser to improve the offline experience and allow content browsing when the user is offline. This data could also be used to improve on-device search and to augment browsing history. #

This feature was specified in this Spec.

Resources

Docs: https://web.dev/content-indexing-api/

Samples: https://github.com/GoogleChrome/samples/tree/gh-pages/web-sharehttps://contentindex.dev/

Gutters in flexbox: row-gap and column-gap properties

This css property allows you to specify spacing between flex items and/or flex lines. #

This feature was specified in this Spec.

Resources

Docs: https://developer.mozilla.org/en-US/docs/Web/CSS/row-gap

Samples: https://jsbin.com/jibudiyene/edit?html,css,output

JavaScript weak references

Weak references enable JavaScript developers to create weak references to JavaScript objects. Weak references and finalizers help web developers define cleanup routines that don't keep the related objects alive but are (optionally) executed after the related object is garbage-collected. #

This feature was specified in this Spec.

Resources

Docs: https://v8.dev/features/weak-references

Samples: https://v8.dev/features/weak-references

Layout Instability Shifted Element Surfacing

Extends the layout instability API with information about specific DOM element(s) that experienced a shift. #

This feature was specified in this Spec.

Resources

Docs: https://github.com/WICG/layout-instability/blob/master/README.md#source-attribution

No linked samples

Private methods and accessors

Keeping state and behavior private to a class lets library authors present a clear, stable interface, while changing their code over time behind the scenes. The class fields proposal provides private fields for classes and instances, and this proposal builds on that by adding private methods and accessors (getter/setters) to JavaScript. With this proposal, any class element can be private. #

This feature was specified in this Spec.

Resources

Docs: https://docs.google.com/document/d/1T-Ql6HOIH2U_8YjWkwK2rTfywwb7b3Qe8d3jkz72KwA/edit

No linked samples

ReportingObserver on workers

Expose ReportingObserver (https://www.chromestatus.com/feature/4691191559880704) to workers. This has already been specified, but it was exposed only to Window because we didn't need it on workers. As we are introducing new reports reported to workers we need to expose it to Worker too. #

This feature was specified in this Spec.

Resources

Docs: Not needed because the implementation is trivial.

No linked samples

Resize Observer Updates

ResizeObserver is a an existing DOM observer API intended to be used for observing the size of DOM elements. There have been three updates to the spec: * A new ResizeObserverSize type was added * New properties on ResizeObserverEntry, specifically contentBoxSize, borderBoxSize, and devicePixelContentBoxSize * Exposure of new properties as sequences #

This feature was specified in this Spec.

Resources

Docs: https://drafts.csswg.org/resize-observer/

No linked samples

Screen Wake Lock API

An API that allows web applications to request a screen wake lock. Under the right conditions, and if allowed, the screen wake lock prevents the system from turning off a device's screen. #

This feature was specified in this Spec.

Resources

Docs: https://web.dev/wake-lock

Samples: https://reillyeon.github.io/scraps/wakelock.html

Unprefixed 'appearance' CSS property

This feature introduces 'appearance' CSS property, which is the unprefixed version of '-webkit-appearance'. #

This feature was specified in this Spec.

Resources

Docs: https://docs.google.com/document/d/178JUQ6Nx0VnXPeDu_Y_rGDAF-6ZymvmQCa6xJa-13gk/edit?usp=sharing

No linked samples

Unprefixed ruby-position CSS property

The 'ruby-position' CSS property controls the position of ruby annotation. It's the unprefixed version of the '-webkit-ruby-position' property. This property has three possible keywords: 'over', 'under', and 'inter-character'. For now, only the first two are being implemented. This change creates feature parity with Firefox. #

This feature was specified in this Spec.

Resources

Docs: N/A

No linked samples

Web Animations API

Update the web animations JavaScript API to align with the specifications in https://drafts.csswg.org/web-animations-1/. The Animation interface is extended to include support for promises, replaceable animations, and read-only access to the animation timeline. The Animatable and DocumentOrShadowRoot interfaces are expanded to support getAnimations. The KeyframeEffect interface is expanded to support compositing modes, getKeyframes, setKeyframes, and pseudoElement. #

This feature was specified in this Spec.

Resources

Docs: https://drafts.csswg.org/web-animations-1/

Samples: https://birtles.github.io/mozdev2019/https://mozdevs.github.io/Animation-examples/

Web Authenticator API: cross-origin iframe support

Adds support for web authentication calls from cross-origin iframes if enabled by a feature policy. This brings Chrome in line with the Web Authentication level two specification (https://w3c.github.io/webauthn/#sctn-iframe-guidance). #

This feature was specified in this Spec.

Resources

Docs: None. WebAuthn actions will now be permitted when Feature Policy allows it.

No linked samples

WebOTP

The WebOTP API (formerly called the SMS Receiver API) notifies an application when a specially-crafted SMS message is delivered to the user’s phone. The message must be addressed to the application's origin. The application only receives an OTP code in the message. #

This feature was specified in this Spec.

Resources

Docs: https://web.dev/web-otp/

Samples: https://code.sgo.to/tmp/sms.html

fractionalSecondDigits option for Intl.DateTimeFormat

Enhances the Intl.DateTimeFormat API by adding a “ fractionalSecondDigits” option to control the format of fractions of a second. #

This feature was specified in this Spec.

Resources

Docs: https://docs.google.com/document/d/1KXbFOzTsfIHXhk0uw8p8WXIHZ1Bm1xMZXahtDOiK40Q/edit#

Samples: https://docs.google.com/document/d/1KXbFOzTsfIHXhk0uw8p8WXIHZ1Bm1xMZXahtDOiK40Q/edit#

revert keyword

The 'revert' keyword allows authors to roll back the cascade to the previous cascade level for a given CSS property. For example, on a <div> element, specifying 'display:revert' will cause the computed value of 'display' to be 'block' (assuming no user styles). #

This feature was specified in this Spec.

Resources

Docs: N/A

No linked samples

Origin Trials in-progress in 84

This release of Chrome had 0 new origin trials.

Flagged features in 84

This release of Chrome had 0 are available behind a flag.

Deprecations and Removals

Deprecation policy

To keep the platform healthy, we sometimes remove APIs from the Web Platform which have run their course. There can be many reasons why we would remove an API, such as:

Some of these changes will have an effect on a very small number of sites. To mitigate issues ahead of time, we try to give developers advanced notice so they can make the required changes to keep their sites running.

Chrome currently has a process for deprecations and removals of API's, essentially:

You can find a list of all deprecated features on chromestatus.com using the deprecated filter and removed features by applying the removed filter. We will also try to summarize some of the changes, reasoning, and migration paths in these posts.

Deprecated features in 84

This release of Chrome had 0 features deprecated.

Removed features in 84

This release of Chrome had 2 features removed.

@import rules in CSSStyleSheet.replace()

The original spec for constructable stylesheets allowed for calls to sheet.replace("@import('some.css');"). This use case is being removed - calls to replace() will throw an exception if @import rules are found in the replaced content. The CSS Working Group resolved to remove this feature on Feb 19, 2020: https://github.com/WICG/construct-stylesheets/issues/119#issuecomment-588352418. This feature was deprecated in M83, and will be removed in M84. #

This feature was specified in this Spec.

Resources

Docs: https://github.com/WICG/construct-stylesheets/blob/gh-pages/explainer.md

No linked samples

TLS 1.0 and TLS 1.1

This removal has been delayed in Stable until Chrome 84. TLS 1.0 and 1.1 were deprecated in Chrome 72 with a planned removal in Chrome 81 (in early 2020). Other browsers are also removing support for TLS 1.0 and 1.1 at this time. Previously, we showed a deprecation warning in DevTools. In M-79, Chrome marked affected sites as "Not Secure". In M-84, Chrome will show a full page interstitial warning on sites that do not support TLS 1.2 or higher. In M-98, the error will no longer be bypassable. #

This feature was specified in this Spec.

Resources

Docs: https://security.googleblog.com/2018/10/modernizing-transport-security.htmlhttps://blog.chromium.org/2019/10/chrome-ui-for-deprecating-legacy-tls.html

No linked samples