Skip to content

Commit c7a5853

Browse files
First edit pass on the generated 134 relnotes
1 parent 3182c45 commit c7a5853

3 files changed

Lines changed: 90 additions & 50 deletions

File tree

microsoft-edge/toc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1711,6 +1711,8 @@
17111711

17121712
- name: Release notes
17131713
items:
1714+
- name: Microsoft Edge 134
1715+
href: web-platform/release-notes/134.md
17141716
- name: Microsoft Edge 133
17151717
href: web-platform/release-notes/133.md
17161718

microsoft-edge/web-platform/release-notes/134.md

Lines changed: 87 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ author: MSEdgeTeam
55
ms.author: msedgedevrel
66
ms.topic: conceptual
77
ms.service: microsoft-edge
8-
ms.date:
8+
ms.date: 03/06/2025
99
---
1010
# Microsoft Edge 134 web platform release notes (Mar. 2025)
1111

@@ -34,32 +34,36 @@ For WebView2, see [Release Notes for the WebView2 SDK](../../webview2/release-no
3434
#### Enabled features
3535

3636

37-
3837
<!-- ---------- -->
39-
###### :has-slotted pseudo selector
38+
###### `:has-slotted` pseudo selector
4039

41-
The :has-slotted pseudo class represents a slot element with slotted content, such as a text node or element. This can be used to style elements based on whether or not they are using slot fallback content.
40+
The `:has-slotted` pseudo class represents a slot element with slotted content, such as a text node or element. This can be used to style elements based on whether or not they are using slot fallback content.
4241

4342

4443
<!-- ---------- -->
45-
###### Attribution Reporting Feature: Remove Aggregatable report limit when trigger context ID is non-null
44+
###### Attribution Reporting: Remove Aggregatable report limit when trigger context ID is non-null
4645

47-
We are landing the following change to the Attribution Reporting API focused on:
48-
* Removing aggregatable report limit when trigger context ID is non-null
46+
The aggregatable report limit when the trigger context ID is non-null is removed from the Attribution Reporting API.
4947

5048

5149
<!-- ---------- -->
5250
###### Blob URL Partitioning: Fetching/Navigation
5351

54-
As a continuation of Storage Partitioning, Chromium will implement partitioning of Blob URL access by Storage Key (top-level site, frame origin, and the has-cross-site-ancestor boolean), with the exception of top-level navigations which will remain partitioned only by frame origin. This behavior is similar to what’s currently implemented by both Firefox and Safari, and aligns Blob URL usage with the partitioning scheme used by other storage APIs as part of Storage Partitioning. In addition, Chromium will enforce noopener on renderer-initiated top-level navigations to Blob URLs where the corresponding site is cross-site to the top-level site performing the navigation. This aligns Chromium with similar behavior in Safari, and the relevant specs have been updated to reflect these changes.
52+
<!-- TODO: Chrome-only? -->
53+
54+
As a continuation of Storage Partitioning, Chromium implements partitioning of Blob URL access by Storage Key (top-level site, frame origin, and the has-cross-site-ancestor boolean), with the exception of top-level navigations which remain partitioned only by frame origin. This behavior is similar to what's currently implemented by both Firefox and Safari, and aligns Blob URL usage with the partitioning scheme used by other storage APIs as part of Storage Partitioning. In addition, Chromium enforces noopener on renderer-initiated top-level navigations to Blob URLs where the corresponding site is cross-site to the top-level site performing the navigation. This aligns Chromium with similar behavior in Safari, and the relevant specs have been updated to reflect these changes.
5555

5656
This change can be temporarily reverted by setting the PartitionedBlobURLUsage policy. The policy will be deprecated when the other storage partitioning related enterprise policies are deprecated.
5757

5858

5959
<!-- ---------- -->
6060
###### CSS Highlight Inheritance
6161

62-
With CSS Highlight Inheritance, the CSS Highlight pseudo classes, such as ::selection and ::highlight, inherit their properties through the pseudo highlight chain, rather than the element chain. The result is a more intuitive model for inheritance of properties in highlights. Specifically, "When any supported property is not given a value by the cascade ... its specified value is determined by inheritance from the corresponding highlight pseudo-element of its originating element’s parent element." There are some caveats due to properties not allowed on a highlight pseudo and historical usage: units depending on fonts, container queries, viewports etc. use metrics from the originating element, and all custom property values used in the highlight pseudo are taken from the originating element (inherited through the originating element cascade). (https://drafts.csswg.org/css-pseudo-4/#highlight-cascade)
62+
With CSS Highlight Inheritance, the CSS Highlight pseudo classes, such as `::selection` and `::highlight`, inherit their properties through the pseudo highlight chain, rather than the element chain. The result is a more intuitive model for inheritance of properties in highlights.
63+
64+
When any supported property is not given a value by the cascade, its specified value is determined by inheritance from the corresponding highlight pseudo-element of its originating element's parent element.
65+
66+
There are some caveats due to properties not allowed on a highlight pseudo and historical usage: units depending on fonts, container queries, viewports, and more use metrics from the originating element, and all custom property values used in the highlight pseudo are taken from the originating element (inherited through the originating element cascade).
6367

6468

6569
<!-- ---------- -->
@@ -71,56 +75,61 @@ Enables a page to limit the maximum brightness of HDR content.
7175
<!-- ---------- -->
7276
###### Dialog light dismiss
7377

74-
One of the nice features of the Popover API is its light dismiss behavior. This chromestatus is about bringing that same capability to `<dialog>`. A new `closedby` attribute controls behavior:
75-
76-
`<dialog closedby=none>` - no user-triggered closing of dialogs at all.
77-
`<dialog closedby=closerequest>` - user pressing ESC (or other close trigger) closes the dialog
78-
`<dialog closedby=any>` - user clicking outside the dialog, or pressing ESC, closes the dialog. Akin to `popover=auto` behavior.
78+
This brings the "light dismiss" behavior of the Popover API to `<dialog>` elements. A new `closedby` attribute controls the behavior:
7979

80+
* `<dialog closedby=none>` - no user-triggered closing of dialogs at all.
81+
* `<dialog closedby=closerequest>` - user pressing ESC (or other close trigger) closes the dialog
82+
* `<dialog closedby=any>` - user clicking outside the dialog, or pressing ESC, closes the dialog. Akin to `popover=auto` behavior.
8083

8184

8285
<!-- ---------- -->
8386
###### Document-Policy: expect-no-linked-resources
8487

85-
The expect-no-linked-resources configuration point in Document Policy allows a document to hint to the user agent to better optimize its loading sequence, such as not using the default speculative parsing behavior.
86-
87-
User Agents have implemented speculative parsing of HTML to speculatively fetch resources that are present in the HTML markup, to speed up page loading. For the vast majority of pages on the Web that have resources declared in the HTML markup, the optimization is beneficial and the cost paid in determining such resources is a sound tradeoff. However, the following scenarios might result in a sub-optimal performance tradeoff vs. the explicit time spent parsing HTML for determining sub resources to fetch:
88-
89-
* Pages that do not have any resources declared in the HTML.
90-
* Large HTML pages with minimal or no resource loads that could explicitly control preloading resources via other preload mechanisms available.
91-
88+
The `expect-no-linked-resources` configuration point in Document Policy allows a document to hint to the user agent to better optimize its loading sequence, such as not using the default speculative parsing behavior.
89+
90+
User Agents have implemented speculative parsing of HTML to speculatively fetch resources that are present in the HTML markup, to speed up page loading. For the vast majority of pages on the Web that have resources declared in the HTML markup, the optimization is beneficial and the cost paid in determining such resources is a sound tradeoff. However, the following scenarios might result in a sub-optimal performance tradeoff vs. the explicit time spent parsing HTML for determining sub resources to fetch:
91+
92+
* Pages that do not have any resources declared in the HTML.
93+
* Large HTML pages with minimal or no resource loads that could explicitly control preloading resources via other preload mechanisms available.
94+
9295
`expect-no-linked-resources` Document-Policy hints the User Agent that it may choose to optimize out the time spent in such sub resource determination.
9396

9497

9598
<!-- ---------- -->
9699
###### Explicit resource management (async)
97100

101+
<!-- TODO: What is this? -->
102+
98103
This feature addresses a common pattern in software development regarding the lifetime and management of various resources (memory, I/O, etc.). This pattern generally includes the allocation of a resource and the ability to explicitly release critical resources.
99104

100105

101106
<!-- ---------- -->
102107
###### Explicit resource management (sync)
103108

109+
<!-- TODO: What is this? -->
110+
104111
This feature addresses a common pattern in software development regarding the lifetime and management of various resources (memory, I/O, etc.). This pattern generally includes the allocation of a resource and the ability to explicitly release critical resources.
105112

106113

107114
<!-- ---------- -->
108-
###### Extend the console.timeStamp API to support measurements and and presentation options
115+
###### Extend the `console.timeStamp` API to support measurements and and presentation options
116+
117+
This feature extends the `console.timeStamp()` API, in a backwards-compatible manner, to provide a high-performance method for instrumenting applications and surfacing timing data to the Performance panel in DevTools.
109118

110-
This feature extends the console.timeStamp() API, in a backwards-compatible manner, to provide a high-performance method for instrumenting applications and surfacing timing data to the Performance panel in DevTools.
111-
112119
Timing entries added with the API can have a custom timestamp, duration and presentation options (track / swimlane and color).
113120

114121

115122
<!-- ---------- -->
116123
###### OffscreenCanvas getContextAttributes
117124

118-
Add the getContextAttributes interface from CanvasRenderingContext2D to OffscreenCanvasRenderingContext2D.
125+
Add the `getContextAttributes` interface from `CanvasRenderingContext2D` to `OffscreenCanvasRenderingContext2D`.
119126

120127

121128
<!-- ---------- -->
122129
###### Private Aggregation API: per-context contribution limits for Shared Storage callers
123130

131+
<!-- TODO: Chrome only? -->
132+
124133
Enables Shared Storage callers to customize the number of contributions per Private Aggregation report.
125134

126135
This feature enables Shared Storage callers to configure per-context contribution limits via a new field, `maxContributions`. Callers set this field to override the default number of contributions per report — larger and smaller numbers will both be permitted. Chrome will accept values of `maxContributions` between 1 and 1000 inclusive; larger values will be interpreted as 1000.
@@ -131,63 +140,92 @@ Protected Audience callers will not be affected by this feature. However, we are
131140

132141

133142
<!-- ---------- -->
134-
###### Remove nonstandard getUserMedia audio constraints
143+
###### Support `imageSmoothingQuality` in PaintCanvas
135144

136-
Blink supports a number of nonstandard goog-prefixed constraints for getUserMedia from some time before constraints were properly standardized.
145+
Add support for the `imageSmoothingQuality` attribute on Paint Canvas. It allows a web developer to choose the quality/performance tradeoff when scaling images. There are 3 options in total for `imageSmoothingQuality`: low, medium and high.
137146

138-
Usage has gone down significantly ~0.000001% to 0.0009% (depending on the constraint) and some of them do not even have an effect due to changes in the Chromium audio-capture stack. Soon none of them will have any effect due to other upcoming changes.
139147

140-
We do not expect any major regressions due to this change. Applications using these constraints will continue to work, but will get audio with default settings (as if no constraints were passed). They can easily migrate to standard constraints.
148+
<!-- ---------- -->
149+
###### WebGPU Subgroups
150+
151+
Adds subgroup functionality to WebGPU. Subgroup operations perform SIMT operations to provide efficient communication and data sharing among groups of invocations. These operations can be used to accelerate applications by reducing memory overheads incurred by inter-invocation communication.
141152

142153

143154
<!-- ---------- -->
144-
###### Support ImageSmoothingQuality in PaintCanvas
155+
###### `fetchLater` API
145156

146-
Add support for the imageSmoothingQuality attribute on Paint Canvas. It allows a web developer to choose the quality/performance tradeoff when scaling images. There are 3 options in total for imageSmoothingQuality: low, medium and high.
147-
148-
Chrome platform status entry for its launch on Canvas 2D: https://chromestatus.com/feature/4717415682277376
149-
157+
`fetchLater()` is a JavaScript API to request a deferred fetch. Once called, the request is queued by the browser, and will be invoked in one of the following scenarios:
150158

159+
* The document is destroyed.
160+
* After a certain time.
161+
162+
The API returns a `FetchLaterResult` that contains a boolean field "activated" that may be updated to tell whether the deferred request has been sent out or not. On successful sending, the whole response will be ignored by browser, including body and headers. Nothing at all should be processed or updated, as the page may have already be gone.
163+
164+
Note that from the point of view of the API user, the exact send time is unknown.
165+
166+
167+
<!-- ====================================================================== -->
168+
## Origin trials
169+
170+
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/).
171+
172+
173+
<!-- ------------------------------ -->
174+
#### Microsoft Edge-only origin trials
151175

152176

153177
<!-- ---------- -->
154-
###### WebGPU Subgroups
178+
###### Digital Goods API
155179

156-
Adds subgroup functionality to WebGPU. Subgroup operations perform SIMT operations to provide efficient communication and data sharing among groups of invocations. These operations can be used to accelerate applications by reducing memory overheads incurred by inter-invocation communication.
180+
Expires on 3/31/2025.
181+
182+
The Digital Goods API allows a web application to get information about its digital products and the user's purchases managed by a digital store. The user agent abstracts connections to the store, and the Payment Request API is used to make purchases.
183+
184+
* [Explainer](https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/PwaDigitalGoods/explainer.md)
185+
* [Feedback](https://github.com/MicrosoftEdge/MSEdgeExplainers/issues/new?labels=Digital+Goods%20API,OriginTrialFeedback&amp;title=%5BDigital%20Goods%20API%5D+Feedback)
186+
* [Register](https://developer.microsoft.com/en-us/microsoft-edge/origin-trials/trials/4b4a9ead-d912-4349-87b3-25e5e50b4f13)
157187

158188

159189
<!-- ---------- -->
160-
###### fetchLater API
190+
###### Web App `LocalFolder` Access
161191

162-
fetchLater() is a JavaScript API to request a deferred fetch. Once called, the request is queued by the browser, and will be invoked in one of the following scenarios:
192+
Expires on 3/31/2025.
163193

164-
• The document is destroyed.
165-
• After a certain time.
194+
Allows Microsoft Store-installed Progressive Web Apps (PWAs) to access file content that was previously stored in the WinRT `ApplicationData.LocalFolder` folder by an earlier, UWP version of the application.
166195

167-
The API returns a FetchLaterResult that contains a boolean field "activated" that may be updated to tell whether the deferred request has been sent out or not. On successful sending, the whole response will be ignored by browser, including body and headers. Nothing at all should be processed or updated, as the page may have already be gone.
196+
* [Explainer](https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/LocalFolder/explainer.md)
197+
* [Feedback](https://github.com/MicrosoftEdge/MSEdgeExplainers/issues/new?labels=LocalFolder+Access,OriginTrialFeedback&amp;title=%5BLocalFolder%20Access%5D+Feedback)
198+
* [Register](https://developer.microsoft.com/en-us/microsoft-edge/origin-trials/trials/2b21a8cd-43aa-41da-810d-fad103e699dc)
168199

169-
Note that from the point of view of the API user, the exact send time is unknown.
170200

201+
<!-- ---------- -->
202+
###### HTML+IDL handwriting attribute
171203

172-
<!-- ------------------------------ -->
173-
#### Deprecated and removed features
204+
Expires on 6/14/2025.
174205

206+
Granular per-document and per-element control over which content should allow or disallow handwriting input.
175207

208+
* [Explainer](https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/Handwriting/explainer.md)
209+
* [Feedback](https://github.com/MicrosoftEdge/MSEdgeExplainers/issues/new?labels=Handwriting,OriginTrialFeedback&amp;title=%5BHandwriting%5D+Feedback)
210+
* [Register](https://developer.microsoft.com/en-us/microsoft-edge/origin-trials/trials/36b56357-0271-4e89-a091-3be27184808a)
176211

177212

178-
<!-- ====================================================================== -->
179-
## Origin trials
213+
<!-- ---------- -->
214+
###### Acquisition Info API
180215

181-
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/).
216+
Expires on 6/30/2025.
182217

218+
Supports 3P acquisition attribution for Progressive Web Apps (PWAs) that were acquired through an app store or directly from the browser.
183219

184-
<!-- ------------------------------ -->
185-
#### Microsoft Edge only origin trials
220+
* [Explainer](https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/AcquisitionInfo/explainer.md)
221+
* [Feedback](https://github.com/MicrosoftEdge/MSEdgeExplainers/issues/new?labels=Acquisition+Info,OriginTrialFeedback&amp;title=%5BAcquisition%20Info%5D+Feedback)
222+
* [Register](https://developer.microsoft.com/en-us/microsoft-edge/origin-trials/trials/4013a45f-3f48-4341-81ea-1bc13bf90c83)
186223

187224

188225
<!-- ------------------------------ -->
189226
#### New Chromium origin trials
190227

228+
<!-- Check if new OTs are added in 134 -->
191229

192230

193231
<!-- ====================================================================== -->

scripts/beta-release-notes-template.njk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ The following are new experimental APIs which you can try on your own live websi
6767

6868

6969
<!-- ------------------------------ -->
70-
#### Microsoft Edge only origin trials
70+
#### Microsoft Edge-only origin trials
7171
{% for trial in data.edgeOTs %}
7272

7373
<!-- ---------- -->

0 commit comments

Comments
 (0)