diff --git a/microsoft-edge/extensions-chromium/publish/contact-extensions-team.md b/microsoft-edge/extensions-chromium/publish/contact-extensions-team.md index 30059e334f..dd18acded9 100644 --- a/microsoft-edge/extensions-chromium/publish/contact-extensions-team.md +++ b/microsoft-edge/extensions-chromium/publish/contact-extensions-team.md @@ -65,12 +65,6 @@ Use this **Issues** page for: If you think an item at [Microsoft Edge Add-ons](https://microsoftedge.microsoft.com/addons/) violates a copyright or trademark, complete the [Reporting Infringement](https://www.microsoft.com/concern/dmca) form. When filling in **Step 3: Where can the infringing material be found?**, in the **Product/Service/App** option, make sure to select **Microsoft Store on Windows**. The Microsoft Edge extensions team will review your report and then take the necessary action. - -## Feature an extension in a collection - -To feature your extension in a collection at [Microsoft Edge Add-ons](https://microsoftedge.microsoft.com/addons/), see [Submit a request to add an extension to the collections on the Microsoft Edge Add-ons home page](https://forms.office.com/Pages/ResponsePage.aspx?id=v4j5cvGGr0GRqy180BHbRw01UwyBfAxNna_1ZkP3X2VUN0lBSU1YMEU3VFY0VURRODEwSjgwU00yRy4u) and complete the form. - - ## Microsoft Edge Insider forum at Tech Community diff --git a/microsoft-edge/extensions-chromium/whats-new/released-features.md b/microsoft-edge/extensions-chromium/whats-new/released-features.md index a2a47fd334..c1e4c9c026 100644 --- a/microsoft-edge/extensions-chromium/whats-new/released-features.md +++ b/microsoft-edge/extensions-chromium/whats-new/released-features.md @@ -117,16 +117,6 @@ Microsoft Edge extensions now support Manifest V3. See the blog post [Manifest *Released April 2021* - -## Request to get your extension featured - -You can request which collection your extension should be featured in at [Microsoft Edge Add-ons](https://microsoftedge.microsoft.com/addons/). - -To submit a request, go to [Submit a request to add an extension to the collections on the Microsoft Edge Add-ons home page](https://forms.office.com/pages/responsepage.aspx?id=v4j5cvGGr0GRqy180BHbRw01UwyBfAxNna_1ZkP3X2VUN0lBSU1YMEU3VFY0VURRODEwSjgwU00yRy4u). - -*Released April 2021* - - ## Localization of extension listings at Microsoft Edge Add-ons diff --git a/microsoft-edge/toc.yml b/microsoft-edge/toc.yml index 91c5e93062..6f848e9ce6 100644 --- a/microsoft-edge/toc.yml +++ b/microsoft-edge/toc.yml @@ -30,6 +30,10 @@ href: ./web-platform/release-notes/index.md displayName: what's new, announcements + - name: Microsoft Edge 137 + href: ./web-platform/release-notes/137.md + displayName: Microsoft Edge 137 web platform release notes (May 2025) # page title + - name: Microsoft Edge 136 href: ./web-platform/release-notes/136.md displayName: Microsoft Edge 136 web platform release notes (May 2025) # page title diff --git a/microsoft-edge/web-platform/release-notes/136.md b/microsoft-edge/web-platform/release-notes/136.md index 4a54c291f2..2ed5fc3a8f 100644 --- a/microsoft-edge/web-platform/release-notes/136.md +++ b/microsoft-edge/web-platform/release-notes/136.md @@ -19,9 +19,7 @@ To stay up-to-date and get the latest web platform features, download a preview * [WebView2](#webview2) * [Web platform features](#web-platform-features) * [CSS features](#css-features) - * [Auto-generated view transition names](#auto-generated-view-transition-names) * [CSS `dynamic-range-limit` property](#css-dynamic-range-limit-property) - * [Ignore `letter-spacing` in cursive scripts](#ignore-letter-spacing-in-cursive-scripts) * [Change the `string` CSS type in the `attr()` function to `raw-string`](#change-the-string-css-type-in-the-attr-function-to-raw-string) * [Type-agnostic `var()` fallback](#type-agnostic-var-fallback) * [Unprefixed `print-color-adjust`](#unprefixed-print-color-adjust) @@ -31,7 +29,6 @@ To stay up-to-date and get the latest web platform features, download a preview * [Blob URL partitioning](#blob-url-partitioning) * [Partitioning `:visited` links history](#partitioning-visited-links-history) * [Navigation initiator used in the HTTP cache partition key](#navigation-initiator-used-in-the-http-cache-partition-key) - * [Call stacks in crash reports from unresponsive web pages](#call-stacks-in-crash-reports-from-unresponsive-web-pages) * [Captured surface control](#captured-surface-control) * [Captured surface resolution](#captured-surface-resolution) * [Dispatching click events to captured pointer](#dispatching-click-events-to-captured-pointer) @@ -64,7 +61,7 @@ To stay up-to-date and get the latest web platform features, download a preview ## Edge DevTools See [What's New in Microsoft Edge DevTools](../../devtools-guide-chromium/whats-new/whats-new.md). - @@ -72,10 +69,7 @@ See [What's New in DevTools (Microsoft Edge 136)](../../devtools-guide-chromium/ ## WebView2 -See [Release Notes for the WebView2 SDK](../../webview2/release-notes/index.md). - +For WebView2, see [1.0.3240.44](../../webview2/release-notes/index.md#10324044) in _Release Notes for the WebView2 SDK_ (May 2025). @@ -86,18 +80,6 @@ For WebView2, see [1.0.n.n](../../webview2/release-notes/index.md#10nnnnnn) in _ #### CSS features - -###### Auto-generated view transition names - -The `view-transition-name` CSS property supports two new values, to avoid having to invent unique names for elements that participate in a view transition: - -* `match-element` - Generates a unique ID that's based on the element's identity. This value is useful in single-page apps where the element that's animated with a view transition is being moved in the DOM. - -* `auto` - Generates a unique ID that's based on the element's `id` attribute. This value only takes the `id` attribute into account, and ignores the type of element. This approach enables a view transition to work across multiple pages of an app, where elements with the same `id` attribute may be of different types. - -See [Determining view-transition-name automatically](https://drafts.csswg.org/css-view-transitions-2/#auto-vt-name). - - ###### CSS `dynamic-range-limit` property @@ -106,34 +88,6 @@ The `dynamic-range-limit` CSS property allows limiting the maximum brightness of See [Controlling Dynamic Range](https://drafts.csswg.org/css-color-hdr/#controlling-dynamic-range), in _CSS Color HDR Module Level 1_. - -###### Ignore `letter-spacing` in cursive scripts - -Per specification, the browser now ignores the `letter-spacing` CSS property when rendering cursive scripts, to avoid breaking words. - -If possible, the browser may apply letter spacing by translating the extra space into cursive elongation or compression. If the text cannot be expanded without breaking cursive connections, the browser treats each word as a single typographic unit for letter spacing. - -Proper cursive elongation or compression varies, based on: -* Script. -* Typeface. -* Language. -* Word location. -* Line location. -* Implementation complexity. -* Font capabilities. -* Calligraphic preferences. - -Proper cursive elongation or compression may involve shortening: -* Ligatures. -* Swash variants. -* Contextual forms. -* Elongation glyphs. - -Avoid applying the `letter-spacing` property to cursive scripts, unless you can accept non-interoperable results. - -See [letter-spacing](https://developer.mozilla.org/docs/Web/CSS/letter-spacing) at MDN. - - ###### Change the `string` CSS type in the `attr()` function to `raw-string` @@ -227,14 +181,6 @@ This boolean prevents a cross-site attack in which the attacker initiates a top- This change also improves privacy by preventing a malicious site from using navigations to infer whether a user has previously visited a given site. - -###### Call stacks in crash reports from unresponsive web pages - -When a webpage becomes unresponsive due to JavaScript code running a very long computation, such as an infinite loop, the Javascript call stack is recorded and included in the crash report that's sent to the Reporting API server endpoint that's configured by the website. - -See [Reporting API](https://developer.mozilla.org/docs/Web/API/Reporting_API) at MDN. - - ###### Captured surface control diff --git a/microsoft-edge/web-platform/release-notes/137.md b/microsoft-edge/web-platform/release-notes/137.md new file mode 100644 index 0000000000..2e1b587c24 --- /dev/null +++ b/microsoft-edge/web-platform/release-notes/137.md @@ -0,0 +1,502 @@ +--- +title: Microsoft Edge 137 web platform release notes (May 2025) +description: Microsoft Edge 137 web platform release notes (May 2025) +author: MSEdgeTeam +ms.author: msedgedevrel +ms.topic: conceptual +ms.service: microsoft-edge +ms.date: 05/05/2025 +--- +# Microsoft Edge 137 web platform release notes (May 2025) + +The following are the new web platform features and updates in Microsoft Edge 137, which releases on May 29, 2025. + +To stay up-to-date and get the latest web platform features, download a preview channel of Microsoft Edge (Beta, Dev, or Canary); go to [Become a Microsoft Edge Insider](https://www.microsoft.com/edge/download/insider). + +**Detailed contents:** + +* [Edge DevTools](#edge-devtools) +* [WebView2](#webview2) +* [Web platform features](#web-platform-features) + * [CSS features](#css-features) + * [CSS `caret-animation` property](#css-caret-animation-property) + * [CSS `if()` function](#css-if-function) + * [CSS `reading-flow` and `reading-order` properties](#css-reading-flow-and-reading-order-properties) + * [Support for `shape()` in `offset-path`](#support-for-shape-in-offset-path) + * [System accent color for `accent-color` property](#system-accent-color-for-accent-color-property) + * [Auto-generated view transition names](#auto-generated-view-transition-names) + * [Support for the `transform` attribute on ``](#support-for-the-transform-attribute-on-svg) + * [Ignore `letter-spacing` in cursive scripts](#ignore-letter-spacing-in-cursive-scripts) + * [Web APIs](#web-apis) + * [Change the error type thrown for `payment` Web Authentication credential creation from `SecurityError` to `NotAllowedError`](#change-the-error-type-thrown-for-payment-web-authentication-credential-creation-from-securityerror-to-notallowederror) + * [Allow the SVG `` element to reference external documents without requiring a URL fragment ID](#allow-the-svg-use-element-to-reference-external-documents-without-requiring-a-url-fragment-id) + * [Blob URL partitioning](#blob-url-partitioning) + * [Call stacks in crash reports from unresponsive web pages](#call-stacks-in-crash-reports-from-unresponsive-web-pages) + * [Floating point color types in ``](#floating-point-color-types-in-canvas) + * [Disallow plain text pre-rendering over HTTP](#disallow-plain-text-pre-rendering-over-http) + * [Document isolation policies](#document-isolation-policies) + * [Ed25519 signature algorithm support in Web Cryptography API](#ed25519-signature-algorithm-support-in-web-cryptography-api) + * [JavaScript Promise Integration (JSPI) in WebAssembly](#javascript-promise-integration-jspi-in-webassembly) + * [WebAssembly branch hinting](#webassembly-branch-hinting) + * [Restrict the types of attributes and arguments that SVGMatrix, SVGRect, and SVGPoint accept](#restrict-the-types-of-attributes-and-arguments-that-svgmatrix-svgrect-and-svgpoint-accept) + * [Selection API `getComposedRanges` and `direction`](#selection-api-getcomposedranges-and-direction) + * [WebGPU API](#webgpu-api) + * [Bind `externalTexture` to GPUTextureView](#bind-externaltexture-to-gputextureview) + * [Copy entire buffers with `copyBufferToBuffer()`](#copy-entire-buffers-with-copybuffertobuffer) +* [Origin trials](#origin-trials) + * [New Chromium origin trials](#new-chromium-origin-trials) + * [Pause media playback on not-rendered iframes](#pause-media-playback-on-not-rendered-iframes) + * [Microsoft Edge-only origin trials](#microsoft-edge-only-origin-trials) + * [Web app scope extensions](#web-app-scope-extensions) + * [Acquisition Info API](#acquisition-info-api) + * [MS High Contrast Deprecation](#ms-high-contrast-deprecation) + + + +## Edge DevTools + +See [What's New in Microsoft Edge DevTools](../../devtools-guide-chromium/whats-new/whats-new.md). + + + + +## WebView2 + +See [Release Notes for the WebView2 SDK](../../webview2/release-notes/index.md). + + + + +## Web platform features + + + +#### CSS features + + + +###### CSS `caret-animation` property + +Microsoft Edge supports animating the `caret-color` CSS property. However, when animated, the default blinking behavior of the caret interfered with the animation. + +The `caret-animation` property now supports two values: + +* `auto`: the default browser blinking behavior occurs. +* `manual`: you control the caret animation. + +See [Animation of the insertion caret: caret-animation](https://drafts.csswg.org/css-ui/#caret-animation) in _CSS Basic User Interface Module Level 4_. + + + +###### CSS `if()` function + +The CSS `if()` function provides a simple and concise way to express conditional logic values. + +The `if()` function accepts a series of condition-value pairs, delimited by semicolons. The function evaluates each condition sequentially, and returns the value associated with the first `true` condition. If none of the conditions evaluate to `true`, the function returns an empty token stream. + +In the following example, the `if()` function is used to set the background color of a `div` element based on the value of a custom property `--color`: + +```html + +
dark
+
light
+``` + +See [Conditional Value Selection: the if() notation](https://drafts.csswg.org/css-values-5/#if-notation) in _CSS Values and Units Module Level 5_. + + + +###### CSS `reading-flow` and `reading-order` properties + +The `reading-flow` CSS property controls the following: +* The order in which elements in a flex, grid, or block layout are exposed to accessibility tools. +* The order in which elements in a flex, grid, or block layout are focused when using the **Tab** key. + +The `reading-flow` property supports the following values: + +* `normal` +* `flex-visual` +* `flex-flow` +* `grid-rows` +* `grid-columns` +* `grid-order` +* `source-order` + +The `reading-order` CSS property allows you to manually override the order within a reading flow container. The `reading-order` value is an integer which defaults to 0. + +See also: + +* [Reading Order: the reading-flow property](https://drafts.csswg.org/css-display-4/#reading-flow) in _CSS Display Module Level 4_. +* [Overriding Reading Flow: the reading-order property](https://drafts.csswg.org/css-display-4/#reading-order) in _CSS Display Module Level 4_. + + + +###### Support for `shape()` in `offset-path` + +The `shape()` CSS function, which is already supported by the `clip-path` CSS property, is now support by the `offset-path` CSS property as well. + +This allows the same shape to be reused across multiple CSS properties. + +See [offset-path](https://developer.mozilla.org/docs/Web/CSS/offset-path) at MDN. + + + +###### System accent color for `accent-color` property + +The `accent-color` CSS property allows you to customize the color of form elements, such as checkboxes, radio buttons, or progress bars. + +Now, the default color for the `accent-color` property matches the operating system accent color./g/blink-dev/c/WwYkLjbGhoA + +See [accent-color](https://developer.mozilla.org/docs/Web/CSS/accent-color) at MDN. + + + +###### Auto-generated view transition names + +The `view-transition-name` CSS property supports two new values, to avoid having to invent unique names for elements that participate in a view transition: + +* `match-element` - Generates a unique ID that's based on the element's identity. This value is useful in single-page apps where the element that's animated with a view transition is being moved in the DOM. + +* `auto` - Generates a unique ID that's based on the element's `id` attribute. This value only takes the `id` attribute into account, and ignores the type of element. This approach enables a view transition to work across multiple pages of an app, where elements with the same `id` attribute may be of different types. + +See [Determining view-transition-name automatically](https://drafts.csswg.org/css-view-transitions-2/#auto-vt-name). + + + +###### Support for the `transform` attribute on `` + +Transform properties, such as scaling, rotation, translation, and skewing, are now supported on the `` element directly, by using the `transform` attribute. + +This allows you to manipulate the entire SVG coordinate system or its contents as a whole, providing greater flexibility in creating dynamic, responsive, and interactive vector graphics. + +By supporting the `transform` attribute, an `` element can be transformed without requiring additional wrapper elements or complex CSS workarounds. + +See [transform](https://developer.mozilla.org/docs/Web/SVG/Reference/Attribute/transform) at MDN. + + + +###### Ignore `letter-spacing` in cursive scripts + +Per specification, the browser now ignores the `letter-spacing` CSS property when rendering cursive scripts, to avoid breaking words. + +If possible, the browser may apply letter spacing by translating the extra space into cursive elongation or compression. If the text cannot be expanded without breaking cursive connections, the browser treats each word as a single typographic unit for letter spacing. + +Proper cursive elongation or compression varies, based on: +* Script. +* Typeface. +* Language. +* Word location. +* Line location. +* Implementation complexity. +* Font capabilities. +* Calligraphic preferences. + +Proper cursive elongation or compression may involve shortening: +* Ligatures. +* Swash variants. +* Contextual forms. +* Elongation glyphs. + +Avoid applying the `letter-spacing` property to cursive scripts, unless you can accept non-interoperable results. + +See [letter-spacing](https://developer.mozilla.org/docs/Web/CSS/letter-spacing) at MDN. + + + +#### Web APIs + + + +###### Change the error type thrown for `payment` Web Authentication credential creation from `SecurityError` to `NotAllowedError` + +Previously, when creating a `payment` credential in a cross-origin iframe without a user activation, a `SecurityError` was thrown. + +The error type has now been changed to `NotAllowedError`, to match the type of errors that are thrown for non-payment credentials. + +See [Payment Request API](https://developer.mozilla.org/docs/Web/API/Payment_Request_API) at MDN. + + + +###### Allow the SVG `` element to reference external documents without requiring a URL fragment ID + +SVG `` elements can now link to external SVG documents without needing to specify a fragment identifier. + +Previously, you needed to explicitly reference fragments within SVG documents. For example: + +```html + + + +``` + +In the above example, `#icon` is the fragment identifier pointing to an element with the `id="icon"` attribute within the `myshape.svg` document. If no identifier was given, the `` element was not be able to resolve the target and nothing was rendered. + +You can now omit fragment identifiers and provide the external SVG document file name only. Doing so automatically references the root element withing the SVG document. For example: + +```html + + + +``` + +See [``](https://developer.mozilla.org/docs/Web/SVG/Reference/Element/use) at MDN. + + + +###### Blob URL partitioning + +Blob URL access is now partitioned by storage key. Storage keys are top-level sites, frame origins, and the `has-cross-site-ancestor` boolean. Top-level navigations remain partitioned only by frame origin. + +Partitioning Blob URL access by storage key is similar to what's currently implemented by both Firefox and Safari. This aligns Blob URL usage with the partitioning scheme that's used by other storage APIs as part of Storage Partitioning. + +Along with that change, Microsoft Edge now enforces `noopener` on renderer-initiated top-level navigations to Blob URLs, where the corresponding site is cross-site to the top-level site that's performing the navigation. This aligns with similar behavior in Safari and with the corresponding specifications. + +Blob URL partitioning can be temporarily reverted by setting the `PartitionedBlobUrlUsage` policy: +* If this policy is set to `Enabled` or is not set, Blob URLs are partitioned. +* If this policy is set to `Disabled`, Blob URLs are not partitioned. + +See [Access restrictions on blob URLs](https://w3c.github.io/FileAPI/#partitioningOfBlobUrls) in the File API specification. + + + +###### Call stacks in crash reports from unresponsive web pages + +When a webpage becomes unresponsive due to JavaScript code running a very long computation, such as an infinite loop, the Javascript call stack is recorded and included in the crash report that's sent to the Reporting API server endpoint that's configured by the website. + +See [Reporting API](https://developer.mozilla.org/docs/Web/API/Reporting_API) at MDN. + + + +###### Floating point color types in `` + +`CanvasRenderingContext2D`, `OffscreenCanvasRenderingContext2D`, and `ImageData` objects now support floating point pixel formats, in addition to 8-bit fixed point formats. + +This change enables high-precision applications, such as: +* Medical visualizations. +* High dynamic range content. +* Linear working color spaces. + +See [Canvas Floating Point Color Values](https://github.com/w3c/ColorWeb-CG/blob/main/canvas_float.md). + + + +###### Disallow plain text pre-rendering over HTTP + +Previously, plain text pre-rendering was permitted over both HTTP and HTTPS connections. + +To make pre-rendering consistent with pre-fetch, plain text pre-rendering now only works over HTTPS. + +See [Navigation fetch changes](https://wicg.github.io/nav-speculation/prerendering.html#navigate-fetch-patch) in _Prerendering Revamped_. + + + +###### Document isolation policies + +The document isolation policies allow a document to enable cross-origin isolation for itself, without having to use Cross-Origin-Opener-Policy (COOP) or Cross-Origin-Embedder-Policy (COEP) response headers, and regardless of the cross-origin isolation status of the page. + +See also: + +* [Document-Isolation-Policy](https://wicg.github.io/document-isolation-policy/). +* [Cross-Origin-Opener-Policy](https://developer.mozilla.org/docs/Web/HTTP/Reference/Headers/Cross-Origin-Opener-Policy) at MDN. +* [Cross-Origin-Embedder-Policy](https://developer.mozilla.org/docs/Web/HTTP/Reference/Headers/Cross-Origin-Embedder-Policy) at MDN. + + + +###### Ed25519 signature algorithm support in Web Cryptography API + +The Web Cryptography API now supports the Ed25519 signature algorithm. + +See [Secure Curves in WebCrypto](https://github.com/WICG/webcrypto-secure-curves/blob/main/explainer.md). + + + +###### JavaScript Promise Integration (JSPI) in WebAssembly + +JavaScript Promise Integration (JSPI) is an API that allows WebAssembly applications to integrate with JavaScript Promises. + +JSPI allows a WebAssembly program to act as the generator of a Promise, and it allows the WebAssembly program to interact with Promise-bearing APIs. + +When an application uses JSPI to call a Promise-bearing (JavaScript) API: +* The WebAssembly code is suspended. +* The original caller to the WebAssembly program is given a Promise that will be fulfilled when the WebAssembly program finally completes. + +See [js-promise-integration](https://github.com/WebAssembly/js-promise-integration). + + + +###### WebAssembly branch hinting + +To improve the performance of compiled WebAssembly code, branch hints are used to inform the engine that a particular branch instruction is very likely to take a specific path. + +This allows the engine to make better decisions for code layout and register allocation. + +See [Branch hinting](https://github.com/WebAssembly/branch-hinting/blob/main/proposals/branch-hinting/Overview.md). + + + +###### Restrict the types of attributes and arguments that SVGMatrix, SVGRect, and SVGPoint accept + +Setting attributes and arguments of SVGMatrix, SVGRect, and SVGPoint to `Infinity` or `NaN` is now disallowed. + +Settings attributes or arguments to these values will now throw a JavaScript exception. + +See [SVG API](https://developer.mozilla.org/docs/Web/API/SVG_API) at MDN. + + + +###### Selection API `getComposedRanges` and `direction` + +The Selection API now supports the following property and method: + +* `Selection.direction` returns the selection's direction as either `none`, `forward`, or `backward`. +* `Selection.getComposedRanges()` returns a list of 0 or 1 _composed_ `StaticRange` objects. + +A composed `StaticRange` can cross shadow DOM boundaries, unlike `Range` objects. + +For example: + +```javascript +const range = getSelection().getComposedRanges({ shadowRoots: [root] }); +``` + +To make sure unknown shadow trees are not exposed by accident, if the text selection crosses a shadow root boundary that isn't provided in the `shadowRoots` property, the returned `StaticRange`'s end points will be outside of that shadow tree. + +See [Selection: getComposedRanges() method](https://developer.mozilla.org/docs/Web/API/Selection/getComposedRanges) at MDN. + + + +#### WebGPU API + + + +###### Bind `externalTexture` to `GPUTextureView` + +When creating a `GPUBindGroup` when using WepGPU, you can now bind `externalTexture` to a `GPUTextureView`. + +This helps in scenarios such as when using the WebGPU API for video effects pipelines. By allowing a compatible `GPUTextureView` to be used in place of a `GPUExternalTexture`, the shader logic is simplified. + +See [GPUExternalTexture](https://developer.mozilla.org/docs/Web/API/GPUExternalTexture) at MDN. + + + +###### Copy entire buffers with `copyBufferToBuffer()` + +The `GPUCommandEncoder.copyBufferToBuffer()` method makes it easier to copy entire buffers by allowing you to omit the `offsets` and `size` parameters. + +See [GPUCommandEncoder: copyBufferToBuffer() method](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyBufferToBuffer) at MDN. + + + +## Origin trials + +The following are new experimental APIs which you can try on your own live website for a limited time. + +To learn more about origin trials, see [Use origin trials in Microsoft Edge](../../origin-trials/index.md). + +To see the full list of available origin trials, see [Microsoft Edge Origin Trials](https://developer.microsoft.com/microsoft-edge/origin-trials/). + + + +#### New Chromium origin trials + + + +###### Pause media playback on not-rendered iframes + +Expires on January 27, 2026. + +The `media-playback-while-not-visible` permission policy pauses any media being played by iframes which are not currently rendered on not allowed frames. This applies whenever the iframe's `display` CSS property is set to `none` or when the `visibility` property is set to `hidden` or `collapse`. + +Currently, `HTMLMediaElements` and `AudioContexts` media elements are supported. + +* [Explainer](https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/IframeMediaPause/iframe_media_pausing.md) +* [Feedback](https://github.com/MicrosoftEdge/MSEdgeExplainers/issues/new?assignees=gabrielbrito&labels=Iframe+Media+Playback+Pause&title=%5BIframe+Media+Playback+Pause%5D+%3CTITLE+HERE%3E) +* [Register](https://developer.microsoft.com/en-us/microsoft-edge/origin-trials/trials/4d251c7a-1324-4943-a9ba-7ad5526f16fd) + + + +#### Microsoft Edge-only origin trials + + + +###### Web app scope extensions + +Expires on August 31, 2025 + +`scope_extensions` is a new web application manifest member which enables web apps to extend their scope to other origins. + +Scope extensions allow web apps that rely on multiple subdomains and top-level domains to be presented as a single web app. + +```json +{ + "name": "Example app", + "display": "standalone", + "start_url": "/index.html", + "scope_extensions": [ + { + "type": "type", + "origin": "https://example.com" + } + ] +} +``` + +The origins that are listed in the `scope_extensions` member must confirm that they are associated with the web app by hosting a configuration file named `.well-known/web-app-origin-association`. The file must list the web app's origin: + +```json +{ + "https://sample-app.com/": { + "scope": "/" + } +} +``` + +* [Explainer](https://github.com/WICG/manifest-incubations/blob/gh-pages/scope_extensions-explainer.md) +* [Feedback](https://github.com/WICG/manifest-incubations/issues) +* [Register](https://developer.microsoft.com/en-us/microsoft-edge/origin-trials/trials/559ac296-8237-4480-bd25-865b2802ca95) + + + +###### Acquisition Info API + +Expires on June 30, 2025. + +The Acquisition Info API supports 3P acquisition attribution for PWAs that were acquired through an app store or directly from the browser. + +* [Explainer](https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/AcquisitionInfo/explainer.md) +* [Feedback](https://github.com/MicrosoftEdge/MSEdgeExplainers/issues/new?labels=Acquisition+Info,OriginTrialFeedback&title=%5BAcquisition%20Info%5D+Feedback) +* [Register](https://developer.microsoft.com/en-us/microsoft-edge/origin-trials/trials/4013a45f-3f48-4341-81ea-1bc13bf90c83) + + + +###### MS High Contrast Deprecation + +Expires on September 9, 2025. + +Enables the legacy CSS `-ms-high-contrast` media query and the legacy `-ms-high-contrast-adjust` property. + +See [Deprecating support for -ms-high-contrast and -ms-high-contrast-adjust](https://blogs.windows.com/msedgedev/2024/04/29/deprecating-ms-high-contrast/). + +* [Explainer](https://blogs.windows.com/msedgedev/2024/04/29/deprecating-ms-high-contrast/) +* [Feedback](https://github.com/MicrosoftEdge/MSEdgeExplainers/issues/new?labels=MS+High%20Contrast,OriginTrialFeedback&title=%5BMS%20High%20Contrast%5D+Feedback) +* [Register](https://developer.microsoft.com/en-us/microsoft-edge/origin-trials/trials/fa44c0d7-cb20-490b-97fa-e2559b918759) + + + +> [!NOTE] +> Portions of this page are modifications based on work created and shared by Chromium.org and used according to terms described in the [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0). diff --git a/scripts/beta-release-notes-template.njk b/scripts/beta-release-notes-template.njk index eb676eeadc..c598f050fd 100644 --- a/scripts/beta-release-notes-template.njk +++ b/scripts/beta-release-notes-template.njk @@ -12,7 +12,7 @@ ms.date: The following are the new web platform features and updates in Microsoft Edge {{ data.nextBetaVersion }}, which releases on {% monthDayYear data.nextBetaReleaseDate %}. -To stay up-to-date and get the latest web platform features, download an Insiders version of Microsoft Edge, such as Canary, Dev, or Beta; see [Become a Microsoft Edge Insider](https://aka.ms/microsoftedge). +To stay up-to-date and get the latest web platform features, download a preview channel of Microsoft Edge (Beta, Dev, or Canary); go to [Become a Microsoft Edge Insider](https://www.microsoft.com/edge/download/insider). **Detailed contents:** @@ -45,12 +45,18 @@ To stay up-to-date and get the latest web platform features, download an Insider ## Edge DevTools See [What's New in Microsoft Edge DevTools](../../devtools-guide-chromium/whats-new/whats-new.md). + ## WebView2 See [Release Notes for the WebView2 SDK](../../webview2/release-notes/index.md). + diff --git a/scripts/web-platform-release-notes.js b/scripts/web-platform-release-notes.js index 3efb2032fb..824ae052fc 100644 --- a/scripts/web-platform-release-notes.js +++ b/scripts/web-platform-release-notes.js @@ -42,6 +42,8 @@ async function main() { const today = new Date(); let nextBetaReleaseDate = null; + let nextBetaReleaseDateYear = null; + let nextBetaReleaseDateMonth = null; let nextBetaVersion = null; for (let i = 0; i < releasesAsArray.length; i++) { @@ -55,6 +57,8 @@ async function main() { // Find the next item in the list. nextBetaVersion = releasesAsArray[i + 1].engine_version; nextBetaReleaseDate = releasesAsArray[i + 1].release_date; + nextBetaReleaseDateYear = nextBetaReleaseDate?.split("-")[0]; + nextBetaReleaseDateMonth = nextBetaReleaseDate?.split("-")[1]; break; } } @@ -153,6 +157,8 @@ async function main() { JSON.stringify({ nextBetaVersion, nextBetaReleaseDate, + nextBetaReleaseDateYear, + nextBetaReleaseDateMonth, csFeatures, edgeOTs, chromeOTs, @@ -165,8 +171,8 @@ async function main() { const date = new Date(releaseDate); const dtf = new Intl.DateTimeFormat("en-US", { month: "short" }); - const shortMonthWithDot = dtf.format(date) + "."; - + const shortMonth = dtf.format(date); + const shortMonthWithDot = shortMonth.length > 3 ? dtf.format(date) + "." : shortMonth; return `${shortMonthWithDot} ${date.getFullYear()}`; });