В Chrome Canary под флагом добавлено кэширование скомпилированных #WebAssembly модулей. Включение фичи позволяет избежать повторной компиляции и сразу инициировать модуль с горячим стартом.
Интересная серия статей “Проблемы #WebAssembly” в четырех частях:
- WebAssembly Is Not a Stack Machine
- Why Do We Need the Relooper Algorithm, Again?
- What About Alloca?
- Microwasm
- WebAssembly Is Not a Stack Machine
- Why Do We Need the Relooper Algorithm, Again?
- What About Alloca?
- Microwasm
В Firefox Nightly 67 добавили защиту от криптовалютных майнеров и фингерпринтинга.
https://bugzilla.mozilla.org/show_bug.cgi?id=1527917
https://bugzilla.mozilla.org/show_bug.cgi?id=1527917
Вышла новая версия Safari Technology Preview под номером 76 с незначительными исправлениями темного режима, WebRTC, CSS, рендерера.
https://webkit.org/blog/8607/release-notes-for-safari-technology-preview-76/
https://webkit.org/blog/8607/release-notes-for-safari-technology-preview-76/
WebKit
Release Notes for Safari Technology Preview 76
Safari Technology Preview Release 76 is now available for download for macOS Mojave and macOS High Sierra.
Опубликованы записи с 68й встречи #TC39, проходившей 29-31 января.
https://github.com/tc39/tc39-notes/tree/master/es9/2019-01
https://github.com/tc39/tc39-notes/tree/master/es9/2019-01
Сегодня в багтрекере Firefox была закрыт и помечен как решённый тикет про публичные и приватные поля классов, хотя я не смог найти как включить их в свежайшем Nightly (но есть понятный эксепшн
https://bugzilla.mozilla.org/show_bug.cgi?id=1499448
SyntaxError: fields are not currently supported).https://bugzilla.mozilla.org/show_bug.cgi?id=1499448
Новость не совсем по теме канала, но довольно интересная и важная:
В стандарт C++20 добавили модули и корутины!
https://twitter.com/jfbastien/status/1099420319847145473
В стандарт C++20 добавили модули и корутины!
https://twitter.com/jfbastien/status/1099420319847145473
Twitter
JF Bastien
As of a few minutes ago, C++20 has modules and coroutines. Combine that with concepts, contracts, ranges, operator , constexpr everywhere, std::span, std::atomic_ref, etc. ‼️ C++20 will be *huge* (in a good way) ‼️
Рабочая группа Web Performance опубликовала спецификацию User Timing Level 2 как W3C Recommendation. Эта спецификация описывает возмозможности для измерения производительности приложений с помощью высокоточных таймеров и поглощает выпущенную в декабре 2013 года спецификацию User Timing.
CSS Working Group собираются добавить разные математические функции.
https://twitter.com/bdc/status/1100921258839953408
Твит заметил @maxgraey, за что ему как всегда большое спасибо 👍
https://twitter.com/bdc/status/1100921258839953408
Твит заметил @maxgraey, за что ему как всегда большое спасибо 👍
Twitter
Benjamin De Cock
The CSS Working Group agreed this morning on adding many math functions. We now have: • calc() • min() • max() • clamp() • sin() • cos() • tan() • acos() • asin() • atan() • atan2() • hypot() • sqrt() • pow() The face of CSS is rapidly changing.
С сегодняшнего дня мастер ветка репозитория спецификации содержит версию ES2020, а ES2019 выделен в отдельную ветку. Напомню, что следуя документу процесса TC39, feature freeze ES2019 происходит после январской встречи, а все последующие предложения в спецификацию, которые достигнут stage 4, попадут уже в ES2020. Официальный релиз ES2019 произойдет в июле.
https://twitter.com/bterlson/status/1101226568985174016
https://twitter.com/bterlson/status/1101226568985174016
Twitter
bterlson.d.ts
ECMA262 master branch is now ES2020! Really looking forward to all the hindsight jokes ya'll are inevitably going to make!
Hashbang Grammar добавили в SpiderMonkey. В Firefox Nightly изменение пока не доехало, но скоро выкатится (а в Chrome Canary 74 уже есть). Такой синтаксис нужен для запуска скриптов в unix-системах интерпретатором (в случае с js это в основном, конечно, NodeJS). Поддержка на уровне языка позволит считать такую строку комментарием и соответственно игнорировать её. Так можно переиспользовать скрипты как из CLI окружений, так и в движках JavaScript.
https://bugzilla.mozilla.org/show_bug.cgi?id=1519097
https://bugzilla.mozilla.org/show_bug.cgi?id=1519097
В 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.