Chrome version: 132, 131, 130, 129, 128, 127, 126, 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
This release of Chrome had 19 new features.
Crash reports are a new type of report available via the Reporting API. These reports indicate that a crash occurred on a page and possibly the reason it occurred (out of memory for example). #
This feature was specified in this Spec.
Docs: https://github.com/w3c/reporting/blob/master/EXPLAINER.md#crashes
No linked samplesThis feature extends the existing syntax for module exports by the form export * as foo from "bar" which is the analogue to the existing form import * as foo from "bar" #
This feature was specified in this Spec.
The ErrorEvent interface, inheriting from from its parent Event, represents events providing information related to errors in scripts or in a file. According to specifications, unhandled runtime script errors fire an ErrorEvent at a target and this interface should be exposed to web workers. #
This feature was specified in this Spec.
Docs: https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent
No linked samplesThe File.webkitRelativePath of the File interface previously returned a value different from other major browsers, now it returns the same value. For example, if a user has the following local files: /tmp/a/foo/bar/1.txt, /tmp/a/foo/2.txt and they selected /tmp with a file chooser dialog, webkitRelativePath in Chrome was: foo/bar/1.txt, foo/2.txt Other browsers, which Chrome now matches, return this: tmp/a/foo/bar/1.txt, tmp/a/foo/2.txt #
This feature was specified in this Spec.
Intl.ListFormat helps libraries and frameworks format a list in a localized fashion by providing internationalized messages using a customary local word or phrase when available. For example, calling its format() method with ["Alice", "Bob", "Charlie", "Delta"] returns the string "Alice, Bob, Charlie, and Delta" in English. #
This feature was specified in this Spec.
Docs: https://developers.google.com/web/updates/2018/12/intl-listformat
No linked samplesThe default credentials mode for module script requests is changing from "omit" to "same-origin", providing credentials to same-origin module script requests and their descendant scripts (static & dynamic imports). The current behavior can be surprising in that it's misaligned with other high-level features like the Fetch API, and in the web platform's current architecture, causes a second server connection. This is undesirable for developers looking to reduce latency. #
This feature was specified in this Spec.
Captures a screen or application window to a MediaStream, for recording or sharing over the network. This allows conferencing services to provide shared presentations in a conference, and allows remote control tools like Chrome Remote Desktop to provide an image of the controlled computer's screen to the controlling computer. #
This feature was specified in this Spec.
Docs: https://docs.google.com/document/d/1XEoy_zPYQsRvAt2O68m769mTMN8bT0xqvWQyfPfqLmQ/edit?usp=sharing
No linked samplesThis property controls the method the browser uses to derive the resolution of a MediaStreamTrack. There are two supported values: "none": the track has the native resolution provided by the camera, its driver, or the OS. "crop-and-scale": the browser may use cropping and rescaling to adjust the resolution of the video produced by the camera. This is useful for getting more consistent behavior across browsers, or if an application wants to make sure it gets only native resolutions. #
This feature was specified in this Spec.
Docs: https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraintshttps://developer.mozilla.org/en-US/docs/Web/API/MediaTrackSettings
No linked samplesThe navigator.languages property exposes the Accept Language header and the languageevent, which is fired on the Window object to notifiy scripts of changes to this value. Both features allow web applications to handle i18n in the client and react to user language changes. This change makes these features available to workers. Specifically, navigator.languages is available on workers and languageevent is fired on workers as well as the main thread. #
This feature was specified in this Spec.
Docs: https://developer.mozilla.org/en-US/docs/Web/API/NavigatorLanguage/languages
No linked samplesThis feature introduces public fields to classes in ECMAScript. class MyClass { instanceProperty = 0; static staticProperty = 0; } #
This feature was specified in this Spec.
Docs: https://v8.dev/features/class-fields#public-class-fieldshttps://developers.google.com/web/updates/2018/12/class-fieldshttp://2ality.com/2017/07/class-fields.htmlhttps://github.com/tc39/proposal-class-fields/blob/master/README.md
No linked samplesRTCPeerConnection.connectionState is a aggregate value computed from the transport states of the peerconnection's underlying ICE and DTLS transports. It's intended to provide a more complete overview of the connection state than RTCPeerConnection.iceConnectionState, which is only supposed to be based on the ICE transports. #
This feature was specified in this Spec.
FetchEvent.resultingClientId, set on navigation requests or requests for workers, is the ID of the client, either a document or a worker that is created by the request. This is useful for associating the main resource request for a document with subsequent subresource requests from the document for logging and metrics purposes. #
This feature was specified in this Spec.
Previously, technical limitations prevented service workers from receiving FetchEvents for favicon requests. Now, service workers receive FetchEvents as long as the request URL is on the same-origin as the service worker. #
This feature was specified in this Spec.
Trusted Web Activities are a mode of Chrome Custom Tabs without browser UI, available to web content an app developer controls. We want the modern mobile web (primarily PWAs) to go mainstream. Nevertheless, they make up a small proportion of app experiences on Android today. The vast majority of developers simply haven’t made one yet. TWAs lower the risks of distribution by allowing developers to integrate their PWA into a native app and give PWA developers the same capabilities as native apps. #
This feature was specified in this Spec.
Docs: https://codelabs.developers.google.com/codelabs/getting-started-with-twas/index.htmlhttps://developers.google.com/web/updates/2019/02/using-twa
No linked samplesSome APIs cannot be used with a user activation (https://html.spec.whatwg.org/multipage/interaction.html#activation). Examples include requestFullScreen(), autoplay, window.open(). This restriction is a powerful tool for preventing annoying behavior by web pages. Unfortunately, there is no way to determine if a user activation is active. The User Activation Query API adds this ability. #
This feature was specified in this Spec.
User activation is the mechanism to maintain active-user-interaction state that limits use of "abusable" APIs (e.g. opening popups or vibrating). The web exposed behavior varies widely among major browsers. To unify the web, this feature defines a new user activation model that is simple enough for cross-browser implementation. The main changes introduced by this model are: (a) there is no concept of token passing, and (b) activation visibility changes from stack-scoped to frame-scoped. #
This feature was specified in this Spec.
Docs: https://mustaqahmed.github.io/user-activation-v2/https://docs.google.com/document/d/1erpl1yqJlc1pH0QvVVmi1s3WzqQLsEXTLLh6VuYp228https://docs.google.com/document/d/1XL3vCedkqL65ueaGVD-kfB5RnnrnTaxLc7kmU91oerg
Samples: https://mustaqahmed.github.io/user-activation-v2/propagation/https://mustaqahmed.github.io/user-activation-v2/api-consistency/setTimeout.html
RTCPeerConnections generate and parse SDP according to the standardized format. Exchanging SDP is needed to set up calls in WebRTC. Following the standard is important for cross-browser interoperability. Unified Plan also enables the RTCRtpTransceiver APIs. Changing from the old ("Plan B") to the new format can cause backwards-compatibility issues or break applications, see the Transition Guide: https://docs.google.com/document/d/1-ZfikoUtoJa9k-GZG1daN0BU3IjIanQ_JSscHxQesvU/edit?usp=sharing #
This feature was specified in this Spec.
Docs: https://docs.google.com/document/d/1-ZfikoUtoJa9k-GZG1daN0BU3IjIanQ_JSscHxQesvU/edit?usp=sharinghttps://webrtc.org/web-apis/chrome/unified-plan/https://tools.ietf.org/html/draft-ietf-rtcweb-jsep-24
No linked samplesA Stage 3 ECMAScript proposal changes JSON.stringify to prevent it from returning ill-formed Unicode strings. Previously, JSON.stringify would output lone surrogates if the input contained any lone surrogates: ``` JSON.stringify("\uD800"); // --> '"�"' ``` With this change, JSON.stringify outputs escape sequences for lone surrogates, making its output valid Unicode (and representable in UTF-8): ``` JSON.stringify("\uD800"); // --> '"\ud800"' ``` #
This feature was specified in this Spec.
Docs: https://v8.dev/features/well-formed-json-stringifyhttps://github.com/tc39/proposal-well-formed-stringify
No linked samplesFor dedicated workers, if an error is not handled then it will be propagated up to the parent context and the error reporting process begins again one layer up (e.g., to the window's onerror handler). This allows for errors to be propagated up to the original document giving developers the freedom to choose when and how to handle worker errors. #
This feature was specified in this Spec.
This release of Chrome had 0 new origin trials.
This release of Chrome had 0 are available behind a flag.
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.
This release of Chrome had 1 features deprecated.
Deprecate TLS 1.0 and 1.1, targeting removal in Chrome 81 (early 2020). During the deprecation period, sites using those protocols will show a warning in DevTools. After the deprecation period, in 2020, they will fail to connect if they have not upgraded to TLS 1.2 by then. #
This feature was specified in this Spec.
Docs: https://security.googleblog.com/2018/10/modernizing-transport-security.html
No linked samplesThis release of Chrome had 4 features removed.
The `Cache.addAll()` API allows multiple entries to be added to the cache at once. The spec requires that each request/response pair avoid overwriting another entry being added in the same call. Previously chrome would resolve such conflicts by storing the later entry and ignoring the earlier entry. This feature is to fix this behavior and properly reject with InvalidStateError. #
This feature was specified in this Spec.
Docs: https://developer.mozilla.org/en-US/docs/Web/API/Cache/addAll
No linked samplesHTTP-Based Public Key Pinning (HPKP) was intended to allow websites to send an HTTP header that pins one or more of the public keys present in the site's certificate chain. It has very low adoption, and although it provides security against certificate misissuance, it also creates risks of denial of service and hostile pinning. See https://groups.google.com/a/chromium.org/d/msg/blink-dev/he9tr7p3rZ8/eNMwKPmUBAAJ for details. #
This feature was specified in this Spec.
FTP is a non-securable legacy protocol. When even the linux kernel is migrating off of it (https://www.kernel.org/shutting-down-ftp-services.html), it's really time to move on. One step toward deprecation and removal is to deprecate rendering resources from FTP servers and instead download them. We'll still generate directory listings, but any non-directory listing could be downloaded rather than rendered in the browser. #
This feature was specified in this Spec.
By spec, '#' characters in data URIs should not be treated as part of the URI body, and should instead only mark the start of the URI fragment component. Historically Chrome has not adhered to the spec, instead treating '#' characters as both fragment-starters and part of the body. #
This feature was specified in this Spec.