Bureaucrats, canmove, Confirmed users
2,890
edits
(122 included) |
(update with completed features) |
||
| Line 1: | Line 1: | ||
<span style="float:right">__TOC__</span> | <span style="float:right">__TOC__</span> | ||
=Gecko Planned Work For 2024= | =Gecko Planned Work For 2024= | ||
Related Links: | Related Links: | ||
* [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 Fx133 relnotes --> | ||
* [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] | ||
These are areas of work | These are areas of planned work for Gecko in 2024. For current areas of planned work, see: | ||
* '''[[Platform]]''' | |||
For current web platform documentation of these areas, see the subsections at: | For current web platform documentation of these areas, see the subsections at: | ||
| Line 14: | Line 13: | ||
== HTML == | == HTML == | ||
* <code>popover</code> | * <code>contenteditable=plaintext-only</code> ([https://bugzil.la/1922723 1922723]) | ||
* <code><nowiki><hr></nowiki></code> in <code><nowiki><select></nowiki></code> | * <code>fetchpriority</code> attribute of <code><nowiki><link></nowiki></code>, <code><nowiki><script></nowiki></code>, <code><nowiki><img></nowiki></code> ([https://bugzil.la/1854077 1854077]) | ||
* ... | * <code>popover</code>, <code>popovertarget</code>, <code>popovertargetaction</code> attributes ([https://bugzilla.mozilla.org/show_bug.cgi?id=1823757 1823757], [https://bugzilla.mozilla.org/show_bug.cgi?id=1866993 1866993]) | ||
* <code><nowiki><hr></nowiki></code> in <code><nowiki><select></nowiki></code> ([https://bugzil.la/1830909 1830909]) | |||
* <code><nowiki><meta name="viewport"></nowiki></code> support <code>interactive-widget</code> feature ([https://bugzil.la/1831649 1831649], [https://bugzil.la/1920755 1920755]) | |||
* <code><nowiki><template></nowiki></code> supports <code>shadowrootmode</code> attribute ([https://bugzil.la/1712140 1712140], [https://bugzil.la/1870052 1870052], [https://bugzil.la/1880188 1880188]) | |||
== CSS == | == CSS == | ||
* <code> | * Nested declaration rule ([https://bugzil.la/1918408 1918408]) | ||
* <code>offset-path | * Relative color syntax ([https://bugzil.la/1900251 1900251]) | ||
* <code> | * <code><nowiki><color-interpolation-method></nowiki></code> is now supported in gradients ([https://bugzil.la/1861363 1861363]) | ||
* <code>:has-slotted</code> pseudo-class ([https://bugzil.la/1921747 1921747]) | |||
* <code>:popover-open</code> pseudo-class | |||
* <code>:state()</code> pseudo-class ([https://bugzil.la/1887543 1887543]) | |||
* <code>::backdrop</code> pseudo-element supports popovers | |||
* <code>::target-text</code> pseudo-element - ([https://bugzil.la/1914877 1914877]) | |||
* <code>@property</code> <code>syntax</code> descriptor support <code><nowiki><string></nowiki></code> syntax ([https://bugzil.la/1846635 1846635]) | |||
* <code>@starting-style</code> - ([https://bugzil.la/1834876 1834876], [https://bugzil.la/1834877 1834877]) | |||
* <code>align-content</code> supports <code>display: block</code> layouts ([https://bugzil.la/1882853 1882853]) | |||
* <code>clip-path</code> & <code>offset-path</code>: <code>rect()</code> and <code>xywh()</code> shape functions. ([https://bugzil.la/1868722 1868722]) | |||
* <code>color-interpolation</code> property | |||
* <code>content</code> property support alternative text ([https://bugzil.la/1281158 1281158], [https://bugzil.la/1896047 1896047]) | |||
* <code>content-visibility:auto</code> | * <code>content-visibility:auto</code> | ||
* <code>text-wrap:balance</code> | * <code>hyphens</code> property support Czech and Slovak languages ([https://bugzil.la/1908931 1908931]) | ||
* <code>transform-box</code>: <code>content-box</code> & <code>stroke-box</code> values | * <code>offset-position</code> ([https://bugzil.la/1598152 1598152]) | ||
* <code>zoom</code> | * <code>offset-path methods</code> ([https://bugzil.la/1598159 1598159]) | ||
* <code>ray()</code> function ([https://bugzil.la/1598151 1598151]) | |||
* <code>shape()</code> function ([https://bugzil.la/1823463 1823463], [https://bugzil.la/1884424 1884424], [https://bugzil.la/1884425 1884425]) | |||
* <code>text-emphasis-position: auto</code> ([https://bugzil.la/1919658 1919658]) | |||
* <code>text-wrap: balance</code> | |||
* <code>text-wrap</code> shorthand for <code>text-wrap-mode</code> & <code>text-wrap-style</code> ([https://bugzil.la/1758391 1758391]) | |||
* <code>transform-box</code>: <code>content-box</code> & <code>stroke-box</code> values ([https://bugzil.la/1868374 1868374]) | |||
* <code>transition-behavior</code>: ([https://bugzil.la/1882408 1882408], [https://bugzil.la/1805727 1805727], [https://bugzil.la/1901645 1901645]) | |||
* <code>zoom</code> ([https://bugzil.la/390936 390936]) | |||
=== CSSOM === | |||
* <code>CSSNestedDeclarations</code> interface and <code>CSSNestedDeclarations.style</code> property ([https://bugzil.la/1918408 1918408]) | |||
* <code>CSSPropertyRule</code> interface ([https://bugzil.la/1864818 1864818]) | |||
* <code>registerProperty()</code> ([https://bugzil.la/1864818 1864818]) | |||
== SVG == | == SVG == | ||
... | * <code>color-interpolation</code> attribute on <code><nowiki><linearGradient></nowiki></code> & <code><nowiki><radialGradient></nowiki></code> elements | ||
* <code>stroke-width</code> attribute support for <code>lh</code> & <code>rlh</code> line height units ([https://bugzil.la/1892089 1892089]) | |||
* <code><nowiki><text></nowiki></code> supports <code>::first-letter</code> & <code>::first-line</code> CSS pseudo-elements ([https://bugzil.la/1302722 1302722]) | |||
* ... | |||
* Removed <code>SVGAElement.text</code> property in preference to <code>textContent</code> property | |||
* Removed <code>data:</code> support in <code><nowiki><use></nowiki></code> element and <code>SVGUseElement</code> ([https://bugzil.la/1806964 1806964]) | |||
== DOM == | == DOM == | ||
* <code> | * Clipboard API full support ([https://bugzil.la/1887845 1887845], [https://bugzil.la/1858788 1858788]) | ||
* ... | ** e.g. <code>dom.events.asyncClipboard</code> ([https://bugzil.la/1809106 1809106]), <code>Clipboard.readText()</code> ([https://bugzil.la/1877400 1877400]), | ||
* <code>clonable</code> support in <code>Element.attachShadow()</code> & <code>ShadowRoot</code> ([https://bugzil.la/1868428 1868428]) | |||
* <code>Document.fragmentDirective</code> – ([https://bugzil.la/1914877 1914877]) | |||
* <code>Element.ariaBrailleLabel</code> & <code>Element.ariaBrailleRoleDescription</code> reflecting global ARIA HTML <code>aria-braillelabel</code> & <code>aria-brailleroledescription</code> attributes | |||
* <code>Element.currentCSSZoom</code> ([https://bugzil.la/1880189 1880189]) | |||
* <code>ElementInternals.states</code> ([https://bugzil.la/1887543 1887543]) | |||
* <code>fetchPriority</code> property of <code>HTMLLinkElement</code>, <code>HTMLScriptElement</code>, <code>HTMLImageElement</code> ([https://bugzil.la/1854077 1854077]) | |||
* <code>HTMLButtonElement</code> <code>popoverTargetElement</code> & <code>popoverTargetAction</code> properties | |||
* <code>HTMLInputElement</code> <code>popoverTargetElement</code> & <code>popoverTargetAction</code> properties | |||
* <code>HTMLElement</code> <code>popover</code> property; <code>hidePopover()</code>, </code>showPopover()</code>, and <code>togglePopover()</code> methods; <code>beforetoggle</code> & <code>toggle_event</code> events (of type <code>ToggleEvent</code>) | |||
* <code>HTMLVideoElement</code> methods <code>requestVideoFrameCallback()</code> & <code>cancelVideoFrameCallback()</code> ([https://bugzil.la/1800882 1800882], [https://bugzil.la/1919367 1919367]) | |||
* <code>PopoverInvokerElement</code> ([https://bugzilla.mozilla.org/show_bug.cgi?id=1823757 1823757], [https://bugzilla.mozilla.org/show_bug.cgi?id=1866993 1866993]) | |||
* <code>Selection.direction</code> ([https://bugzil.la/1867058 1867058]) | |||
* <code>Selection.getComposedRanges()</code> ([https://bugzil.la/1867058 1867058]) | |||
* <code>ShadowRoot.getHTML()</code> and properties <code>ShadowRoot.serializable</code> and <code>HTMLTemplateElement.shadowRootSerializable</code> | |||
* <code>showPicker()</code> ([https://bugzil.la/1865207 1865207]) | |||
== JS == | == JS == | ||
* <code>Intl.Segmenter</code> | * <code>ArrayBuffer</code> resizable, <code>SharedArrayBuffer</code> growable ([https://bugzil.la/1884150 1884150]) | ||
* ... | * <code>ArrayBuffer.prototype.transfer()</code> & <code>ArrayBuffer.prototype.transferToFixedLength()</code> ([https://bugzil.la/1865103 1865103]) | ||
* <code>Float16Array</code> typed arrays ([https://bugzil.la/1903329 1903329]) | |||
* <code>Intl.Segmenter</code> ([https://bugzil.la/1423593 1423593], [https://bugzil.la/1883914 1883914]) | |||
* <code>Set.prototype</code> methods: <code>intersection()</code>, <code>union()</code>, <code>difference()</code>, <code>symmetricDifference()</code>, <code>isSubsetOf()</code>, <code>isSupersetOf()</code>, <code>isDisjointFrom()</code> ([https://bugzil.la/1868423 1868423]) | |||
* synchronous iterator helper methods on <code>Iterator.prototype</code> - ([https://bugzil.la/1896390 1896390]) | |||
* <code>Uint8Array</code> methods ([https://bugzil.la/1862220 1862220], [https://bugzil.la/1917885 1917885]) | |||
== APIs == | == APIs == | ||
* LargestContentfulPaint | * <code>AbortSignal.any()</code> ([https://bugzil.la/1830781 1830781]) | ||
* <code> | * <code>Blob.bytes()</code> ([https://bugzil.la/1896509 1896509]) | ||
* <code>CloseWatcher</code> ([https://bugzil.la/1888729 1888729]) | |||
* <code>CookieStore</code> & <code>CookieChangeEvent</code> interfaces, <code>Window.cookieStore</code> & <code>ServiceWorkerGlobalScope.cookieStore</code> properties ([https://bugzil.la/1800882 1800882]) | |||
* <code>IDBFactory.databases()</code> ([https://bugzil.la/934640 934640]) | |||
* <code>IDBTransaction.durability</code> ([https://bugzil.la/1878143 1878143]) | |||
* <code>JSON.parse</code> with source, <code>JSON.isRawJSON()</code>, <code>JSON.rawJSON()</code> ([https://bugzil.la/1913085 1913085], [https://bugzil.la/1925334 1925334]) | |||
* <code>LargestContentfulPaint</code> ([https://bugzil.la/1866266 1866266]) | |||
* <code>MediaStreamTrack.getCapabilities()</code> ([https://bugzil.la/1179084 1179084]) | |||
* <code>navigator.credentials.create</code> supports cross-origin credential creation ([https://bugzil.la/1870863 1870863]) | |||
* <code>Navigator.wakeLock</code> - Screen Wake Lock API ([https://bugzil.la/1589554 1589554], [https://bugzil.la/1874849 1874849]) | |||
* <code>Notification.silent</code> ([https://bugzil.la/1809028 1809028]) | |||
* <code>Permissions.query()</code> support <code>microphone</code> & <code>camera</code> permissions ([https://bugzil.la/1609427 1609427], [https://bugzil.la/1915222 1915222]) | |||
* <code>PointerEvent</code> properties <code>altitudeAngle</code> & <code>azimuthAngle</code> ([https://bugzil.la/1656377 1656377]) | |||
* <code>Promise.try()</code> ([https://bugzil.la/1905364 1905364]) | |||
* <code>PushMessageData.bytes()</code> ([https://bugzil.la/1897871 1897871]) | |||
* <code>Request.bytes()</code> & <code>Response.bytes()</code> ([https://bugzil.la/1896475 1896475]) | |||
* <code>RTCDTMFSender.canInsertDTMF</code> & <code>RTCDTMFSender.insertDTMF()</code> ([https://bugzil.la/1623193 1623193]) | |||
* <code>RTCIceCandidate</code> properties and methods ([https://bugzil.la/1322186 1322186]) | |||
* <code>RTCRtpReceiver.getParameters()</code> & <code>RTCRtpSender.getParameters()</code> ([https://bugzil.la/1534687 1534687]) | |||
* <code>RTCRtpTransceiver.setCodecPreferences()</code> ([https://bugzil.la/1396922 1396922]) | |||
* <code>URL.parse()</code> ([https://bugzil.la/1823354 1823354]) | |||
* <code>VideoEncoder</code>, <code>VideoDecoder</code>, <code>EncodedVideoChunk</code>, <code>VideoFrame</code>, <code>VideoColorSpace</code> ([https://bugzil.la/1874445 1874445]) | |||
* Web Codecs API support on desktop ([https://bugzil.la/1908572 1908572]) | |||
* Web Crypto API support for Ed25519 ([https://bugzil.la/1804788 1804788]), X25519 ([https://bugzil.la/1904836 1904836]) | |||
* <code>WebGLRenderingContext</code> & <code>WebGL2RenderingContext</code> properties <code>drawingBufferColorSpace</code> ([https://bugzil.la/1885491 1885491]) & <code>unpackColorSpace</code> ([https://bugzil.la/1885446 1885446]) | |||
* <code>WebSocket()<code> constructor supports HTTPS, HTTP, and relative URLs ([https://bugzil.la/1797449 1797449]) | |||
* <code>WorkerNavigator.permissions</code> ([https://bugzil.la/1193373 1193373]) | |||
* ... | * ... | ||
* Removed <code>Navigator.vibrate()</code> ([https://bugzil.la/1653318 1653318], [https://bugzil.la/1623193 1623193]) | |||
=== WebDriver BiDi === | |||
* <code>browser.createUserContext</code> ([https://bugzil.la/1870848 1870848]) | |||
* <code>browser.removeUserContext</code> ([https://bugzil.la/1870849 1870849]) | |||
* <code>browser.getUserContexts</code> ([https://bugzil.la/1870847 1870847]) | |||
* <code>browsingContext.locateNodes</code> command ([https://bugzil.la/1855023 1855023], [https://bugzil.la/1869536 1869536]) | |||
* <code>browsingContext.navigationFailed</code> event ([https://bugzil.la/1846601 1846601]) | |||
* <code>browsingContext.traverseHistory</code> command ([https://bugzil.la/1841018 1841018]) | |||
* <code>input.setFiles</code> command ([https://bugzil.la/1855040 1855040]) | |||
* <code>network.addIntercept</code> command ([https://bugzil.la/1826192 1826192]) | |||
* <code>network.continueResponse</code> command for remaining arguments ([https://bugzil.la/1853887 1853887], [https://bugzil.la/1913737 1913737], | |||
* <code>network.continueRequest</code>, <code>network.continueResponse</code>, <code>network.provideResponse</code> support "<code>request</code>" to resume a blocked request ([https://bugzil.la/1874206 1874206], [https://bugzil.la/1853882 1853882]); support <code>url</code> argument ([https://bugzil.la/1898158 1898158]) | |||
* <code>network.continueWithAuth</code> ([https://bugzil.la/1826196 1826196]) | |||
* <code>network.cookie.CHIPS</code> ([https://bugzil.la/1898253 1898253], [https://bugzil.la/1908160 1908160]) | |||
* <code>network.failRequest</code> ([https://bugzil.la/1853883 1853883]) | |||
* <code>network.fetchError</code> event ([https://bugzil.la/1790375 1790375]) | |||
* <code>network.removeIntercept</code> command ([https://bugzil.la/1826193 1826193]) | |||
* <code>network.responseCompleted</code> & <code>network.fetchError</code> events ([https://bugzil.la/1882803 1882803]) | |||
* <code>network.setCacheBehavior</code> command ([https://bugzil.la/1906100 1906100]) | |||
* <code>permissions.setPermission</code> command ([https://bugzil.la/1875065 1875065]) | |||
* <code>storage.deleteCookies</code> command ([https://bugzil.la/1854581 1854581]) | |||
* <code>storage.getCookies</code> command ([https://bugzil.la/1854580 1854580]) | |||
* <code>storage.setCookie</code> command ([https://bugzil.la/1854582 1854582]) | |||
* <code>userAgent</code> capability ([https://bugzil.la/1885495 1885495]) | |||
=== Add-ons === | |||
* <code>contextualIdentities.move</code> function ([https://bugzil.la/1333395 1333395]) | |||
* <code>runtime.getContexts</code> function ([https://bugzil.la/1875480 1875480]) | |||
* <code>runtime.onPerformanceWarning</code> event ([https://bugzil.la/1861445 1861445]) | |||
* <code>storage.session</code> support <code>storage.StorageArea.getBytesInUse()</code> and <code>storage.session.QUOTA_BYTES</code> property ([https://bugzil.la/1908925 1908925]) | |||
* <code>webRequest.onAuthRequired</code> ([https://bugzil.la/1889897 1889897]) | |||
== Protocols == | == Protocols == | ||
* ULPFEC packet loss recovery | * ULPFEC packet loss recovery | ||
=== HTTP === | === HTTP === | ||
... | * <code>103 Early Hints</code> informational response status code enabled <code>LINK</code> <code>rel=preload</code> ([https://bugzil.la/1874445 1874445]) | ||
* <code>fetchpriority</code> directive in the HTTP <code>Link</code> header ([https://bugzil.la/1854077 1854077]) | |||
* <code>Priority</code> request and response header ([https://bugzil.la/1865040 1865040]) | |||
* <code>zstd</code> directive supported in <code>Content-Encoding</code> HTTP header | |||
== | == Origin Trials == | ||
... | * <code>dom.origin-trials.private-attribution</code> ([https://bugzil.la/1900929 1900929]) | ||
== Related Projects == | == Related Projects == | ||