В Firefox собираются сделать String.prototype.matchAll доступным без каких-либо флагов во всех сборках. На данный момент эта фича доступна только в Nightly.
https://bugzilla.mozilla.org/show_bug.cgi?id=1531830
https://bugzilla.mozilla.org/show_bug.cgi?id=1531830
Бенедикт Мойрер (команда Google V8) опубликовал свои исследования производительности конкатенации строк в JavaScript и конкретно в V8.
bit.ly/fast-string-concatenation-in-javascript
bit.ly/fast-string-concatenation-in-javascript
Google Docs
Fast string concatenation in JavaScript
Fast string concatenation in JavaScript Attention: Shared Google-externally Author: bmeurer@ Last Updated: 2019-03-21 TL;DR Fast String concatenation is hard in JavaScript. Engines have plenty of clever optimizations in place that make it non-trivial to find…
Рабочая группа W3C Web Authentication опубликовала W3C Recommendation спецификации Web Authentication: An API for accessing Public Key Credentials Level 1 (WebAuthn). Этот API позволяет веб-приложениям использовать простую и надежную аутентификацию и уже поддерживатся в Windows 10, Android, а также браузерах Chrome, Firefox, Edge и Safari. Подробнее в пресс-релизе от W3C и FIDO Alliance:
https://www.w3.org/2019/03/pressrelease-webauthn-rec.html
https://www.w3.org/2019/03/pressrelease-webauthn-rec.html
Совсем забыл написать вчера огненную новость 🔥 (но возможно Вы уже в курсе).
В Chrome 73, который выйдет уже через неделю (12 марта) убрали поддержку Web Components v0, что привело к поломке некоторых сайтов, например… YouTube. Этот видеосервис от Google использует JavaScript библиотеку Polymer 1.0, основанную на устаревшей версии веб-компонентов и добавляет полифиллы для всех браузеров, кроме основанных на Chromium. Проверки на версию Chromium на YouTube до сих пор нет, поэтому в Canary он выглядит как на скриншоте. Представители команды Polymer прокомментировали это под твитом от Веса Боса.
Данный факт стал причиной появления множества шуток с использованием слогана от команды Polymer “Use the platform”.
В Chrome 73, который выйдет уже через неделю (12 марта) убрали поддержку Web Components v0, что привело к поломке некоторых сайтов, например… YouTube. Этот видеосервис от Google использует JavaScript библиотеку Polymer 1.0, основанную на устаревшей версии веб-компонентов и добавляет полифиллы для всех браузеров, кроме основанных на Chromium. Проверки на версию Chromium на YouTube до сих пор нет, поэтому в Canary он выглядит как на скриншоте. Представители команды Polymer прокомментировали это под твитом от Веса Боса.
Данный факт стал причиной появления множества шуток с использованием слогана от команды Polymer “Use the platform”.
Пока разработчики JavaScript движков занимаются имплементацией приватных полей классов (а разработчики V8 уже реализовали их и добавили без флага в Chrome 74), споры вокруг этого предложения в спецификацию не угасают. Одна из свежих issue: “private fields will break vue/mobx”. Также можно почитать последние комментарии из “Private members break proxies”.
На только что завершившейся встрече #WebAssembly Community Group был достигнут консенсус по переносу предложения Bulk memory operations с phase 2 на phase 3 (фаза имплементации). В настоящее время это предложение уже реализовано в SpiderMonkey и V8.
В сети появились первые скриншоты новой версии браузера Edge, основанной на Chromium.
https://www.neowin.net/news/exclusive-this-is-what-the-new-chromium-based-edge-looks-like
https://www.neowin.net/news/exclusive-this-is-what-the-new-chromium-based-edge-looks-like
Neowin
Exclusive: This is what the new Chromium-based Edge looks like
Microsoft is working on a new Chromium-based Edge browser, and we now have some screenshots of what some of the early internal builds for the new browser look like, along with its new extension store.
Релиз Safari TP 77 с изменениями в WebRTC, обновлениями CSS Grid, исправлениями доступности, улучшениями Web inspector и пр.
https://webkit.org/blog/8658/release-notes-for-safari-technology-preview-77/
https://webkit.org/blog/8658/release-notes-for-safari-technology-preview-77/
WebKit
Release Notes for Safari Technology Preview 77
Safari Technology Preview Release 77 is now available for download for macOS Mojave and macOS High Sierra.
В 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 ...