Данная статья содержит информацию обо всех изменениях в Firefox 58, которые касаются разработчиков. Firefox 58 — текущая бета-версия Firefox, релиз которой состоится 16 января 2018.
Изменения для веб-разработчиков
Инструменты разработчика
- Код старой версии режима Отзывчивый дизайн (Responsive Design) (включён по умолчанию в pre-Firefox 52) удалён из Devtools ({{bug(1305777)}}). Подробнее о новой версии в статье Responsive Design Mode.
- Возможность просматривать документацию MDN docs на вкладке CSS на страницах инспектора удалена ({{bug(1382171)}}).
- Маркер CSS фигур включён по умолчанию для фигур (геометрических примитивов), сгенерированных как {{cssxref("clip-path")}} ({{bug(1405339)}}).
- Network Monitor теперь содержит кнопку для останова/записи и просмотра сетевого трафика согласно ({{bug(1005755)}}).
- В Network Monitor фильтр "Flash" недоступен и все запросы Flash включаются в фильтр "Другое" согласно ({{bug(1413540)}}).
HTML
Нет изменений.
CSS
- Определение {{cssxref("@font-face/font-display", "font-display")}} доступно по умолчанию для всех платформ ({{bug(1317445)}}).
SVG
Нет изменений.
JavaScript
- Метод {{jsxref("Promise.prototype.finally()")}} реализован для ({{bug(1019116)}}).
- Метод {{jsxref("NumberFormat.formatToParts", "Intl.NumberFormat.prototype.formatToParts()")}} реализован для ({{bug(1403319)}}).
- Объект {{jsxref("Global_Objects/DateTimeFormat", "Intl.DateTimeFormat")}} теперь поддерживает атрибут
hourCycle
и языковой тегhc
согласно ({{bug(1386146)}}).
APIs
Новые интерфейсы API
- Интерфейс API {{domxref("PerformanceNavigationTiming")}} реализован согласно ({{bug(1263722)}}).
- Gecko has also been given a pref that can be used to disable the interface if required —
dom.enable_performance_navigation_timing
, defaulting totrue
({{bug(1403926)}}).
- Gecko has also been given a pref that can be used to disable the interface if required —
DOM
- Errors reported via error objects in certain APIs — for example in the
error
property of {{domxref("FileReader")}}, {{domxref("IDBRequest")}}, and {{domxref("IDBTransaction")}}, and when requests made via certain methods of {{domxref("RTCPeerConnection")}} are unsuccessful — are now represented by {{domxref("DOMException")}} instances. {{domxref("DOMError")}} is now deprecated, having been removed from the DOM4 spec ({{bug(1120178)}}). - The WebVR API has been enabled by default on macOS ({{bug(1374399)}}).
- The {{domxref("PerformanceResourceTiming.workerStart")}} property is now supported ({{bug(1191943)}}).
- Budget-based background timeout throttling has been implemented — see Policies in place to aid background page performance for more details ({{bug(1377766)}}).
DOM events
Нет изменений.
Media и WebRTC
- The prefixed version of {{domxref("HTMLMediaElement.srcObject")}} has been removed; make sure code is updated to use the standard
srcObject
instead ofmozSrcObject
({{bug(1183495)}}).
Canvas и WebGL
- Support for prefixed WebGL extensions has been removed ({{bug(1403413)}}):
- For
MOZ_WEBGL_compressed_texture_atc
use {{domxref("WEBGL_compressed_texture_atc")}} instead. - For
MOZ_WEBGL_compressed_texture_pvrtc
use {{domxref("WEBGL_compressed_texture_pvrtc")}} instead. - For
MOZ_WEBGL_compressed_texture_s3tc
use {{domxref("WEBGL_compressed_texture_s3tc")}} instead. - For
MOZ_WEBGL_depth_texture
use {{domxref("WEBGL_depth_texture")}} instead. - For
MOZ_WEBGL_lose_context
use {{domxref("WEBGL_lose_context")}} instead.
- For
HTTP
frame-ancestors
is no longer ignored in {{httpheader("Content-Security-Policy-Report-Only")}} ({{bug(1380755)}}).- Firefox now implements a TLS handshake timeout with a default value of 30 seconds. The timeout value can be varied by editing the
network.http.tls-handshake-timeout
pref in about:config ({{bug(1393691)}}). - The
worker-src
CSP directive has been implemented ({{bug(1302667)}}).
Безопасность
Нет изменений.
Расширения
Нет изменений.
Другое
- "Add to home screen" is now supported in Firefox for Android, part of the Progressive Web Apps effort ({{bug(1212648)}}).
- WebAssembly now has a tiered compiler providing load time optimizations ({{bug(1277562)}}), and new streaming APIs — {{jsxref("WebAssembly.compileStreaming()")}} and {{jsxref("WebAssembly.installStreaming()")}} {{bug(1347644)}}.
Removals from the web platform
HTML
- You can no longer nest an {{htmlelement("a")}} element inside a {{htmlelement("map")}} element to create a hotspot region — an {{htmlelement("area")}} element needs to be used instead ({{bug(1317937)}}).
CSS
- The following proprietary Mozilla system metric pseudo-classes are no longer available to web content ({{bug(1396066)}}):
- {{Cssxref(":-moz-system-metric(images-in-menus)")}}
- {{Cssxref(":-moz-system-metric(mac-graphite-theme)")}}
- {{Cssxref(":-moz-system-metric(scrollbar-end-backward)")}}
- {{Cssxref(":-moz-system-metric(scrollbar-end-forward)")}}
- {{Cssxref(":-moz-system-metric(scrollbar-start-backward)")}}
- {{Cssxref(":-moz-system-metric(scrollbar-start-forward)")}}
- {{Cssxref(":-moz-system-metric(scrollbar-thumb-proportional)")}}
- {{Cssxref(":-moz-system-metric(touch-enabled)")}}
- {{Cssxref(":-moz-system-metric(windows-default-theme)")}}
- The following proprietary Mozilla media features are no longer available to web content ({{bug(1396066)}}):
-moz-color-picker-available
-moz-is-glyph
-moz-mac-graphite-theme
-moz-mac-yosemite-theme
-moz-os-version
-moz-overlay-scrollbars
-moz-physical-home-button
-moz-scrollbar-end-backward
-moz-scrollbar-end-forward
-moz-scrollbar-start-backward
-moz-scrollbar-start-forward
-moz-scrollbar-thumb-proportional
-moz-swipe-animation-enabled
-moz-windows-accent-color-in-titlebar
-moz-windows-classic
-moz-windows-compositor
-moz-windows-default-theme
-moz-windows-glass
-moz-windows-theme
- The proprietary Mozilla
:-moz-styleeditor-transitioning
pseudo-class is no longer available to web content ({{bug(1396099)}}).
JavaScript
- The non-standard {{jsxref("Date.prototype.toLocaleFormat()")}} method has been removed ({{bug(818634)}}). See Warning: Date.prototype.toLocaleFormat is deprecated for more information and migration help.
- The non-standard and deprecated {{jsxref("Object.prototype.watch()")}} and {{jsxref("Object.prototype.unwatch", "unwatch()")}} methods have been removed and will no longer work ({{bug(638054)}}). Consider using setters and getters or proxies instead.
- The legacy Iterator protocol, the
StopIteration
object, the legacy generator functions and the non-standard {{jsxref("Function.prototype.isGenerator()")}} method have been removed. Use the ES2015 iteration protocols and standards-compliant iterators and generators instead ({{bug(1083482)}}, {{bug(1413867)}}, {{bug(1119777)}}). - The non-standard Array comprehensions and Generator comprehensions have been removed ({{bug(1414340)}}).
APIs
- The proprietary
moz-blob
andmoz-chunked-text
values of the {{domxref("XMLHttpRequest.responseType")}} property were removed completely in Firefox 58 ({{bug(1397145)}}, {{bug(1397151)}}, {{bug(1120171)}}). - The
dom.abortController.enabled
anddom.abortController.fetch.enabled
prefs that controlled exposure of the Abort API functionality have now been removed, since those features are now enabled by default ({{bug(1402317)}}). - The proprietary
mozSrcObject
property was removed in Firefox 58 ({{bug(1183495)}}). Use the standard {{domxref("HTMLMediaElement.srcObject")}} property instead.
SVG
No changes.
Changes for add-on and Mozilla developers
WebExtensions
No changes.
See also
Older versions
{{Firefox_for_developers(57)}}