From eb9c8ce20c5e70f745299a9d0b7f6f62662c4e8f Mon Sep 17 00:00:00 2001 From: Andrey Lushnikov Date: Mon, 22 Feb 2021 11:17:55 -0800 Subject: [PATCH] feat(chromium): roll Chromium to Dev @ Feb 19, 2021 (#5536) --- README.md | 4 ++-- browsers.json | 2 +- src/server/chromium/protocol.ts | 27 +++++++++++++++++++-------- types/protocol.d.ts | 27 +++++++++++++++++++-------- 4 files changed, 41 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index ec8be539af..23de6dd1d4 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # 🎭 Playwright -[![npm version](https://img.shields.io/npm/v/playwright.svg?style=flat)](https://www.npmjs.com/package/playwright) [![Join Slack](https://img.shields.io/badge/join-slack-infomational)](https://join.slack.com/t/playwright/shared_invite/enQtOTEyMTUxMzgxMjIwLThjMDUxZmIyNTRiMTJjNjIyMzdmZDA3MTQxZWUwZTFjZjQwNGYxZGM5MzRmNzZlMWI5ZWUyOTkzMjE5Njg1NDg) [![Chromium version](https://img.shields.io/badge/chromium-90.0.4412.0-blue.svg?logo=google-chrome)](https://www.chromium.org/Home) [![Firefox version](https://img.shields.io/badge/firefox-86.0b10-blue.svg?logo=mozilla-firefox)](https://www.mozilla.org/en-US/firefox/new/) [![WebKit version](https://img.shields.io/badge/webkit-14.1-blue.svg?logo=safari)](https://webkit.org/) +[![npm version](https://img.shields.io/npm/v/playwright.svg?style=flat)](https://www.npmjs.com/package/playwright) [![Join Slack](https://img.shields.io/badge/join-slack-infomational)](https://join.slack.com/t/playwright/shared_invite/enQtOTEyMTUxMzgxMjIwLThjMDUxZmIyNTRiMTJjNjIyMzdmZDA3MTQxZWUwZTFjZjQwNGYxZGM5MzRmNzZlMWI5ZWUyOTkzMjE5Njg1NDg) [![Chromium version](https://img.shields.io/badge/chromium-90.0.4421.0-blue.svg?logo=google-chrome)](https://www.chromium.org/Home) [![Firefox version](https://img.shields.io/badge/firefox-86.0b10-blue.svg?logo=mozilla-firefox)](https://www.mozilla.org/en-US/firefox/new/) [![WebKit version](https://img.shields.io/badge/webkit-14.1-blue.svg?logo=safari)](https://webkit.org/) ## [Documentation](https://playwright.dev) | [API reference](https://playwright.dev/#?path=docs/api.md) @@ -8,7 +8,7 @@ Playwright is a Node.js library to automate [Chromium](https://www.chromium.org/ | | Linux | macOS | Windows | | :--- | :---: | :---: | :---: | -| Chromium 90.0.4412.0 | :white_check_mark: | :white_check_mark: | :white_check_mark: | +| Chromium 90.0.4421.0 | :white_check_mark: | :white_check_mark: | :white_check_mark: | | WebKit 14.1 | :white_check_mark: | :white_check_mark: | :white_check_mark: | | Firefox 86.0b10 | :white_check_mark: | :white_check_mark: | :white_check_mark: | diff --git a/browsers.json b/browsers.json index 5f2eb5bae3..bb9f790b78 100644 --- a/browsers.json +++ b/browsers.json @@ -3,7 +3,7 @@ "browsers": [ { "name": "chromium", - "revision": "851527", + "revision": "854489", "download": true }, { diff --git a/src/server/chromium/protocol.ts b/src/server/chromium/protocol.ts index fed66bb799..3f72c664fe 100644 --- a/src/server/chromium/protocol.ts +++ b/src/server/chromium/protocol.ts @@ -810,9 +810,8 @@ some CSP errors in the future. } export type SharedArrayBufferIssueType = "TransferIssue"|"CreationIssue"; /** - * Details for a request that has been blocked with the BLOCKED_BY_RESPONSE -code. Currently only used for COEP/COOP, but may be extended to include -some CSP errors in the future. + * Details for a issue arising from an SAB being instantiated in, or +transfered to a context that is not cross-origin isolated. */ export interface SharedArrayBufferIssueDetails { sourceCodeLocation: SourceCodeLocation; @@ -847,12 +846,23 @@ used when violation type is kDigitalAssetLinks. fontSize: string; fontWeight: string; } + /** + * Details for a CORS related issue, e.g. a warning or error related to +CORS RFC1918 enforcement. + */ + export interface CorsIssueDetails { + corsErrorStatus: Network.CorsErrorStatus; + isWarning: boolean; + request: AffectedRequest; + resourceIPAddressSpace?: Network.IPAddressSpace; + clientSecurityState?: Network.ClientSecurityState; + } /** * A unique identifier for the type of issue. Each type may use one of the optional fields in InspectorIssueDetails to convey more specific information about the kind of issue. */ - export type InspectorIssueCode = "SameSiteCookieIssue"|"MixedContentIssue"|"BlockedByResponseIssue"|"HeavyAdIssue"|"ContentSecurityPolicyIssue"|"SharedArrayBufferIssue"|"TrustedWebActivityIssue"|"LowTextContrastIssue"; + export type InspectorIssueCode = "SameSiteCookieIssue"|"MixedContentIssue"|"BlockedByResponseIssue"|"HeavyAdIssue"|"ContentSecurityPolicyIssue"|"SharedArrayBufferIssue"|"TrustedWebActivityIssue"|"LowTextContrastIssue"|"CorsIssue"; /** * This struct holds a list of optional fields with additional information specific to the kind of issue. When adding a new issue code, please also @@ -867,6 +877,7 @@ add a new optional field to this type. sharedArrayBufferIssueDetails?: SharedArrayBufferIssueDetails; twaQualityEnforcementDetails?: TrustedWebActivityIssueDetails; lowTextContrastIssueDetails?: LowTextContrastIssueDetails; + corsIssueDetails?: CorsIssueDetails; } /** * An inspector issue reported from the back-end. @@ -7486,7 +7497,7 @@ https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges- */ errors?: SignedExchangeError[]; } - export type PrivateNetworkRequestPolicy = "Allow"|"BlockFromInsecureToMorePrivate"; + export type PrivateNetworkRequestPolicy = "Allow"|"BlockFromInsecureToMorePrivate"|"WarnFromInsecureToMorePrivate"; export type IPAddressSpace = "Local"|"Private"|"Public"|"Unknown"; export interface ClientSecurityState { initiatorIsSecureContext: boolean; @@ -14927,7 +14938,7 @@ other objects in their object group. NOTE: If you change anything here, make sure to also update `subtype` in `ObjectPreview` and `PropertyPreview` below. */ - subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"; + subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"|"wasmvalue"; /** * Object class (constructor) name. Specified for `object` type values only. */ @@ -14979,7 +14990,7 @@ The result value is json ML array. /** * Object subtype hint. Specified for `object` type values only. */ - subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"; + subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"|"wasmvalue"; /** * String representation of the object. */ @@ -15017,7 +15028,7 @@ The result value is json ML array. /** * Object subtype hint. Specified for `object` type values only. */ - subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"; + subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"|"wasmvalue"; } export interface EntryPreview { /** diff --git a/types/protocol.d.ts b/types/protocol.d.ts index fed66bb799..3f72c664fe 100644 --- a/types/protocol.d.ts +++ b/types/protocol.d.ts @@ -810,9 +810,8 @@ some CSP errors in the future. } export type SharedArrayBufferIssueType = "TransferIssue"|"CreationIssue"; /** - * Details for a request that has been blocked with the BLOCKED_BY_RESPONSE -code. Currently only used for COEP/COOP, but may be extended to include -some CSP errors in the future. + * Details for a issue arising from an SAB being instantiated in, or +transfered to a context that is not cross-origin isolated. */ export interface SharedArrayBufferIssueDetails { sourceCodeLocation: SourceCodeLocation; @@ -847,12 +846,23 @@ used when violation type is kDigitalAssetLinks. fontSize: string; fontWeight: string; } + /** + * Details for a CORS related issue, e.g. a warning or error related to +CORS RFC1918 enforcement. + */ + export interface CorsIssueDetails { + corsErrorStatus: Network.CorsErrorStatus; + isWarning: boolean; + request: AffectedRequest; + resourceIPAddressSpace?: Network.IPAddressSpace; + clientSecurityState?: Network.ClientSecurityState; + } /** * A unique identifier for the type of issue. Each type may use one of the optional fields in InspectorIssueDetails to convey more specific information about the kind of issue. */ - export type InspectorIssueCode = "SameSiteCookieIssue"|"MixedContentIssue"|"BlockedByResponseIssue"|"HeavyAdIssue"|"ContentSecurityPolicyIssue"|"SharedArrayBufferIssue"|"TrustedWebActivityIssue"|"LowTextContrastIssue"; + export type InspectorIssueCode = "SameSiteCookieIssue"|"MixedContentIssue"|"BlockedByResponseIssue"|"HeavyAdIssue"|"ContentSecurityPolicyIssue"|"SharedArrayBufferIssue"|"TrustedWebActivityIssue"|"LowTextContrastIssue"|"CorsIssue"; /** * This struct holds a list of optional fields with additional information specific to the kind of issue. When adding a new issue code, please also @@ -867,6 +877,7 @@ add a new optional field to this type. sharedArrayBufferIssueDetails?: SharedArrayBufferIssueDetails; twaQualityEnforcementDetails?: TrustedWebActivityIssueDetails; lowTextContrastIssueDetails?: LowTextContrastIssueDetails; + corsIssueDetails?: CorsIssueDetails; } /** * An inspector issue reported from the back-end. @@ -7486,7 +7497,7 @@ https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges- */ errors?: SignedExchangeError[]; } - export type PrivateNetworkRequestPolicy = "Allow"|"BlockFromInsecureToMorePrivate"; + export type PrivateNetworkRequestPolicy = "Allow"|"BlockFromInsecureToMorePrivate"|"WarnFromInsecureToMorePrivate"; export type IPAddressSpace = "Local"|"Private"|"Public"|"Unknown"; export interface ClientSecurityState { initiatorIsSecureContext: boolean; @@ -14927,7 +14938,7 @@ other objects in their object group. NOTE: If you change anything here, make sure to also update `subtype` in `ObjectPreview` and `PropertyPreview` below. */ - subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"; + subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"|"wasmvalue"; /** * Object class (constructor) name. Specified for `object` type values only. */ @@ -14979,7 +14990,7 @@ The result value is json ML array. /** * Object subtype hint. Specified for `object` type values only. */ - subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"; + subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"|"wasmvalue"; /** * String representation of the object. */ @@ -15017,7 +15028,7 @@ The result value is json ML array. /** * Object subtype hint. Specified for `object` type values only. */ - subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"; + subtype?: "array"|"null"|"node"|"regexp"|"date"|"map"|"set"|"weakmap"|"weakset"|"iterator"|"generator"|"error"|"proxy"|"promise"|"typedarray"|"arraybuffer"|"dataview"|"webassemblymemory"|"wasmvalue"; } export interface EntryPreview { /**