Platform/Roadmap2025: Difference between revisions
< Platform
Jump to navigation
Jump to search
(144, 145, 146b) |
|||
| Line 4: | Line 4: | ||
Related Links: | Related Links: | ||
* [https://whattrainisitnow.com/calendar/ Firefox Release Calendar] (future) | * [https://whattrainisitnow.com/calendar/ Firefox Release Calendar] (future) | ||
* [https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases Firefox release notes for developers] (past)<!-- thru | * [https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases Firefox release notes for developers] (past)<!-- thru Fx146b, needs to incorporate Fx146 relnotes --><!-- confirm all Interop 2025 focus areas are listed --> | ||
* [https://firefox-source-docs.mozilla.org/contributing/pocket-guide-shipping-firefox.html Pocket Guide: Shipping Firefox] | * [https://firefox-source-docs.mozilla.org/contributing/pocket-guide-shipping-firefox.html Pocket Guide: Shipping Firefox] | ||
| Line 14: | Line 14: | ||
== HTML == | == HTML == | ||
* <code>autocorrect</code> attribute ([https://bugzil.la/1725806 1725806], [https://bugzil.la/1927977 1927977]) | * <code>autocorrect</code> attribute ([https://bugzil.la/1725806 1725806], [https://bugzil.la/1927977 1927977]) | ||
* <code>command</code> and <code>commandfor</code> attributes of the <code><nowiki><button></nowiki></code> element ([https://bugzil.la/1983523 1983523]) | |||
* <code>contenteditable=plain-text</code> ([https://bugzil.la/1922724 1922724]) | * <code>contenteditable=plain-text</code> ([https://bugzil.la/1922724 1922724]) | ||
* <code><nowiki><dialog></nowiki></code> element support <code>closedby</code> attribute ([https://bugzil.la/1964078 1964078]) | * <code><nowiki><dialog></nowiki></code> element support <code>closedby</code> attribute ([https://bugzil.la/1964078 1964078]) | ||
* <code>hidden=until-found</code> ([https://bugzil.la/1761043 1761043], [https://bugzil.la/1955379 1955379]) | * <code>hidden=until-found</code> ([https://bugzil.la/1761043 1761043], [https://bugzil.la/1955379 1955379]) | ||
* <code><nowiki><hr></nowiki></code> in <code><nowiki><select></nowiki></code> support for separators | |||
** supported in Firefox for Android ([https://bugzil.la/1867045 1867045], [https://bugzil.la/1830909 1830909]) | |||
* <code><nowiki><script type=importmap></nowiki></code> support <code>integrity</code> key ([https://bugzil.la/1945540 1945540]) | * <code><nowiki><script type=importmap></nowiki></code> support <code>integrity</code> key ([https://bugzil.la/1945540 1945540]) | ||
== CSS == | == CSS == | ||
* <code>@scope</code> at-rule ([https://bugzil.la/1991105 1991105]) | |||
* <code>:has-slotted</code> pseudo-class ([https://bugzil.la/1940691 1940691]) | * <code>:has-slotted</code> pseudo-class ([https://bugzil.la/1940691 1940691]) | ||
* <code>:open</code> pseudo-class ([https://bugzil.la/1936113 1936113]) | * <code>:open</code> pseudo-class ([https://bugzil.la/1936113 1936113]) | ||
| Line 26: | Line 30: | ||
* <code>::marker</code> with before and after pseudo-elements, e.g. <code>::before::marker</code> and <code>::after::marker</code> ([https://bugzil.la/1980215 1980215]) | * <code>::marker</code> with before and after pseudo-elements, e.g. <code>::before::marker</code> and <code>::after::marker</code> ([https://bugzil.la/1980215 1980215]) | ||
* <code>align-self</code>, <code>justify-self</code>, <code>place-self</code> support for absolutely positioned elements ([https://bugzil.la/1920160 1920160]) | * <code>align-self</code>, <code>justify-self</code>, <code>place-self</code> support for absolutely positioned elements ([https://bugzil.la/1920160 1920160]) | ||
* <code>color</code> data type supports <code>display-p3-linear</code> color space ([https://bugzil.la/1996318 1996318]) | |||
* <code>contrast-color()</code> function ([https://bugzil.la/1682439 1682439]) | |||
* <code>font-family</code> value <code>math</code> generic font family ([https://bugzil.la/1788937 1788937]) | |||
* <code>font-variant-emoji</code> ([https://bugzil.la/1954214 1954214]) | * <code>font-variant-emoji</code> ([https://bugzil.la/1954214 1954214]) | ||
* <code>hyphenate-limit-chars</code> ([https://bugzil.la/1521723 1521723], [https://bugzil.la/1947183 1947183]) | * <code>hyphenate-limit-chars</code> ([https://bugzil.la/1521723 1521723], [https://bugzil.la/1947183 1947183]) | ||
* <code>linear-gradient()</code>, <code>conic-gradient()</code>, <code>radial-gradient()</code> support single color stop and 0-1 positions ([https://bugzil.la/1900530 1900530]) | * <code>linear-gradient()</code>, <code>conic-gradient()</code>, <code>radial-gradient()</code> support single color stop and 0-1 positions ([https://bugzil.la/1900530 1900530]) | ||
* <code>text-autospace</code> ([https://bugzil.la/1869577 1869577]) | * <code>text-autospace</code> ([https://bugzil.la/1869577 1869577], [https://bugzil.la/1981086 1981086]) | ||
* <code>text-decoration-inset</code> ([https://bugzil.la/1979915 1979915], [https://bugzil.la/1997157 1997157], [https://bugzil.la/1993043 1993043]) | |||
* <code>text-decoration-line:spelling-error</code> and <code>grammar-error</code> ([https://bugzil.la/1950844 1950844]) | * <code>text-decoration-line:spelling-error</code> and <code>grammar-error</code> ([https://bugzil.la/1950844 1950844]) | ||
* view transitions features ([https://bugzil.la/1985809 1985809]) | * view transitions features ([https://bugzil.la/1985809 1985809]) | ||
** <code>:active-view-transition</code> pseudo-class | ** <code>:active-view-transition</code> pseudo-class | ||
** <code>::view-transition</code>, <code>::view-transition-group()</code>, <code>::view-transition-image-pair()</code>, <code>::view-transition-new()</code>, <code>::view-transition-old()</code> pseudo- | ** <code>::view-transition</code>, <code>::view-transition-group()</code>, <code>::view-transition-image-pair()</code>, <code>::view-transition-new()</code>, <code>::view-transition-old()</code> pseudo-elements | ||
** <code>view-transition-class</code> and <code>view-transition-name</code> properties | ** <code>view-transition-class</code> and <code>view-transition-name</code> properties | ||
* <code>-webkit-fill-available</code> (alias for <code>stretch</code>) value for <code>width</code> and <code>height</code> properties ([https://bugzil.la/1988938 1988938], [https://bugzil.la/1789477 1789477]) | |||
=== CSSOM === | === CSSOM === | ||
| Line 49: | Line 58: | ||
== Media == | == Media == | ||
Including Media-related APIs like WebRTC | |||
* HEVC (H.265) hardware support on Android, and hardware and software support on Linux ([https://bugzil.la/1950032 1950032]) | * HEVC (H.265) hardware support on Android, and hardware and software support on Linux ([https://bugzil.la/1950032 1950032]) | ||
* Matroska container (<code>.mkv</code>) support for codecs: AVC, HEVC, VP8, VP9, AV1, AAC, Opus, and Vorbis ([https://bugzil.la/1991752 1991752]) | |||
* <code>resizeMode</code> on <code>getUserMedia()</code> and <code>getDisplayMedia()</code> methods of <code>MediaDevices</code> ([https://bugzil.la/1286945 1286945]) | |||
* <code>RTCDataChannel</code> <code>closing</code> event and <code>onclosing()</code> event handler ([https://bugzil.la/1611953 1611953]) | |||
* <code>RTCIceCandidatePairStats</code> properties <code>currentRoundTripTime</code>, <code>totalRoundTripTime</code>, and <code>responsesReceived</code> properties ([https://bugzil.la/1371391 1371391]) | * <code>RTCIceCandidatePairStats</code> properties <code>currentRoundTripTime</code>, <code>totalRoundTripTime</code>, and <code>responsesReceived</code> properties ([https://bugzil.la/1371391 1371391]) | ||
* <code>RTCInboundRtpStreamStats</code> properties <code>estimatedPlayoutTimestamp</code>, <code>framesAssembledFromMultiplePackets</code>, <code>freezeCount</code>, <code>jitterBufferMinimumDelay</code>, <code>jitterBufferTargetDelay</code>, <code>keyFramesDecoded</code>, <code>pauseCount</code>, <code>totalAssemblyTime</code>, <code>totalFreezesDuration</code>, and <code>totalPausesDuration</code> properties ([https://bugzil.la/1926622 1926622]) | * <code>RTCInboundRtpStreamStats</code> properties <code>estimatedPlayoutTimestamp</code>, <code>framesAssembledFromMultiplePackets</code>, <code>freezeCount</code>, <code>jitterBufferMinimumDelay</code>, <code>jitterBufferTargetDelay</code>, <code>keyFramesDecoded</code>, <code>pauseCount</code>, <code>totalAssemblyTime</code>, <code>totalFreezesDuration</code>, and <code>totalPausesDuration</code> properties ([https://bugzil.la/1926622 1926622]) | ||
| Line 77: | Line 90: | ||
== JS == | == JS == | ||
* <code>Atomics.pause()</code> ([https://bugzil.la/1937805 1937805]) | * <code>Atomics.pause()</code> ([https://bugzil.la/1937805 1937805]) | ||
* <code>Atomics.waitAsync()</code> ([https://bugzil.la/1884148 1884148]) | |||
* <code>Error.captureStackTrace()</code> ([https://bugzil.la/1886820 1886820], [https://bugzil.la/1950508 1950508]) | * <code>Error.captureStackTrace()</code> ([https://bugzil.la/1886820 1886820], [https://bugzil.la/1950508 1950508]) | ||
* <code>Error.isError()</code> ([https://bugzil.la/1952249 1952249]) | * <code>Error.isError()</code> ([https://bugzil.la/1952249 1952249]) | ||
* <code>Intl.DurationFormat</code> ([https://bugzil.la/1648139 1648139], [https://bugzil.la/1933303 1933303]) | * <code>Intl.DurationFormat</code> ([https://bugzil.la/1648139 1648139], [https://bugzil.la/1933303 1933303]) | ||
* <code>JSON.parse()</code> with source, <code>JSON.isRawJSON()</code> & <code>JSON.rawJSON()</code> ([https://bugzil.la/1934622 1934622]) | * <code>JSON.parse()</code> with source, <code>JSON.isRawJSON()</code> & <code>JSON.rawJSON()</code> ([https://bugzil.la/1934622 1934622]) | ||
* <code>Map.prototype.getOrInsert()</code>, <code>Map.prototype.getOrInsertComputed()</code>, <code>WeakMap.prototype.getOrInsert()</code>, and <code>WeakMap.prototype.getOrInsertComputed()</code> ([https://bugzil.la/1979917 1979917]) | |||
* <code>Math.sumPrecise()</code> ([https://bugzil.la/1943120 1943120]) | * <code>Math.sumPrecise()</code> ([https://bugzil.la/1943120 1943120]) | ||
* <code>Promise.try()</code> ([https://bugzil.la/1905364 1905364], [https://bugzil.la/1917879 1917879]) | * <code>Promise.try()</code> ([https://bugzil.la/1905364 1905364], [https://bugzil.la/1917879 1917879]) | ||
| Line 87: | Line 102: | ||
* Temporal API ([https://bugzil.la/1912511 1912511], [https://bugzil.la/1946823 1946823], [https://bugzil.la/1954138 1954138]) | * Temporal API ([https://bugzil.la/1912511 1912511], [https://bugzil.la/1946823 1946823], [https://bugzil.la/1954138 1954138]) | ||
* <code>variants</code> accessor on <code>Intl.Locale</code> instances ([https://bugzil.la/1970161 1970161]) | * <code>variants</code> accessor on <code>Intl.Locale</code> instances ([https://bugzil.la/1970161 1970161]) | ||
* <code>WeakMap</code> and <code>WeakSet</code> support <code>Symbol</code> objects as keys ([https://bugzil.la/1966745 1966745]) | |||
== APIs == | == APIs == | ||
| Line 94: | Line 110: | ||
* Login Status API with Federated Credential Management (FedCM) API ([https://bugzil.la/1945573 1945573], [https://bugzil.la/1945576 1945576]) | * Login Status API with Federated Credential Management (FedCM) API ([https://bugzil.la/1945573 1945573], [https://bugzil.la/1945576 1945576]) | ||
* <code>Notification.actions</code> ([https://bugzil.la/1225110 1225110]) | * <code>Notification.actions</code> ([https://bugzil.la/1225110 1225110]) | ||
* <code>PerformanceEventTiming.interactionId</code> ([https://bugzil.la/1934683 1934683]) | * <code>PerformanceEventTiming.interactionId</code> ([https://bugzil.la/1934683 1934683], [https://bugzil.la/1956809 1956809]) | ||
* <code>PointerEvent</code> support <code>persistentDeviceId</code> property ([https://bugzil.la/1968400 1968400]) | * <code>PointerEvent</code> support <code>persistentDeviceId</code> property ([https://bugzil.la/1968400 1968400]) | ||
* <code>PublicKeyCredential.getClientCapabilities()</code> ([https://bugzil.la/1884466 1884466]) | * <code>PublicKeyCredential.getClientCapabilities()</code> ([https://bugzil.la/1884466 1884466]) | ||
* <code>RTCCertificate</code> support <code>getFingerprints()</code> method ([https://bugzil.la/1525241 1525241]) | * <code>RTCCertificate</code> support <code>getFingerprints()</code> method ([https://bugzil.la/1525241 1525241]) | ||
* <code>RTCDataChannel</code> support <code>closing</code> event and <code>onclosing()</code> event handler ([https://bugzil.la/1611953 1611953]) | * <code>RTCDataChannel</code> support <code>closing</code> event and <code>onclosing()</code> event handler ([https://bugzil.la/1611953 1611953]) | ||
* <code>ScreenOrientation</code> support <code>lock()</code> and <code>unlock()</code> methods | |||
** on Android and Windows tablets ([https://bugzil.la/1983483 1983483]) | |||
* <code>SubtleCrypto.importKey()</code> support import keys defined as compressed elliptic curve points when using the ECDSA or ECDH algorithms ([https://bugzil.la/1971499 1971499]) | |||
* <code>ToggleEvent</code> support <code>source</code> property ([https://bugzil.la/1968987 1968987]) | |||
* URL Pattern API ([https://bugzil.la/1731418 1731418]) | * URL Pattern API ([https://bugzil.la/1731418 1731418]) | ||
* View Transition API ([https://bugzil.la/1950759 1950759], [https://bugzil.la/1985809 1985809]) | * View Transition API for SPAs - single-page-applications ([https://bugzil.la/1950759 1950759], [https://bugzil.la/1985809 1985809]) | ||
* Web Authentication extensions: <code>largeBlob</code> ([https://bugzil.la/1795020 1795020]), <code>credProps</code> ([https://bugzil.la/1844449 1844449]), <code>prf</code> ([https://bugzil.la/1935280 1935280]) | * Web Authentication extensions: <code>largeBlob</code> ([https://bugzil.la/1795020 1795020]), <code>credProps</code> ([https://bugzil.la/1844449 1844449]), <code>prf</code> ([https://bugzil.la/1935280 1935280]) | ||
* WebGPU API support on Windows ([https://bugzil.la/1972486 1972486]) | * WebGPU API support on Windows ([https://bugzil.la/1972486 1972486]) | ||
=== Add-ons === | === Add-ons === | ||
* <code>browsingData.removeLocalStorage</code> and <code>browsingData.remove</code> | |||
** when <code>localStorage</code> is set in <code>browsingData.DataTypeSet</code>, delete objects from <code>sessionStorage</code>. ([https://bugzil.la/1886894 1886894]) | |||
* <code>cookies.SameSiteStatus</code> support <code>unspecified</code> ([https://bugzil.la/1550032 1550032]) | * <code>cookies.SameSiteStatus</code> support <code>unspecified</code> ([https://bugzil.la/1550032 1550032]) | ||
* <code>getBytesInUse()</code> to <code>storage.local</code> and <code>storage.managed</code> ([https://bugzil.la/1385832 1385832]) | |||
* <code>json</code> resource type in <code>webRequest.ResourceType</code> & <code>declarativeNetRequest.ResourceType</code> ([https://bugzil.la/1858078 1858078], [https://bugzil.la/1950836 1950836]) | * <code>json</code> resource type in <code>webRequest.ResourceType</code> & <code>declarativeNetRequest.ResourceType</code> ([https://bugzil.la/1858078 1858078], [https://bugzil.la/1950836 1950836]) | ||
* Manifest V3 extensions: | * Manifest V3 extensions: | ||
| Line 120: | Line 142: | ||
* <code>browser.createUserContext</code> command support <code>acceptInsecureCerts</code> ([https://bugzil.la/1959372 1959372]), <code>proxy</code> ([https://bugzil.la/1967653 1967653]) | * <code>browser.createUserContext</code> command support <code>acceptInsecureCerts</code> ([https://bugzil.la/1959372 1959372]), <code>proxy</code> ([https://bugzil.la/1967653 1967653]) | ||
* <code>browser.getClientWindows</code> command ([https://bugzil.la/1855025 1855025]) | * <code>browser.getClientWindows</code> command ([https://bugzil.la/1855025 1855025]) | ||
* <code>browsingContext.downloadWillBegin</code> event ([https://bugzil.la/1874365 1874365]) | |||
* <code>browsingContext.downloadEnd</code> event ([https://bugzil.la/1970293 1970293]) | |||
* <code>browsingContext.historyUpdated</code> event ([https://bugzil.la/1906051 1906051]) | * <code>browsingContext.historyUpdated</code> event ([https://bugzil.la/1906051 1906051]) | ||
* <code>browsingContext.Info</code> type support <code>clientWindow</code> property ([https://bugzil.la/1920952 1920952]) | * <code>browsingContext.Info</code> type support <code>clientWindow</code> property ([https://bugzil.la/1920952 1920952]) | ||
| Line 129: | Line 153: | ||
* <code>emulation.setGeolocationOverride</code> ([https://bugzil.la/1954992 1954992]) | * <code>emulation.setGeolocationOverride</code> ([https://bugzil.la/1954992 1954992]) | ||
* <code>emulation.setLocaleOverride</code> ([https://bugzil.la/1968952 1968952]) | * <code>emulation.setLocaleOverride</code> ([https://bugzil.la/1968952 1968952]) | ||
* <code>emulation.setScreenOrientationOverride</code> command ([https://bugzil.la/1974167 1974167]) | |||
* <code>emulation.setTimezoneOverride</code> command ([https://bugzil.la/1978027 1978027]) | |||
* <code>emulation.setUserAgentOverride</code> command ([https://bugzil.la/1987935 1987935]) | |||
* <code>network.addDataCollector</code> ([https://bugzil.la/1971778 1971778]) | * <code>network.addDataCollector</code> ([https://bugzil.la/1971778 1971778]) | ||
* <code>network.removeDataCollector</code> ([https://bugzil.la/1971781 1971781]) | * <code>network.removeDataCollector</code> ([https://bugzil.la/1971781 1971781]) | ||
| Line 147: | Line 174: | ||
=== HTTP === | === HTTP === | ||
* <code>Clear-Site-Data: cache</code> ([https://bugzil.la/1942272 1942272], [https://bugzil.la/1930500 1930500]) | * <code>Clear-Site-Data: cache</code> ([https://bugzil.la/1942272 1942272], [https://bugzil.la/1930500 1930500]) | ||
* <code>Integrity-Policy</code> and <code>Integrity-Policy-Report-Only</code> headers for script resources ([https://bugzil.la/1984973 1984973]) | |||
* <code>Origin-Agent-Cluster</code> ([https://bugzil.la/1665474 1665474]) | * <code>Origin-Agent-Cluster</code> ([https://bugzil.la/1665474 1665474]) | ||
Latest revision as of 04:58, 27 November 2025
Platform 2025 Roadmap
Related Links:
- Firefox Release Calendar (future)
- Firefox release notes for developers (past)
- Pocket Guide: Shipping Firefox
These are areas of work planned for Gecko in 2025 for the Web Platform.
For current web platform documentation of these areas, see the subsections at:
HTML
autocorrectattribute (1725806, 1927977)commandandcommandforattributes of the<button>element (1983523)contenteditable=plain-text(1922724)<dialog>element supportclosedbyattribute (1964078)hidden=until-found(1761043, 1955379)<hr>in<select>support for separators<script type=importmap>supportintegritykey (1945540)
CSS
@scopeat-rule (1991105):has-slottedpseudo-class (1940691):openpseudo-class (1936113)::details-contentpseudo-element (1901037)::highlightpseudo-element (1964089)::markerwith before and after pseudo-elements, e.g.::before::markerand::after::marker(1980215)align-self,justify-self,place-selfsupport for absolutely positioned elements (1920160)colordata type supportsdisplay-p3-linearcolor space (1996318)contrast-color()function (1682439)font-familyvaluemathgeneric font family (1788937)font-variant-emoji(1954214)hyphenate-limit-chars(1521723, 1947183)linear-gradient(),conic-gradient(),radial-gradient()support single color stop and 0-1 positions (1900530)text-autospace(1869577, 1981086)text-decoration-inset(1979915, 1997157, 1993043)text-decoration-line:spelling-errorandgrammar-error(1950844)- view transitions features (1985809)
:active-view-transitionpseudo-class::view-transition,::view-transition-group(),::view-transition-image-pair(),::view-transition-new(),::view-transition-old()pseudo-elementsview-transition-classandview-transition-nameproperties
-webkit-fill-available(alias forstretch) value forwidthandheightproperties (1988938, 1789477)
CSSOM
Highlight&HighlightRegistry(1964089)
SVG
fetchpriorityattribute (1847712)SVGPathElementmethodsgetPathData(),setPathData(),getPathSegmentAtLength()(1945312)
Rendering
WebGPU:
- Ship on Windows in H1, Mac and Linux in H2.
- External textures (1979100)
Media
Including Media-related APIs like WebRTC
- HEVC (H.265) hardware support on Android, and hardware and software support on Linux (1950032)
- Matroska container (
.mkv) support for codecs: AVC, HEVC, VP8, VP9, AV1, AAC, Opus, and Vorbis (1991752) resizeModeongetUserMedia()andgetDisplayMedia()methods ofMediaDevices(1286945)RTCDataChannelclosingevent andonclosing()event handler (1611953)RTCIceCandidatePairStatspropertiescurrentRoundTripTime,totalRoundTripTime, andresponsesReceivedproperties (1371391)RTCInboundRtpStreamStatspropertiesestimatedPlayoutTimestamp,framesAssembledFromMultiplePackets,freezeCount,jitterBufferMinimumDelay,jitterBufferTargetDelay,keyFramesDecoded,pauseCount,totalAssemblyTime,totalFreezesDuration, andtotalPausesDurationproperties (1926622)RTCOutboundRtpStreamStatspropertiesmid&rid(1643001)- WebRTC send and receive video encoded using AV1 codec - (1932065, 1944878)
- WebRTC simulcast of screen-shared video with H264 (1210175) and VP8 (1692873) codecs
- WebRTC support Dependency Descriptor (DD) RTP Header Extension (1945261)
- Support for downscaling and decimated frame rates.
- SVC support for desktop.
- WebCodecs support on Android.
- Platform hardware support for video encoding.
DOM
<and>escaping in serialized HTML attributes (1962084)Element.innerHTML,Element.outerHTML,Element.getHTML(),ShadowRoot.innerHTML,ShadowRoot.getHTML()
Animation.overallProgress(1834878)beforematchevent (1761043, 1955379)- HTML Sanitizer API - (1950605, 1952250)
HTMLDialogElementsupportrequestClose()method (1960556),closedByattribute (1964078)HTMLElement.autocorrect(1725806)HTMLElementshowPopover()andtogglePopover()methods supportoptions.source,togglePopover()supportsforceandoptions.forceargument (1936411)moveBefore()on theElement,DocumentFragment,Document(1983688)pointerrawupdateevent (1550462)- Prioritized Task Scheduling API (1966997)
Selection.getComposedRanges()(1903870)
JS
Atomics.pause()(1937805)Atomics.waitAsync()(1884148)Error.captureStackTrace()(1886820, 1950508)Error.isError()(1952249)Intl.DurationFormat(1648139, 1933303)JSON.parse()with source,JSON.isRawJSON()&JSON.rawJSON()(1934622)Map.prototype.getOrInsert(),Map.prototype.getOrInsertComputed(),WeakMap.prototype.getOrInsert(), andWeakMap.prototype.getOrInsertComputed()(1979917)Math.sumPrecise()(1943120)Promise.try()(1905364, 1917879)RegExp.escape()(1918235)- Resource Management API (1967744)
- Temporal API (1912511, 1946823, 1954138)
variantsaccessor onIntl.Localeinstances (1970161)WeakMapandWeakSetsupportSymbolobjects as keys (1966745)
APIs
- Cookie Store API (1958875)
CookieStore,Window.cookieStore,ServiceWorkerGlobalScope.cookieStore,changeevent &CookieChangeEvent,
IntersectionObserversupportscrollMarginproperty (1860030)- Login Status API with Federated Credential Management (FedCM) API (1945573, 1945576)
Notification.actions(1225110)PerformanceEventTiming.interactionId(1934683, 1956809)PointerEventsupportpersistentDeviceIdproperty (1968400)PublicKeyCredential.getClientCapabilities()(1884466)RTCCertificatesupportgetFingerprints()method (1525241)RTCDataChannelsupportclosingevent andonclosing()event handler (1611953)ScreenOrientationsupportlock()andunlock()methods- on Android and Windows tablets (1983483)
SubtleCrypto.importKey()support import keys defined as compressed elliptic curve points when using the ECDSA or ECDH algorithms (1971499)ToggleEventsupportsourceproperty (1968987)- URL Pattern API (1731418)
- View Transition API for SPAs - single-page-applications (1950759, 1985809)
- Web Authentication extensions:
largeBlob(1795020),credProps(1844449),prf(1935280) - WebGPU API support on Windows (1972486)
Add-ons
browsingData.removeLocalStorageandbrowsingData.remove- when
localStorageis set inbrowsingData.DataTypeSet, delete objects fromsessionStorage. (1886894)
- when
cookies.SameSiteStatussupportunspecified(1550032)getBytesInUse()tostorage.localandstorage.managed(1385832)jsonresource type inwebRequest.ResourceType&declarativeNetRequest.ResourceType(1858078, 1950836)- Manifest V3 extensions:
tabGroups(1940631):webRequest.handlerBehaviorChanged(1657575)
WebDriver
browser.createUserContextcommand supportacceptInsecureCerts(1959372),proxy(1967653)browser.getClientWindowscommand (1855025)browsingContext.downloadWillBeginevent (1874365)browsingContext.downloadEndevent (1970293)browsingContext.historyUpdatedevent (1906051)browsingContext.Infotype supportclientWindowproperty (1920952)browsingContext.navigationCommittedevent (1945184)browsingContext.setViewportcommand supportuserContextsparameter (1940952)initiatorType&destinationfields to all network events (1904892, 1933331)browsingContext.captureScreenshotsupportformatfield (1861737)cookies.SameSiteStatussupportunspecified(1550032)emulation.setGeolocationOverride(1954992)emulation.setLocaleOverride(1968952)emulation.setScreenOrientationOverridecommand (1974167)emulation.setTimezoneOverridecommand (1978027)emulation.setUserAgentOverridecommand (1987935)network.addDataCollector(1971778)network.removeDataCollector(1971781)network.getData(1971780)network.disownData(1971779)script.addPreloadScriptsupportuserContextsfield (1940927)sessions.subscribeargumentuserContexts(1938604)webExtension.install(1934551)webExtension.uninstall(1934553)
Marionette:
Addon:Install&Addon:Uninstallcommands support for GeckoView (1806135)- CHIPS cookies (Cookies Having Independent Partitioned State) support (1972830)
Protocols
- ...
HTTP
Clear-Site-Data: cache(1942272, 1930500)Integrity-PolicyandIntegrity-Policy-Report-Onlyheaders for script resources (1984973)Origin-Agent-Cluster(1665474)
Security
- Certificate Transparency supported (1938242)
Interop
- Our announcement blog post: https://hacks.mozilla.org/2025/02/interop-2025/
Interop Focus Areas for implementation:
- 1948267: Writing Modes
- 1948268: CSS Anchor Positioning
- 1948271: Scope
- 1948275: Navigation API
- 1948278: backdrop-filter
- 1948280: Storage Access API
- 1948289: details element
- 1948294: View Transitions
- 1948295: URLPattern
- 1948300: WebRTC
- 1948302: Web Compat
- 1948305: Modules
- 1948307: text-decoration
- 1948310: WebAssembly
- 1951741: Layout
Specifications and Notes
Edit and publish new and updated specifications and notes. See Standards for our ongoing work in this area.
- Vision for W3C published as a W3C Statement
- ...
See Also
- Platform
- Previously: Platform/Roadmap2024
- Next: Platform/Roadmap2026