В Firefox 67 собираются убрать флаг для динамических импортов и включить их подефолту.
https://bugzilla.mozilla.org/show_bug.cgi?id=1517546
https://bugzilla.mozilla.org/show_bug.cgi?id=1517546
bugzilla.mozilla.org
1517546 - Enable dynamic module import by default
NEW (jcoppeard) in Core - JavaScript Engine. Last updated 2019-03-06.
А вот это интересно. Некоторые члены #TC39 отказываются принять динамические импорты в стандарт из-за проблем безопасности. При этом они уже заимплеменчены во всех браузерах (относительно Firefox см. новость выше).
https://twitter.com/_gsathya/status/1103430437920104448
https://twitter.com/_gsathya/status/1103430437920104448
Twitter
Sathya Gunasekaran
import() is shipping in all the browsers but will probably never be part of the ECMAScript thanks to @TC39 committee politics 😞 https://t.co/fKqhQNVwUx
String.prototype.matchAll теперь доступен в Firefox 67 Nightly без флага
https://bugzilla.mozilla.org/show_bug.cgi?id=1531830
https://bugzilla.mozilla.org/show_bug.cgi?id=1531830
Вышел Chrome 73.
Из изменений в JavaScript:
-
-
-
Другие изменения:
- добавлена поддержка PWA на всех платформах, и теперь они доступны везде
- Signed HTTP Exchanges
- Constructable style sheets
- тёмный режим теперь доступен на macOS
https://developers.google.com/web/updates/2019/03/nic73
Из изменений в JavaScript:
-
Object.fromEntries()-
String.prototype.matchAll()-
Atomics.wake() переименован в Atomics.notify() в соответствии с изменениями в спецификацииДругие изменения:
- добавлена поддержка PWA на всех платформах, и теперь они доступны везде
- Signed HTTP Exchanges
- Constructable style sheets
- тёмный режим теперь доступен на macOS
https://developers.google.com/web/updates/2019/03/nic73
В блоге WebKit опубликована статья об улучшениях WebRTC в Safari 12.1
https://webkit.org/blog/8672/on-the-road-to-webrtc-1-0-including-vp8/
https://webkit.org/blog/8672/on-the-road-to-webrtc-1-0-including-vp8/
WebKit
On the Road to WebRTC 1.0, Including VP8
Safari 11 was the first Safari version to support WebRTC.
В кодовую базу Firefox наконец-то добавили флаг для включения Class Fields. Ждем в ближайшем обновлении Firefox Nightly
https://bugzilla.mozilla.org/show_bug.cgi?id=1529758
https://bugzilla.mozilla.org/show_bug.cgi?id=1529758
bugzilla.mozilla.org
1529758 - Add a pref for fields
RESOLVED (jorendorff) in Core - JavaScript Engine. Last updated 2019-03-12.
В V8 7.4 добавился JIT-less режим, который позволяет использовать движок на платформах с запретом аллокации памяти для исполнения команд непривилигированными приложениями на таких платформах как iOS, Smart TV и игровых консолях или же запретить такие аллокации принудительно для дополнительной безопасности.
https://v8.dev/blog/jitless
https://v8.dev/blog/jitless
В Chrome 74 (в данный момент beta) добавлен первый модуль из Layered APIs — KV Storage. Он представляет собой асинхронную замену Local Storage и реализован поверх IndexedDB. На TPAC 2018 было достигнуто соглашение, согласно которому после выхода из инкубационного периода KV Storage планируется добавить в спецификацию IndexedDB.
https://developers.google.com/web/updates/2019/03/kv-storage
https://developers.google.com/web/updates/2019/03/kv-storage
Вебня
В кодовую базу Firefox наконец-то добавили флаг для включения Class Fields. Ждем в ближайшем обновлении Firefox Nightly https://bugzilla.mozilla.org/show_bug.cgi?id=1529758
Выкатился Firefox Nightly с поддержкой этого флага.
https://twitter.com/chicoxyzzy/status/1105806114824830978
https://twitter.com/chicoxyzzy/status/1105806114824830978
Twitter
Sergey Rubanov @ 🇩🇪
Instance class fields are now supported under flag in @FirefoxNightly
Вебня
Совсем забыл написать вчера огненную новость 🔥 (но возможно Вы уже в курсе). В Chrome 73, который выйдет уже через неделю (12 марта) убрали поддержку Web Components v0, что привело к поломке некоторых сайтов, например… YouTube. Этот видеосервис от Google использует…
Из-за проблем с YouTube и другими сайтами Web Components v0 решено было не убирать до Chrome 75. Сам YouTube уже работает в Canary, но работает медленно из-за полифилла.
https://groups.google.com/a/chromium.org/d/msg/blink-dev/h-JwMiPUnuU/KCiheZSeBQAJ
Спасибо @chalker за новость.
https://groups.google.com/a/chromium.org/d/msg/blink-dev/h-JwMiPUnuU/KCiheZSeBQAJ
Спасибо @chalker за новость.
Google
Google Groups
Google Groups allows you to create and participate in online forums and email-based groups with a rich experience for community conversations.
Предложение Function.prototype.toString переименовано в Function implementation hiding. Предлагается использовать директиву
https://github.com/tc39/proposal-function-implementation-hiding
”hide implementation”, которая как и директива ”use strict” может быть использована на уровне файла исходников или на уровне фунции.https://github.com/tc39/proposal-function-implementation-hiding
GitHub
GitHub - tc39/proposal-function-implementation-hiding: JavaScript language proposal: function implementation hiding
JavaScript language proposal: function implementation hiding - tc39/proposal-function-implementation-hiding
Колоссальное обновление получило предложение декораторов, находящееся в данный момент на stage 2.
https://github.com/tc39/proposal-decorators
https://github.com/tc39/proposal-decorators/blob/master/NEXTBUILTINS.md
https://github.com/tc39/proposal-decorators
https://github.com/tc39/proposal-decorators/blob/master/NEXTBUILTINS.md
GitHub
GitHub - tc39/proposal-decorators: Decorators for ES6 classes
Decorators for ES6 classes. Contribute to tc39/proposal-decorators development by creating an account on GitHub.
Официально зарелизился веб сайт #TC39, в создании которого я немного принимал участие, за что был упомянут в статье.
https://hacks.mozilla.org/2019/03/a-homepage-for-the-javascript-specification/
https://hacks.mozilla.org/2019/03/a-homepage-for-the-javascript-specification/
Mozilla Hacks – the Web developer blog
A Homepage for the JavaScript Specification – Mozilla Hacks - the Web developer blog
Ecma TC39 has shipped a website for following updates to the JavaScript specification. It's the first part of a two-part project to help people find the information they need in ...
Уже на следующей неделе состоится мартовская встреча #TC39 в Google. Дедлайн для предложений, которые собираются переходить на следующий stage уже прошёл, поэтому список таких предложений в документе можно считать окончательным.
Что интересно, Daniel Ehrenberg собирается пробовать продвигать динамические импорты на stage 4. Напомню, что некоторые члены комитета против этого продвижения, даже не смотря на то, что динамические импорты уже доступны во всех браузерах.
Среди предложений, которые будут обсуждаться, есть 3 новых:
- Private Declarations
- Promise.result
- Promise.any
Кстати, я являюсь соавтором Promise.any и пишу текст спецификации для него.
Что интересно, Daniel Ehrenberg собирается пробовать продвигать динамические импорты на stage 4. Напомню, что некоторые члены комитета против этого продвижения, даже не смотря на то, что динамические импорты уже доступны во всех браузерах.
Среди предложений, которые будут обсуждаться, есть 3 новых:
- Private Declarations
- Promise.result
- Promise.any
Кстати, я являюсь соавтором Promise.any и пишу текст спецификации для него.
Делюсь с вами экслюзивом. Это предложение было показано Дениелом Эренбергом на JS Kongress Deep-Track. Его видели всего около 20 человек, и у него еще нет репозитория на гитхабе, только гист. В нём вы можете увидеть новые иммутабельные типы Record и Tuple. Предлагается реализовать их через обновленный пропозал декораторов (об этом обновлении я скорее всего еще расскажу позже подробнее).
https://gist.github.com/littledan/eb10cabc39e884c4a5fd6bbaa60afec0
https://gist.github.com/littledan/eb10cabc39e884c4a5fd6bbaa60afec0
На только что завершившейся встрече #WebAssembly CG предложение интеграции с ECMAScript модулями перешло на фазу 2.
GitHub
esm-integration/proposals/esm-integration at master · WebAssembly/esm-integration
ECMAScript module integration. Contribute to WebAssembly/esm-integration development by creating an account on GitHub.
Вышел Firefox 66, в котором особо ничего интересного не добавили.
https://www.mozilla.org/en-US/firefox/66.0/releasenotes/
https://www.mozilla.org/en-US/firefox/66.0/releasenotes/
Mozilla
Firefox 66.0, See All New Features, Updates and Fixes
Денис Пушкарев выпустил новую мажорную версию core-js 3.0, которая используется в Babel и, пожалуй, является самой популярной библиотекой полифиллов. В этой версии очень много изменений, посмотрите ченджлог и поддержите разработку библиотеки на Open Collective или Patreon.
GitHub
core-js/docs/2019-03-19-core-js-3-babel-and-a-look-into-the-future.md at master · zloirock/core-js
Standard Library. Contribute to zloirock/core-js development by creating an account on GitHub.
Также вышел релиз Babel 7.4.0 с поддержкой TypeScript 3.4, core-js 3 и другими фичами
https://babeljs.io/blog/2019/03/19/7.4.0
https://babeljs.io/blog/2019/03/19/7.4.0
babeljs.io
7.4.0 Released: core-js 3, static private methods and partial application · Babel
Today we are releasing Babel 7.4.0!
Вышел LLVM 8, в котором target #WebAssembly включен по умолчанию и больше не является экспериментальным
http://lists.llvm.org/pipermail/llvm-announce/2019-March/000082.html
http://releases.llvm.org/8.0.0/docs/ReleaseNotes.html#changes-to-the-webassembly-target
http://lists.llvm.org/pipermail/llvm-announce/2019-March/000082.html
http://releases.llvm.org/8.0.0/docs/ReleaseNotes.html#changes-to-the-webassembly-target
Вышел Safari Technology Preview 78. Из главного: в нём Pointer Events включены по умолчанию + добавлена их поддержка в macOS.
Остальные изменения здесь: https://webkit.org/blog/8676/release-notes-for-safari-technology-preview-78/
Остальные изменения здесь: https://webkit.org/blog/8676/release-notes-for-safari-technology-preview-78/
WebKit
Release Notes for Safari Technology Preview 78
Safari Technology Preview Release 78 is now available for download for macOS Mojave and macOS High Sierra.