The (Unofficial) Blog-style Changelog for the V8 JavaScript Engine

V8 release v14.8

Stable date:

No new features in this version.


V8 release v14.9

Stable date:

Tags:javascript

Features (3)

Payment Request: Allow payment handlers to report back internal errors

Category: JavaScript

Enables payment handlers that are accessed via the Payment Request API to return distinct errors for "user cancelled" vs "internal payment app error". This allows web developers to build better flows for users, e.g. by retrying or falling back to a different flow when an internal app error occurs, whilst properly stopping the flow if the user wants to cancel. The Web-based Payment Handler API can indicate this difference based on what error they use to reject the promised passed to PaymentRequestEvent.respondWith. If the promise is rejected with an OperationError, then "internal app error" (OperationError) is returned to the merchant via the PaymentRequest.show(), otherwise "user cancel" (AbortError) is returned. Native app payment handler infrastructure is similarly updated, but is out of scope for web APIs.

JSON data
{
  "category": "JavaScript",
  "flag_name": null,
  "id": 5942637229113344,
  "milestone": 149,
  "name": "Payment Request: Allow payment handlers to report back internal errors",
  "summary": "Enables payment handlers that are accessed via the Payment Request API to return distinct errors for \"user cancelled\" vs \"internal payment app error\". This allows web developers to build better flows for users, e.g. by retrying or falling back to a different flow when an internal app error occurs, whilst properly stopping the flow if the user wants to cancel.\n\nThe Web-based Payment Handler API can indicate this difference based on what error they use to reject the promised passed to PaymentRequestEvent.respondWith. If the promise is rejected with an OperationError, then \"internal app error\" (OperationError) is returned to the merchant via the PaymentRequest.show(), otherwise \"user cancel\" (AbortError) is returned.\n\nNative app payment handler infrastructure is similarly updated, but is out of scope for web APIs."
}
Intl.Locale.prototype.variants

Category: JavaScript

Add Intl.Locale.prototype.variants as stated in https://tc39.es/ecma402/#sec-Intl.Locale.prototype.variants and also accept "variants" in option bag in Intl.Locale consturctor as in https://tc39.es/ecma402/#sec-updatelanguageid The changes to ECMA402 is merged in https://github.com/tc39/ecma402/pull/960 and the test code in test262 are merged in in https://github.com/tc39/test262/pull/4474/

JSON data
{
  "category": "JavaScript",
  "flag_name": null,
  "id": 4709921706868736,
  "milestone": 149,
  "name": "Intl.Locale.prototype.variants",
  "summary": "Add Intl.Locale.prototype.variants as stated in \r\nhttps://tc39.es/ecma402/#sec-Intl.Locale.prototype.variants\r\nand also accept \"variants\" in option bag in Intl.Locale consturctor\r\nas in https://tc39.es/ecma402/#sec-updatelanguageid\r\nThe changes to ECMA402 is merged in \r\n https://github.com/tc39/ecma402/pull/960\r\nand the test code in test262 are merged in  in https://github.com/tc39/test262/pull/4474/"
}
Programmatic scroll promises

Category: JavaScript

Web developers currently have no way to know when a programmatic smooth-scroll has completed. This feature provides a solution to the problem: make the programmatic scroll methods return Promise objects that get resolved on scroll completion.

JSON data
{
  "category": "JavaScript",
  "flag_name": null,
  "id": 5082138340491264,
  "milestone": 149,
  "name": "Programmatic scroll promises",
  "summary": "Web developers currently have no way to know when a programmatic smooth-scroll has completed. This feature provides a solution to the problem: make the programmatic scroll methods return Promise objects that get resolved on scroll completion."
}

V8 release v15.0

Stable date:

No new features in this version.

More releases...