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 81

Enabled (24) | Origin Trial (0) | Behind a flag (0) | Deprecated (0) | Removed (3)

Enabled by default in 81

This release of Chrome had 24 new features.

'submitter' property of 'submit' event

The 'submit' event, which is dispatched on form submission, gets its own interface, SubmitEvent, which has a 'submitter' property. #

This feature was specified in this Spec.

Resources

Docs: N/A

No linked samples

-webkit-margin-*-collapse

Adds properties controlling margin collapsing: -webkit-margin-top-collapse, -webkit-margin-before-collapse, -webkit-margin-before-collapse, and -webkit-margin-after-collapse. These properties have two values: "separate": disables margin collapsing by "separating the margins", e.g. https://www.software.hixie.ch/utilities/js/live-dom-viewer/?saved=7507 (its a lot more complex than this example) "discard": ignores all margins: https://www.software.hixie.ch/utilities/js/live-dom-viewer/? #

This feature was specified in this Spec.

Badging API

Allows web apps (as defined by the Web App Manifest standard) to set an app-wide badge in operating-system-specific places such as the shelf or home screen. Additionally, it gives the app a small, visible place to notify the user of new activity that might require attention, without showing a full notification. It can show additional information, such as an unread count or event type. It allows the app to convey this information when its windows are closed. #

This feature was specified in this Spec.

Resources

Docs: https://web.dev/badging-api

No linked samples

Buffered flag for long tasks

This feature tracks https://www.chromestatus.com/feature/5118272741572608 for the case of PerformanceLongTask entries #

This feature was specified in this Spec.

Resources

Docs: n/a

No linked samples

CSS Color Adjust: color-scheme meta tag

Many operating systems now have a "dark mode" preference. Some browsers already offer an option to transform webpages into a dark theme. The prefers-color-scheme media query is a way for an author to support their own dark theme, so they have full control over their own experience. The meta tag is needed so that a site can explicitly opt-in and say that they fully support a dark theme and that the browser should load a different UA sheet and not ever apply transformations. #

This feature was specified in this Spec.

Resources

Docs: https://github.com/w3c/csswg-drafts/issues/3299

No linked samples

CSS Color Adjust: color-scheme property

Let the author opt-in to follow the preferred color scheme when rendering UI elements such as default colors of form controls and scrollbars as well as the used values of the CSS system colors. #

This feature was specified in this Spec.

Resources

Docs: NA

No linked samples

Default accessibility semantics for custom elements

Lets custom element authors use ElementInternals to set a custom element's default accessibility role, states, and properties, much like the default accessibility semantics for native elements. #

This feature was specified in this Spec.

Resources

Docs: https://github.com/alice/aom/blob/gh-pages/explainer.md#per-instance-dynamic-semantics-via-the-elementinternals-object

Samples: https://jsbin.com/gipacadema/1/edit?html,output

EME: Query supported encryption schemes

A new method will allow applications to query whether a specific encryption scheme is supported by Encrypted Media Extensions (EME). #

This feature was specified in this Spec.

Resources

Docs: https://github.com/WICG/encrypted-media-encryption-scheme/blob/master/explainer.md

No linked samples

IntersectionObserver Document Root

Allow the IntersectionObserver constructor to take a Document as the 'root' argument, causing intersections to be calculated against the scrolling viewport of the document. #

This feature was specified in this Spec.

Resources

Docs: https://w3c.github.io/IntersectionObserver/#calculate-intersection-rect-algo

No linked samples

Intl.DisplayNames

Provides a new API to get localized names of language, region, script, currency codes of international standard as well as commonly used names of date fields and symbols. #

This feature was specified in this Spec.

Resources

Docs: https://goo.gl/im9wy4

No linked samples

Move onwebkit{animation,transition}XX handlers to GlobalEventHandlers

Currently, the prefixed onwebkit{animation,transition}XX handlers are only available on the Window object in Chrome. By the spec[0], these should be on GlobalEventHandlers[1] - i.e. available on HTMLElement, Document, and Window. Note that although standardized, these event handlers are still obsolete - web developers should use the non-prefixed versions instead! [0]: https://html.spec.whatwg.org/multipage/webappa [1]: https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers #

This feature was specified in this Spec.

Resources

Docs: N/A

No linked samples

Periodic prioritization of rendering on the renderer’s main thread

Previously, the rendering tasks (i.e. BeginMainFrame) were always run at default priority on the main thread. This means that rendering could be starved by other normal priority work, for example tons of postMessages (crbug.com/943621). This feature is an internal scheduling change which prevents this from happening by periodically increasing the priority of rendering if we have not rendered in a while. It targets a lower frame-rate of 10 fps. #

This feature was specified in this Spec.

PointerLock unadjustedMovement

Adds the ability to request unadjusted/unaccelerated mouse movement data when in PointerLock. If this unadjustedMovement is set to true, then the pointer movements will not be affected by the underlying platform modifications such as mouse acceleration. #

This feature was specified in this Spec.

Resources

Docs: https://web.dev/disable-mouse-acceleration/

No linked samples

Position State for Media Session

Adds support for tracking position state in a media session. The position state is a combination of the playback rate, duration and current playback time. This can then be used by browsers to display position in the UI and with the addition of seeking can support seeking/scrubbing too. By default, the position state is taken from the media element. However, this does not work in all cases and therefore this provides a setPositionState() method to the site to specify a custom position state. #

This feature was specified in this Spec.

Resources

Docs: N/A

No linked samples

RTCPeerConnection.onicecandidateerror event changes

Replaces hostCandidate with explicit address and port for oncecandidateerror event according to the latest WebRTC 1.0 spec - https://github.com/w3c/webrtc-pc/pull/2322/ #

This feature was specified in this Spec.

Streams API: WritableStream close()

Add a close() method to WritableStream objects. This permits closing the stream if it is unlocked. It is directly equivalent to getting a writer, using the writer to close the stream, and then unlocking it again. #

This feature was specified in this Spec.

Support for CSS image-orientation property

Enable the CSS image-orientation feature, currently hidden behind a flag. Change the default value to from-image, and apply the property to all images, both content and style. In practice this means that the exif orientation, when present in an image, will be used to orient the image unless the "image-orientation: none" CSS property is present. #

This feature was specified in this Spec.

Resources

Docs: None.

No linked samples

WebAudio: ConvolverNode.channelCount and channelCountMode

For a ConvolverNode, the channelCount can now be set to 1 or 2. The channelCountMode can be "explicit" or "clamped-max". Previously, a channelCount of 1 was not allowed and neither was a mode of "explicit". #

This feature was specified in this Spec.

Resources

Docs: https://webaudio.github.io/web-audio-api/#dom-audionode-channelcounthttps://webaudio.github.io/web-audio-api/#dom-audionode-channelcountmode

No linked samples

WebAudio: Refine BiquadFilterNode AudioParam limits

The WebAudio spec has updated the limits for the frequency, detune, and gain AudioParam attributes for a BiquadFilterNode. Previously these allowed any floating-point value. #

This feature was specified in this Spec.

Resources

Docs: https://webaudio.github.io/web-audio-api/#BiquadFilterNode-attributes

No linked samples

WebXR AR Module

WebXR AR Module brings Augmented Reality support to WebXR Device API. #

This feature was specified in this Spec.

Resources

Docs: n/a

Samples: https://storage.googleapis.com/chromium-webxr-test/latest.html?target=proposals/phone-ar.htmlhttps://immersive-web.github.io/webxr-samples/proposals/https://modelviewer.dev/examples/augmented-reality.html

WebXR Hit-test

The Hit-test API is an extension to the WebXR Device API that provides the capability of raycasting into the real world as understood by the underlying XR system. The goal is to provide a simple API that allows apps to place objects in the real world by casting rays that can be evaluated against the underlying platform's understanding of the real world geometry, regardless of how that is implemented (e.g., hit test against detected planes, point clouds, meshes, etc.). #

This feature was specified in this Spec.

Resources

Docs: https://github.com/immersive-web/hit-test/blob/master/explainer.md

Samples: https://storage.googleapis.com/chromium-webxr-test/latest.html?target=proposals/phone-ar-hit-test.html

WorkerOptions for shared workers constructor

Adds the WorkerOptions object as the second argument for a shared worker constructor. The previous second argument, a DOMString containing the worker’s name is still supported. #

This feature was specified in this Spec.

hrefTranslate attribute

This attribute defines the ability to for a page author to hint to the user agent's translation engine that an href should be translated if followed. #

This feature was specified in this Spec.

Resources

Docs: https://github.com/dtapuska/html-translate

No linked samples

onclosing event on RTCDataChannel

Adds the onclosing event, which signals to the user of a data channel that the other side has started closing the channel; the browser user agent will continue reading from the queue (if it contains anything), but no more data can be sent. #

This feature was specified in this Spec.

Origin Trials in-progress in 81

This release of Chrome had 0 new origin trials.

Flagged features in 81

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 81

This release of Chrome had 0 features deprecated.

Removed features in 81

This release of Chrome had 3 features removed.

Remove supportedType field from BasicCardRequest

Specifying "supportedTypes":[type] parameter for "basic-card" payment method shows cards of only the requested type, which is one of "credit", "debit", or "prepaid". #

This feature was specified in this Spec.

Remove the element

The <discard> element is part of the SVG Animations (draft) specification. It provides a way to declaratively remove elements at a specific point in time and be a mechanism for streaming animations. #

This feature was specified in this Spec.

TLS 1.3 downgrade hardening bypass

TLS 1.3 includes a backwards-compatible hardening measure to strengthen downgrade protections. However, when we shipped TLS 1.3 last year, we had to partially disable this measure due to incompatibilities with some non-compliant TLS-terminating proxies. Chrome currently implements the hardening measure for certificates which chain up to known roots, but allows a bypass for certificates chaining up to unknown roots. We intend to enable it for all connections. #

This feature was specified in this Spec.