diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:14:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:14:29 +0000 |
commit | fbaf0bb26397aa498eb9156f06d5a6fe34dd7dd8 (patch) | |
tree | 4c1ccaf5486d4f2009f9a338a98a83e886e29c97 /testing/web-platform/tests/interfaces | |
parent | Releasing progress-linux version 124.0.1-1~progress7.99u1. (diff) | |
download | firefox-fbaf0bb26397aa498eb9156f06d5a6fe34dd7dd8.tar.xz firefox-fbaf0bb26397aa498eb9156f06d5a6fe34dd7dd8.zip |
Merging upstream version 125.0.1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/interfaces')
22 files changed, 272 insertions, 177 deletions
diff --git a/testing/web-platform/tests/interfaces/CSP.idl b/testing/web-platform/tests/interfaces/CSP.idl index ac0a6ff563..d4a6377ebb 100644 --- a/testing/web-platform/tests/interfaces/CSP.idl +++ b/testing/web-platform/tests/interfaces/CSP.idl @@ -41,16 +41,16 @@ interface SecurityPolicyViolationEvent : Event { }; dictionary SecurityPolicyViolationEventInit : EventInit { - required USVString documentURI; - USVString referrer = ""; - USVString blockedURI = ""; - required DOMString violatedDirective; - required DOMString effectiveDirective; - required DOMString originalPolicy; - USVString sourceFile = ""; - DOMString sample = ""; - required SecurityPolicyViolationEventDisposition disposition; - required unsigned short statusCode; - unsigned long lineNumber = 0; - unsigned long columnNumber = 0; + USVString documentURI = ""; + USVString referrer = ""; + USVString blockedURI = ""; + DOMString violatedDirective = ""; + DOMString effectiveDirective = ""; + DOMString originalPolicy = ""; + USVString sourceFile = ""; + DOMString sample = ""; + SecurityPolicyViolationEventDisposition disposition = "enforce"; + unsigned short statusCode = 0; + unsigned long lineNumber = 0; + unsigned long columnNumber = 0; }; diff --git a/testing/web-platform/tests/interfaces/contact-picker.idl b/testing/web-platform/tests/interfaces/contact-picker.idl index 0119d0e2ce..fc589fa066 100644 --- a/testing/web-platform/tests/interfaces/contact-picker.idl +++ b/testing/web-platform/tests/interfaces/contact-picker.idl @@ -37,7 +37,7 @@ dictionary ContactsSelectOptions { boolean multiple = false; }; -[Exposed=Window,SecureContext] +[Exposed=Window, SecureContext] interface ContactsManager { Promise<sequence<ContactProperty>> getProperties(); Promise<sequence<ContactInfo>> select(sequence<ContactProperty> properties, optional ContactsSelectOptions options = {}); diff --git a/testing/web-platform/tests/interfaces/css-anchor-position.idl b/testing/web-platform/tests/interfaces/css-anchor-position.idl index 5d3973eff3..b79e3fce89 100644 --- a/testing/web-platform/tests/interfaces/css-anchor-position.idl +++ b/testing/web-platform/tests/interfaces/css-anchor-position.idl @@ -4,11 +4,7 @@ // Source: CSS Anchor Positioning (https://drafts.csswg.org/css-anchor-position-1/) [Exposed=Window] -interface CSSPositionFallbackRule : CSSGroupingRule { +interface CSSPositionTryRule : CSSRule { readonly attribute CSSOMString name; -}; - -[Exposed=Window] -interface CSSTryRule : CSSRule { [SameObject, PutForwards=cssText] readonly attribute CSSStyleDeclaration style; }; diff --git a/testing/web-platform/tests/interfaces/css-fonts.idl b/testing/web-platform/tests/interfaces/css-fonts.idl index 070cbc58f5..7a917662b5 100644 --- a/testing/web-platform/tests/interfaces/css-fonts.idl +++ b/testing/web-platform/tests/interfaces/css-fonts.idl @@ -19,6 +19,7 @@ interface CSSFontFeatureValuesRule : CSSRule { readonly attribute CSSFontFeatureValuesMap swash; readonly attribute CSSFontFeatureValuesMap characterVariant; readonly attribute CSSFontFeatureValuesMap styleset; + readonly attribute CSSFontFeatureValuesMap historicalForms; }; [Exposed=Window] diff --git a/testing/web-platform/tests/interfaces/css-view-transitions-2.idl b/testing/web-platform/tests/interfaces/css-view-transitions-2.idl index 7435605cda..89e57e251b 100644 --- a/testing/web-platform/tests/interfaces/css-view-transitions-2.idl +++ b/testing/web-platform/tests/interfaces/css-view-transitions-2.idl @@ -21,5 +21,5 @@ enum ViewTransitionNavigation { "auto", "none" }; [Exposed=Window] interface CSSViewTransitionRule : CSSRule { attribute ViewTransitionNavigation navigation; - attribute DOMTokenList type; + attribute DOMTokenList typeList; }; diff --git a/testing/web-platform/tests/interfaces/digital-identities.idl b/testing/web-platform/tests/interfaces/digital-identities.idl new file mode 100644 index 0000000000..9027ce61af --- /dev/null +++ b/testing/web-platform/tests/interfaces/digital-identities.idl @@ -0,0 +1,27 @@ +// GENERATED CONTENT - DO NOT EDIT +// Content was automatically extracted by Reffy into webref +// (https://github.com/w3c/webref) +// Source: Digital Credentials (https://wicg.github.io/digital-identities/) + +partial interface Navigator { + [SecureContext, SameObject] readonly attribute CredentialsContainer identity; +}; + +partial dictionary CredentialRequestOptions { + DigitalCredentialRequestOptions digital; +}; + +dictionary DigitalCredentialRequestOptions { + sequence<IdentityRequestProvider> providers; +}; + +dictionary IdentityRequestProvider { + required DOMString protocol; + required DOMString request; +}; + +[Exposed=Window, SecureContext] +interface DigitalCredential : Credential { + readonly attribute DOMString protocol; + readonly attribute DOMString data; +}; diff --git a/testing/web-platform/tests/interfaces/edit-context.idl b/testing/web-platform/tests/interfaces/edit-context.idl index eb3174e25f..60ddbafe75 100644 --- a/testing/web-platform/tests/interfaces/edit-context.idl +++ b/testing/web-platform/tests/interfaces/edit-context.idl @@ -59,7 +59,7 @@ interface TextUpdateEvent : Event { readonly attribute unsigned long selectionEnd; }; -enum UnderlineStyle { "none", "solid", "double", "dotted", "dashed", "wavy" }; +enum UnderlineStyle { "none", "solid", "dotted", "dashed", "wavy" }; enum UnderlineThickness { "none", "thin", "thick" }; dictionary TextFormatInit { diff --git a/testing/web-platform/tests/interfaces/gamepad.idl b/testing/web-platform/tests/interfaces/gamepad.idl index 77a22c1d85..024e5ea58c 100644 --- a/testing/web-platform/tests/interfaces/gamepad.idl +++ b/testing/web-platform/tests/interfaces/gamepad.idl @@ -3,7 +3,7 @@ // (https://github.com/w3c/webref) // Source: Gamepad (https://w3c.github.io/gamepad/) -[Exposed=Window, SecureContext] +[Exposed=Window] interface Gamepad { readonly attribute DOMString id; readonly attribute long index; @@ -15,7 +15,7 @@ interface Gamepad { [SameObject] readonly attribute GamepadHapticActuator vibrationActuator; }; -[Exposed=Window, SecureContext] +[Exposed=Window] interface GamepadButton { readonly attribute boolean pressed; readonly attribute boolean touched; @@ -59,7 +59,7 @@ partial interface Navigator { sequence<Gamepad?> getGamepads(); }; -[Exposed=Window, SecureContext] +[Exposed=Window] interface GamepadEvent: Event { constructor(DOMString type, GamepadEventInit eventInitDict); diff --git a/testing/web-platform/tests/interfaces/html.idl b/testing/web-platform/tests/interfaces/html.idl index 9193a7487e..7211231980 100644 --- a/testing/web-platform/tests/interfaces/html.idl +++ b/testing/web-platform/tests/interfaces/html.idl @@ -1243,6 +1243,7 @@ interface HTMLTemplateElement : HTMLElement { readonly attribute DocumentFragment content; [CEReactions] attribute DOMString shadowRootMode; [CEReactions] attribute boolean shadowRootDelegatesFocus; + [CEReactions] attribute boolean shadowRootClonable; }; [Exposed=Window] @@ -2061,6 +2062,18 @@ dictionary HashChangeEventInit : EventInit { }; [Exposed=Window] +interface PageSwapEvent : Event { + constructor(DOMString type, optional PageSwapEventInit eventInitDict = {}); + readonly attribute NavigationActivation? activation; + readonly attribute ViewTransition? viewTransition; +}; + +dictionary PageSwapEventInit : EventInit { + NavigationActivation? activation = null; + ViewTransition? viewTransition = null; +}; + +[Exposed=Window] interface PageRevealEvent : Event { constructor(DOMString type, optional PageRevealEventInit eventInitDict = {}); readonly attribute ViewTransition? viewTransition; @@ -2086,6 +2099,23 @@ interface BeforeUnloadEvent : Event { attribute DOMString returnValue; }; +[Exposed=Window] +interface NotRestoredReasonDetails { + readonly attribute DOMString reason; + [Default] object toJSON(); +}; + +[Exposed=Window] +interface NotRestoredReasons { + readonly attribute DOMString? src; + readonly attribute DOMString? id; + readonly attribute DOMString? name; + readonly attribute DOMString? url; + readonly attribute FrozenArray<NotRestoredReasonDetails>? reasons; + readonly attribute FrozenArray<NotRestoredReasons>? children; + [Default] object toJSON(); +}; + [Exposed=*] interface ErrorEvent : Event { constructor(DOMString type, optional ErrorEventInit eventInitDict = {}); @@ -2221,6 +2251,7 @@ interface mixin WindowEventHandlers { attribute EventHandler onpagehide; attribute EventHandler onpagereveal; attribute EventHandler onpageshow; + attribute EventHandler onpageswap; attribute EventHandler onpopstate; attribute EventHandler onrejectionhandled; attribute EventHandler onstorage; diff --git a/testing/web-platform/tests/interfaces/interest-invokers.tentative.idl b/testing/web-platform/tests/interfaces/interest-invokers.tentative.idl new file mode 100644 index 0000000000..f89af4d734 --- /dev/null +++ b/testing/web-platform/tests/interfaces/interest-invokers.tentative.idl @@ -0,0 +1,7 @@ +interface mixin InterestInvokerElement { + [CEReactions,Reflect=interesttarget] attribute Element? interestTargetElement; +}; + +HTMLInputElement includes InterestInvokerElement; +HTMLButtonElement includes InterestInvokerElement; +HTMLAnchorElement includes InterestInvokerElement;
\ No newline at end of file diff --git a/testing/web-platform/tests/interfaces/invokers.tentative.idl b/testing/web-platform/tests/interfaces/invokers.tentative.idl index 62f7398b82..eb1b8247f0 100644 --- a/testing/web-platform/tests/interfaces/invokers.tentative.idl +++ b/testing/web-platform/tests/interfaces/invokers.tentative.idl @@ -1,6 +1,6 @@ interface mixin InvokerElement { [CEReactions,Reflect=invoketarget] attribute Element? invokeTargetElement; - [CEReactions,Reflect,ReflectMissing="auto",ReflectEmpty="auto"] attribute DOMString invokeAction; + [CEReactions,Reflect=invokeaction] attribute DOMString invokeAction; }; interface InvokeEvent : Event { @@ -11,5 +11,5 @@ interface InvokeEvent : Event { dictionary InvokeEventInit : EventInit { Element? invoker = null; - DOMString action = "auto"; + DOMString action = ""; }; diff --git a/testing/web-platform/tests/interfaces/longtasks.idl b/testing/web-platform/tests/interfaces/longtasks.idl index 13d4940c1c..e5b6ece16a 100644 --- a/testing/web-platform/tests/interfaces/longtasks.idl +++ b/testing/web-platform/tests/interfaces/longtasks.idl @@ -70,7 +70,9 @@ interface PerformanceScriptTiming : PerformanceEntry { readonly attribute ScriptInvokerType invokerType; readonly attribute DOMString invoker; readonly attribute DOMHighResTimeStamp executionStart; - readonly attribute DOMString sourceLocation; + readonly attribute DOMString sourceURL; + readonly attribute DOMString sourceFunctionName; + readonly attribute long long sourceCharPosition; readonly attribute DOMHighResTimeStamp pauseDuration; readonly attribute DOMHighResTimeStamp forcedStyleAndLayoutDuration; readonly attribute Window? window; diff --git a/testing/web-platform/tests/interfaces/mediasession.idl b/testing/web-platform/tests/interfaces/mediasession.idl index 57c62dfbc9..8e9a21aff0 100644 --- a/testing/web-platform/tests/interfaces/mediasession.idl +++ b/testing/web-platform/tests/interfaces/mediasession.idl @@ -44,9 +44,9 @@ interface MediaSession { undefined setPositionState(optional MediaPositionState state = {}); - undefined setMicrophoneActive(boolean active); + Promise<undefined> setMicrophoneActive(boolean active); - undefined setCameraActive(boolean active); + Promise<undefined> setCameraActive(boolean active); }; [Exposed=Window] @@ -79,7 +79,17 @@ dictionary MediaPositionState { dictionary MediaSessionActionDetails { required MediaSessionAction action; +}; + +dictionary MediaSessionSeekActionDetails : MediaSessionActionDetails { double seekOffset; - double seekTime; +}; + +dictionary MediaSessionSeekToActionDetails : MediaSessionActionDetails { + required double seekTime; boolean fastSeek; }; + +dictionary MediaSessionCaptureActionDetails : MediaSessionActionDetails { + boolean isActivating; +}; diff --git a/testing/web-platform/tests/interfaces/service-workers.idl b/testing/web-platform/tests/interfaces/service-workers.idl index 6d44d61deb..c740e1098a 100644 --- a/testing/web-platform/tests/interfaces/service-workers.idl +++ b/testing/web-platform/tests/interfaces/service-workers.idl @@ -92,7 +92,7 @@ dictionary NavigationPreloadState { ByteString headerValue; }; -[Global=(Worker,ServiceWorker), Exposed=ServiceWorker] +[Global=(Worker,ServiceWorker), Exposed=ServiceWorker, SecureContext] interface ServiceWorkerGlobalScope : WorkerGlobalScope { [SameObject] readonly attribute Clients clients; [SameObject] readonly attribute ServiceWorkerRegistration registration; @@ -166,6 +166,40 @@ dictionary ExtendableEventInit : EventInit { }; [Exposed=ServiceWorker] +interface InstallEvent : ExtendableEvent { + Promise<undefined> addRoutes((RouterRule or sequence<RouterRule>) rules); +}; + +dictionary RouterRule { + required RouterCondition condition; + required RouterSource source; +}; + +dictionary RouterCondition { + URLPatternCompatible urlPattern; + ByteString requestMethod; + RequestMode requestMode; + RequestDestination requestDestination; + RunningStatus runningStatus; + + sequence<RouterCondition> _or; +}; + +typedef (RouterSourceDict or RouterSourceEnum) RouterSource; + +dictionary RouterSourceDict { + DOMString cacheName; +}; + +enum RunningStatus { "running", "not-running" }; +enum RouterSourceEnum { + "cache", + "fetch-event", + "network", + "race-network-and-fetch-handler" +}; + +[Exposed=ServiceWorker] interface FetchEvent : ExtendableEvent { constructor(DOMString type, FetchEventInit eventInitDict); [SameObject] readonly attribute Request request; diff --git a/testing/web-platform/tests/interfaces/trusted-types.idl b/testing/web-platform/tests/interfaces/trusted-types.idl index 6723994aae..db5bd635cf 100644 --- a/testing/web-platform/tests/interfaces/trusted-types.idl +++ b/testing/web-platform/tests/interfaces/trusted-types.idl @@ -7,21 +7,18 @@ interface TrustedHTML { stringifier; DOMString toJSON(); - static TrustedHTML fromLiteral(object templateStringsArray); }; [Exposed=(Window,Worker)] interface TrustedScript { stringifier; DOMString toJSON(); - static TrustedScript fromLiteral(object templateStringsArray); }; [Exposed=(Window,Worker)] interface TrustedScriptURL { stringifier; USVString toJSON(); - static TrustedScriptURL fromLiteral(object templateStringsArray); }; [Exposed=(Window,Worker)] interface TrustedTypePolicyFactory { diff --git a/testing/web-platform/tests/interfaces/turtledove.idl b/testing/web-platform/tests/interfaces/turtledove.idl index f5813b5d03..8a2d7bb594 100644 --- a/testing/web-platform/tests/interfaces/turtledove.idl +++ b/testing/web-platform/tests/interfaces/turtledove.idl @@ -31,6 +31,7 @@ dictionary GenerateBidInterestGroup { USVString updateURL; USVString trustedBiddingSignalsURL; sequence<USVString> trustedBiddingSignalsKeys; + DOMString trustedBiddingSignalsSlotSizeMode = "none"; any userBiddingSignals; sequence<AuctionAd> ads; sequence<AuctionAd> adComponents; @@ -70,6 +71,7 @@ dictionary AuctionAdConfig { sequence<USVString> interestGroupBuyers; Promise<any> auctionSignals; record<DOMString, DOMString> requestedSize; + sequence<record<DOMString, DOMString>> allSlotsRequestedSizes; Promise<any> sellerSignals; Promise<DOMString> directFromSellerSignalsHeaderAdSlot; unsigned long long sellerTimeout; @@ -98,11 +100,24 @@ partial interface Navigator { interface InterestGroupScriptRunnerGlobalScope { }; +[Exposed=InterestGroupBiddingAndScoringScriptRunnerGlobalScope] +interface ForDebuggingOnly { + undefined reportAdAuctionWin(USVString url); + undefined reportAdAuctionLoss(USVString url); +}; + +[Exposed=InterestGroupBiddingAndScoringScriptRunnerGlobalScope, + Global=InterestGroupBiddingAndScoringScriptRunnerGlobalScope] +interface InterestGroupBiddingAndScoringScriptRunnerGlobalScope : InterestGroupScriptRunnerGlobalScope { + + readonly attribute ForDebuggingOnly forDebuggingOnly; +}; + [Exposed=InterestGroupBiddingScriptRunnerGlobalScope, Global=(InterestGroupScriptRunnerGlobalScope, InterestGroupBiddingScriptRunnerGlobalScope)] interface InterestGroupBiddingScriptRunnerGlobalScope - : InterestGroupScriptRunnerGlobalScope { + : InterestGroupBiddingAndScoringScriptRunnerGlobalScope { boolean setBid(optional GenerateBidOutput generateBidOutput = {}); undefined setPriority(double priority); undefined setPrioritySignalsOverride(DOMString key, optional double? priority); @@ -129,7 +144,7 @@ dictionary GenerateBidOutput { Global=(InterestGroupScriptRunnerGlobalScope, InterestGroupScoringScriptRunnerGlobalScope)] interface InterestGroupScoringScriptRunnerGlobalScope - : InterestGroupScriptRunnerGlobalScope { + : InterestGroupBiddingAndScoringScriptRunnerGlobalScope { }; [Exposed=InterestGroupReportingScriptRunnerGlobalScope, @@ -147,6 +162,16 @@ partial interface Navigator { undefined updateAdInterestGroups(); }; +[SecureContext] +partial interface Navigator { + [SameObject] readonly attribute ProtectedAudience protectedAudience; +}; + +[SecureContext, Exposed=Window] +interface ProtectedAudience { + any queryFeatureSupport(DOMString feature); +}; + partial dictionary RequestInit { boolean adAuctionHeaders; }; @@ -166,11 +191,13 @@ dictionary BiddingBrowserSignals { required long joinCount; required long bidCount; required long recency; + required long adComponentsLimit; USVString topLevelSeller; sequence<PreviousWin> prevWinsMs; object wasmHelper; unsigned long dataVersion; + boolean forDebuggingOnlyInCooldownOrLockout = false; }; dictionary ScoringBrowserSignals { @@ -182,6 +209,7 @@ dictionary ScoringBrowserSignals { unsigned long dataVersion; sequence<USVString> adComponents; + boolean forDebuggingOnlyInCooldownOrLockout = false; }; dictionary ReportingBrowserSignals { diff --git a/testing/web-platform/tests/interfaces/uievents.idl b/testing/web-platform/tests/interfaces/uievents.idl index b34ca2e775..0f9d3d3c18 100644 --- a/testing/web-platform/tests/interfaces/uievents.idl +++ b/testing/web-platform/tests/interfaces/uievents.idl @@ -227,6 +227,16 @@ partial dictionary KeyboardEventInit { }; [Exposed=Window] +interface TextEvent : UIEvent { + readonly attribute DOMString data; + undefined initTextEvent(DOMString type, + optional boolean bubbles = false, + optional boolean cancelable = false, + optional Window? view = null, + optional DOMString data = "undefined"); +}; + +[Exposed=Window] interface MutationEvent : Event { // attrChangeType const unsigned short MODIFICATION = 1; diff --git a/testing/web-platform/tests/interfaces/wai-aria.idl b/testing/web-platform/tests/interfaces/wai-aria.idl index 13e3b0f8b1..78083f03f9 100644 --- a/testing/web-platform/tests/interfaces/wai-aria.idl +++ b/testing/web-platform/tests/interfaces/wai-aria.idl @@ -57,5 +57,4 @@ interface mixin ARIAMixin { [CEReactions] attribute DOMString? ariaValueNow; [CEReactions] attribute DOMString? ariaValueText; }; - Element includes ARIAMixin; diff --git a/testing/web-platform/tests/interfaces/webgl1.idl b/testing/web-platform/tests/interfaces/webgl1.idl index 4552610c0d..1b711e1a4c 100644 --- a/testing/web-platform/tests/interfaces/webgl1.idl +++ b/testing/web-platform/tests/interfaces/webgl1.idl @@ -518,6 +518,9 @@ interface mixin WebGLRenderingContextBase readonly attribute GLsizei drawingBufferWidth; readonly attribute GLsizei drawingBufferHeight; readonly attribute GLenum drawingBufferFormat; + + /* Upon context creation, drawingBufferColorSpace and unpackColorSpace both + default to the value "srgb". */ attribute PredefinedColorSpace drawingBufferColorSpace; attribute PredefinedColorSpace unpackColorSpace; diff --git a/testing/web-platform/tests/interfaces/webgpu.idl b/testing/web-platform/tests/interfaces/webgpu.idl index 15074009cf..ef5b9c730a 100644 --- a/testing/web-platform/tests/interfaces/webgpu.idl +++ b/testing/web-platform/tests/interfaces/webgpu.idl @@ -11,7 +11,7 @@ dictionary GPUObjectDescriptorBase { USVString label = ""; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUSupportedLimits { readonly attribute unsigned long maxTextureDimension1D; readonly attribute unsigned long maxTextureDimension2D; @@ -47,17 +47,17 @@ interface GPUSupportedLimits { readonly attribute unsigned long maxComputeWorkgroupsPerDimension; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUSupportedFeatures { readonly setlike<DOMString>; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface WGSLLanguageFeatures { readonly setlike<DOMString>; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUAdapterInfo { readonly attribute DOMString vendor; readonly attribute DOMString architecture; @@ -71,7 +71,7 @@ interface mixin NavigatorGPU { Navigator includes NavigatorGPU; WorkerNavigator includes NavigatorGPU; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPU { Promise<GPUAdapter?> requestAdapter(optional GPURequestAdapterOptions options = {}); GPUTextureFormat getPreferredCanvasFormat(); @@ -88,7 +88,7 @@ enum GPUPowerPreference { "high-performance", }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUAdapter { [SameObject] readonly attribute GPUSupportedFeatures features; [SameObject] readonly attribute GPUSupportedLimits limits; @@ -119,7 +119,7 @@ enum GPUFeatureName { "float32-filterable", }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUDevice : EventTarget { [SameObject] readonly attribute GPUSupportedFeatures features; [SameObject] readonly attribute GPUSupportedLimits limits; @@ -150,7 +150,7 @@ interface GPUDevice : EventTarget { }; GPUDevice includes GPUObjectBase; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUBuffer { readonly attribute GPUSize64Out size; readonly attribute GPUFlagsConstant usage; @@ -179,7 +179,7 @@ dictionary GPUBufferDescriptor }; typedef [EnforceRange] unsigned long GPUBufferUsageFlags; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] namespace GPUBufferUsage { const GPUFlagsConstant MAP_READ = 0x0001; const GPUFlagsConstant MAP_WRITE = 0x0002; @@ -194,13 +194,13 @@ namespace GPUBufferUsage { }; typedef [EnforceRange] unsigned long GPUMapModeFlags; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] namespace GPUMapMode { const GPUFlagsConstant READ = 0x0001; const GPUFlagsConstant WRITE = 0x0002; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUTexture { GPUTextureView createView(optional GPUTextureViewDescriptor descriptor = {}); @@ -235,7 +235,7 @@ enum GPUTextureDimension { }; typedef [EnforceRange] unsigned long GPUTextureUsageFlags; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] namespace GPUTextureUsage { const GPUFlagsConstant COPY_SRC = 0x01; const GPUFlagsConstant COPY_DST = 0x02; @@ -244,7 +244,7 @@ namespace GPUTextureUsage { const GPUFlagsConstant RENDER_ATTACHMENT = 0x10; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUTextureView { }; GPUTextureView includes GPUObjectBase; @@ -396,7 +396,7 @@ enum GPUTextureFormat { "astc-12x12-unorm-srgb", }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUExternalTexture { }; GPUExternalTexture includes GPUObjectBase; @@ -407,7 +407,7 @@ dictionary GPUExternalTextureDescriptor PredefinedColorSpace colorSpace = "srgb"; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUSampler { }; GPUSampler includes GPUObjectBase; @@ -453,7 +453,7 @@ enum GPUCompareFunction { "always", }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUBindGroupLayout { }; GPUBindGroupLayout includes GPUObjectBase; @@ -475,7 +475,7 @@ dictionary GPUBindGroupLayoutEntry { }; typedef [EnforceRange] unsigned long GPUShaderStageFlags; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] namespace GPUShaderStage { const GPUFlagsConstant VERTEX = 0x1; const GPUFlagsConstant FRAGMENT = 0x2; @@ -533,7 +533,7 @@ dictionary GPUStorageTextureBindingLayout { dictionary GPUExternalTextureBindingLayout { }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUBindGroup { }; GPUBindGroup includes GPUObjectBase; @@ -557,7 +557,7 @@ dictionary GPUBufferBinding { GPUSize64 size; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUPipelineLayout { }; GPUPipelineLayout includes GPUObjectBase; @@ -567,7 +567,7 @@ dictionary GPUPipelineLayoutDescriptor required sequence<GPUBindGroupLayout> bindGroupLayouts; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUShaderModule { Promise<GPUCompilationInfo> getCompilationInfo(); }; @@ -591,7 +591,7 @@ enum GPUCompilationMessageType { "info", }; -[Exposed=(Window, DedicatedWorker), Serializable, SecureContext] +[Exposed=(Window, Worker), Serializable, SecureContext] interface GPUCompilationMessage { readonly attribute DOMString message; readonly attribute GPUCompilationMessageType type; @@ -601,12 +601,12 @@ interface GPUCompilationMessage { readonly attribute unsigned long long length; }; -[Exposed=(Window, DedicatedWorker), Serializable, SecureContext] +[Exposed=(Window, Worker), Serializable, SecureContext] interface GPUCompilationInfo { readonly attribute FrozenArray<GPUCompilationMessage> messages; }; -[Exposed=(Window, DedicatedWorker), SecureContext, Serializable] +[Exposed=(Window, Worker), SecureContext, Serializable] interface GPUPipelineError : DOMException { constructor(optional DOMString message = "", GPUPipelineErrorInit options); readonly attribute GPUPipelineErrorReason reason; @@ -642,7 +642,7 @@ dictionary GPUProgrammableStage { typedef double GPUPipelineConstantValue; // May represent WGSL's bool, f32, i32, u32, and f16 if enabled. -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUComputePipeline { }; GPUComputePipeline includes GPUObjectBase; @@ -653,7 +653,7 @@ dictionary GPUComputePipelineDescriptor required GPUProgrammableStage compute; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPURenderPipeline { }; GPURenderPipeline includes GPUObjectBase; @@ -721,7 +721,7 @@ dictionary GPUBlendState { }; typedef [EnforceRange] unsigned long GPUColorWriteFlags; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] namespace GPUColorWrite { const GPUFlagsConstant RED = 0x1; const GPUFlagsConstant GREEN = 0x2; @@ -895,7 +895,7 @@ dictionary GPUImageCopyExternalImage { boolean flipY = false; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUCommandBuffer { }; GPUCommandBuffer includes GPUObjectBase; @@ -907,7 +907,7 @@ dictionary GPUCommandBufferDescriptor interface mixin GPUCommandsMixin { }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUCommandEncoder { GPURenderPassEncoder beginRenderPass(GPURenderPassDescriptor descriptor); GPUComputePassEncoder beginComputePass(optional GPUComputePassDescriptor descriptor = {}); @@ -972,7 +972,7 @@ interface mixin GPUDebugCommandsMixin { undefined insertDebugMarker(USVString markerLabel); }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUComputePassEncoder { undefined setPipeline(GPUComputePipeline pipeline); undefined dispatchWorkgroups(GPUSize32 workgroupCountX, optional GPUSize32 workgroupCountY = 1, optional GPUSize32 workgroupCountZ = 1); @@ -996,7 +996,7 @@ dictionary GPUComputePassDescriptor GPUComputePassTimestampWrites timestampWrites; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPURenderPassEncoder { undefined setViewport(float x, float y, float width, float height, @@ -1093,7 +1093,7 @@ interface mixin GPURenderCommandsMixin { undefined drawIndexedIndirect(GPUBuffer indirectBuffer, GPUSize64 indirectOffset); }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPURenderBundle { }; GPURenderBundle includes GPUObjectBase; @@ -1102,7 +1102,7 @@ dictionary GPURenderBundleDescriptor : GPUObjectDescriptorBase { }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPURenderBundleEncoder { GPURenderBundle finish(optional GPURenderBundleDescriptor descriptor = {}); }; @@ -1122,7 +1122,7 @@ dictionary GPUQueueDescriptor : GPUObjectDescriptorBase { }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUQueue { undefined submit(sequence<GPUCommandBuffer> commandBuffers); @@ -1148,7 +1148,7 @@ interface GPUQueue { }; GPUQueue includes GPUObjectBase; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUQuerySet { undefined destroy(); @@ -1168,7 +1168,7 @@ enum GPUQueryType { "timestamp", }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUCanvasContext { readonly attribute (HTMLCanvasElement or OffscreenCanvas) canvas; @@ -1197,7 +1197,7 @@ enum GPUDeviceLostReason { "destroyed", }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUDeviceLostInfo { readonly attribute GPUDeviceLostReason reason; readonly attribute DOMString message; @@ -1207,24 +1207,24 @@ partial interface GPUDevice { readonly attribute Promise<GPUDeviceLostInfo> lost; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUError { readonly attribute DOMString message; }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUValidationError : GPUError { constructor(DOMString message); }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUOutOfMemoryError : GPUError { constructor(DOMString message); }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUInternalError : GPUError { constructor(DOMString message); @@ -1241,7 +1241,7 @@ partial interface GPUDevice { Promise<GPUError?> popErrorScope(); }; -[Exposed=(Window, DedicatedWorker), SecureContext] +[Exposed=(Window, Worker), SecureContext] interface GPUUncapturedErrorEvent : Event { constructor( DOMString type, @@ -1255,7 +1255,7 @@ dictionary GPUUncapturedErrorEventInit : EventInit { }; partial interface GPUDevice { - [Exposed=(Window, DedicatedWorker)] + [Exposed=(Window, Worker)] attribute EventHandler onuncapturederror; }; diff --git a/testing/web-platform/tests/interfaces/webnn.idl b/testing/web-platform/tests/interfaces/webnn.idl index 721ee788bd..50ee64b185 100644 --- a/testing/web-platform/tests/interfaces/webnn.idl +++ b/testing/web-platform/tests/interfaces/webnn.idl @@ -29,74 +29,60 @@ dictionary MLContextOptions { interface ML { Promise<MLContext> createContext(optional MLContextOptions options = {}); Promise<MLContext> createContext(GPUDevice gpuDevice); - - [Exposed=(DedicatedWorker)] - MLContext createContextSync(optional MLContextOptions options = {}); - [Exposed=(DedicatedWorker)] - MLContext createContextSync(GPUDevice gpuDevice); -}; - -[SecureContext, Exposed=(Window, DedicatedWorker)] -interface MLActivation { }; -typedef (GPUBuffer or GPUTexture) MLGPUResource; - -typedef record<DOMString, MLGPUResource> MLNamedGPUResources; - -[SecureContext, Exposed=(Window, DedicatedWorker)] -interface MLCommandEncoder {}; - -partial interface MLCommandEncoder { - undefined initializeGraph(MLGraph graph); -}; +typedef record<DOMString, ArrayBufferView> MLNamedArrayBufferViews; -partial interface MLCommandEncoder { - undefined dispatch(MLGraph graph, MLNamedGPUResources inputs, MLNamedGPUResources outputs); +dictionary MLComputeResult { + MLNamedArrayBufferViews inputs; + MLNamedArrayBufferViews outputs; }; -partial interface MLCommandEncoder { - GPUCommandBuffer finish(optional GPUCommandBufferDescriptor descriptor = {}); +[SecureContext, Exposed=(Window, DedicatedWorker)] +interface MLContext { + Promise<MLComputeResult> compute( + MLGraph graph, MLNamedArrayBufferViews inputs, MLNamedArrayBufferViews outputs); }; -typedef record<DOMString, ArrayBufferView> MLNamedArrayBufferViews; - [SecureContext, Exposed=(Window, DedicatedWorker)] -interface MLContext {}; +interface MLGraph {}; -partial interface MLContext { - [Exposed=(DedicatedWorker)] - undefined computeSync( - MLGraph graph, MLNamedArrayBufferViews inputs, MLNamedArrayBufferViews outputs); +enum MLInputOperandLayout { + "nchw", + "nhwc" }; -dictionary MLComputeResult { - MLNamedArrayBufferViews inputs; - MLNamedArrayBufferViews outputs; +enum MLOperandDataType { + "float32", + "float16", + "int32", + "uint32", + "int64", + "uint64", + "int8", + "uint8" }; -partial interface MLContext { - Promise<MLComputeResult> compute( - MLGraph graph, MLNamedArrayBufferViews inputs, MLNamedArrayBufferViews outputs); +dictionary MLOperandDescriptor { + // The operand type. + required MLOperandDataType dataType; + + // The dimensions field is empty for scalar operands, + // and non-empty for tensor operands. + sequence<unsigned long> dimensions = []; }; -partial interface MLContext { - MLCommandEncoder createCommandEncoder(); +[SecureContext, Exposed=(Window, DedicatedWorker)] +interface MLOperand { + MLOperandDataType dataType(); + sequence<unsigned long> shape(); }; [SecureContext, Exposed=(Window, DedicatedWorker)] -interface MLGraph {}; +interface MLActivation {}; typedef record<DOMString, MLOperand> MLNamedOperands; -dictionary MLBufferResourceView { - required GPUBuffer resource; - unsigned long long offset = 0; - unsigned long long size; -}; - -typedef (ArrayBufferView or MLBufferResourceView) MLBufferView; - [SecureContext, Exposed=(Window, DedicatedWorker)] interface MLGraphBuilder { // Construct the graph builder from the context. @@ -106,21 +92,17 @@ interface MLGraphBuilder { MLOperand input(DOMString name, MLOperandDescriptor descriptor); // Create an operand for a graph constant. - MLOperand constant(MLOperandDescriptor descriptor, MLBufferView bufferView); + MLOperand constant(MLOperandDescriptor descriptor, ArrayBufferView bufferView); // Create a single-value operand from the specified number of the specified type. MLOperand constant(double value, optional MLOperandDataType type = "float32"); // Compile the graph up to the specified output operands asynchronously. Promise<MLGraph> build(MLNamedOperands outputs); - - // Compile the graph up to the specified output operands synchronously. - [Exposed=(DedicatedWorker)] - MLGraph buildSync(MLNamedOperands outputs); }; dictionary MLArgMinMaxOptions { - sequence<unsigned long> axes = null; + sequence<unsigned long> axes; boolean keepDimensions = false; boolean selectLastIndex = false; }; @@ -168,17 +150,10 @@ enum MLConv2dFilterOperandLayout { "ihwo" }; -enum MLAutoPad { - "explicit", - "same-upper", - "same-lower" -}; - dictionary MLConv2dOptions { sequence<unsigned long> padding; sequence<unsigned long> strides; sequence<unsigned long> dilations; - MLAutoPad autoPad = "explicit"; unsigned long groups = 1; MLInputOperandLayout inputLayout = "nchw"; MLConv2dFilterOperandLayout filterLayout = "oihw"; @@ -202,7 +177,6 @@ dictionary MLConvTranspose2dOptions { sequence<unsigned long> dilations; sequence<unsigned long> outputPadding; sequence<unsigned long> outputSizes; - MLAutoPad autoPad = "explicit"; unsigned long groups = 1; MLInputOperandLayout inputLayout = "nchw"; MLConvTranspose2dFilterOperandLayout filterLayout = "iohw"; @@ -452,7 +426,6 @@ dictionary MLPool2dOptions { sequence<unsigned long> padding; sequence<unsigned long> strides; sequence<unsigned long> dilations; - MLAutoPad autoPad = "explicit"; MLInputOperandLayout layout = "nchw"; MLRoundingType roundingType = "floor"; sequence<unsigned long> outputSizes; @@ -469,7 +442,7 @@ partial interface MLGraphBuilder { }; dictionary MLReduceOptions { - sequence<unsigned long> axes = null; + sequence<unsigned long> axes; boolean keepDimensions = false; }; @@ -574,38 +547,3 @@ partial interface MLGraphBuilder { partial interface MLGraphBuilder { MLOperand where(MLOperand condition, MLOperand input, MLOperand other); }; - -[SecureContext, Exposed=(Window, DedicatedWorker)] -interface MLOperand {}; - -partial interface MLOperand { - MLOperandDataType dataType(); -}; - -partial interface MLOperand { - sequence<unsigned long> shape(); -}; - -enum MLInputOperandLayout { - "nchw", - "nhwc" -}; - -enum MLOperandDataType { - "float32", - "float16", - "int32", - "uint32", - "int64", - "uint64", - "int8", - "uint8" -}; - -dictionary MLOperandDescriptor { - // The operand type. - required MLOperandDataType dataType; - - // The dimensions field is only required for tensor operands. - sequence<unsigned long> dimensions; -}; diff --git a/testing/web-platform/tests/interfaces/webtransport.idl b/testing/web-platform/tests/interfaces/webtransport.idl index 281c096d21..e598059c93 100644 --- a/testing/web-platform/tests/interfaces/webtransport.idl +++ b/testing/web-platform/tests/interfaces/webtransport.idl @@ -23,6 +23,9 @@ interface WebTransport { readonly attribute Promise<undefined> ready; readonly attribute WebTransportReliabilityMode reliability; readonly attribute WebTransportCongestionControl congestionControl; + [EnforceRange] attribute unsigned short? anticipatedConcurrentIncomingUnidirectionalStreams; + [EnforceRange] attribute unsigned short? anticipatedConcurrentIncomingBidirectionalStreams; + readonly attribute Promise<WebTransportCloseInfo> closed; readonly attribute Promise<undefined> draining; undefined close(optional WebTransportCloseInfo closeInfo = {}); @@ -59,6 +62,8 @@ dictionary WebTransportOptions { boolean requireUnreliable = false; sequence<WebTransportHash> serverCertificateHashes; WebTransportCongestionControl congestionControl = "default"; + [EnforceRange] unsigned short? anticipatedConcurrentIncomingUnidirectionalStreams = null; + [EnforceRange] unsigned short? anticipatedConcurrentIncomingBidirectionalStreams = null; }; enum WebTransportCongestionControl { @@ -93,8 +98,9 @@ dictionary WebTransportConnectionStats { }; dictionary WebTransportDatagramStats { - unsigned long long expiredOutgoing; unsigned long long droppedIncoming; + unsigned long long expiredIncoming; + unsigned long long expiredOutgoing; unsigned long long lostOutgoing; }; @@ -103,6 +109,7 @@ interface WebTransportSendStream : WritableStream { attribute WebTransportSendGroup? sendGroup; attribute long long sendOrder; Promise<WebTransportSendStreamStats> getStats(); + WebTransportWriter getWriter(); }; dictionary WebTransportSendStreamStats { @@ -132,6 +139,11 @@ interface WebTransportBidirectionalStream { readonly attribute WebTransportSendStream writable; }; +[Exposed=*, SecureContext] +interface WebTransportWriter : WritableStreamDefaultWriter { + Promise<undefined> atomicWrite(optional any chunk); +}; + [Exposed=(Window,Worker), Serializable, SecureContext] interface WebTransportError : DOMException { constructor(optional DOMString message = "", optional WebTransportErrorOptions options = {}); |