Вебня – Telegram
Вебня
4.68K subscribers
89 photos
2 videos
3 files
2.08K links
JS VMs, спецификации, пропозалы, встречи #TC39, #WebAssembly, #W3C, браузеры, нёрдство.
Download Telegram
Два предложения от Ron Buckton из команды TypeScript RegExp Match Offsets и Explicit Resource Management будут пытаться перейти на stage 2 и stage 1 соответственно
Новое предложение Infix Bang попытается перейти на stage 1. Но что-то есть большие сомнения.
Больше предложения, которые собираются продвигаться, в адженду не принимаются, так что основная программа июльской встречи #TC39 сформирована и находится тут.
Отличная статья – Is postMessage slow?
Принцип работы, бенчмарки, цифры, графики, альтернативные решения, камео WebAssembly+Rust – все как надо: https://dassur.ma/things/is-postmessage-slow/
Никита Сковорода о недавно обнаруженной им уязвимости в yarn, в результате которой токен аутентификации отправлялся по незашифрованному HTTP соединению для некоторых scoped пакетов.

https://github.com/ChALkeR/notes/blob/master/Yarn-vuln.md
Опубликовано обновление CSS Syntax Module Level 3 (Candidate Recommendation)
Ключевые изменения:
- Идентификаторы могут начинаться с двойного тире (влияние custom properties, но подобное именование может добавиться и в прелюдиях директив, например, в @property)
- Убрали <unicode-range-token>, вместо него добавлен <urange> микросинтаксис (из-за проблем в раборе селекторов с комбинатором +, реальный баг в Firefox)
- Добавили определение производных типов <declaration-value> и <any-value>, которые можно встретить в других спеках
- @charset теперь официально не правило, хотя выглядит похоже (это деректива, которая не представлена в CSSOM отдельным объектом, как другие)
И множество других правок и дополнений.

Так совпало, что в недавнем обновлении парсера css-tree, большая часть изменений уже поддержана (тогда изменения были в черновике) – на специальном стенде можно посмотреть как разбиваются значения на токены и матчатся на синтаксисы
Статья: Font-size: An Unexpectedly Complex CSS Property
Про то как работает CSS свойтво font-size с точки зрения спецификаций и сложности его имплементации в stylo (подпроект Servo, подсистемы Firefox). Хоть статье уже два года, она не теряет своей актуальности – полезно для понимания насколько CSS непростой с точки зрения браузера.
Unicode Technical Committee (UTC) рассматривает механизм добавления цветов для emoji, что может позволить добавить, например, белое вино или чёрную кошку.
http://blog.unicode.org/2019/07/unicode-technical-committee-considers.html
Alon Zakai, создатель Emnoscripten и Binaryen о том, как сделать #WebAssembly код асинхронным в userspace с помощью новой фичи в Binaryen — Asyncify.
https://kripken.github.io/blog/wasm/2019/07/16/asyncify.html
Skia (опенсурсная библиотека для 2D графики, основа графического движка используемого в Google Chrome, Firefox, Android и др) портирована на WebAssembly. Порт получил название CanvasKit. Основное применение — использовать в вебе, в том числе для апробации новых Canvas и SVG API, что должно помочь ускорить развитие этих технологий.
Все 3 спецификации #WebAssembly 18 июля перешли на стадию Candidate Recommendation:
- WebAssembly Core Specification
- WebAssembly JavaScript Interface
- WebAssembly Web API
Специалист по компьютерной безопасности Patrick Ventuzelo описывает реверс инжиниринг #WebAssembly модуля в сервисе заметок Google Keep.
https://webassembly-security.com/google-keep-webassembly-module-analysis/
Уже сегодня в 17:00 UTC / 10:00 PDT (в 20:00 по Москве / Киеву / Минску) начнется 71 заседание #TC39, которое пройдет в Редмонде, где эту встречу примет компания Microsoft. Встреча будет проходить с 23 по 25 июля. Повестку дня можно найти как всегда на GitHub https://github.com/tc39/agendas/blob/master/2019/07.md.
Changing a way we’re viewing JSON in a browser
Статья про JsonDiscovery – полезное расширение (плагин) для Chrome и Firefox для просмотра (и не только) JSON. Расширение пилит Денис Колесников. В статье рассказно о фичах, с картинками и короткими видео, которые могут вам зайти и оказаться полезными
1 августа мы делаем уже второй WebAssembly Moscow meetup, на котором выступят Илья Черторыльский из Райффайзен банк, Николай Вольф из Parity, а также Dan Gohman из Mozilla (доклад будет читаться на английском языке в режиме телеконференции). Dan является автором WASI и председателем соответствующей подгруппы в #WebAssembly CG.

Все подробности по ссылке:
https://webassembly-moscow.timepad.ru/event/1025337/

Если у Вас есть что рассказать на следующих митапах, то пишите мне в личку @chicoxyzzy или ищите в @webassembly_ru
Основные результаты первого дня июльской встречи #TC39.
- Nullish Coalescing переходит на stage 3 (слайды)
- доклад и обсуждение Explicit Resource Management вышли за указанные временные рамки, обсуждение продолжится позже (слайды)
- Symbol.reverse and related methods for Array, Map, and Set переходит на stage 1 с предложением не имплементировать Symbol.reverse, а просто добавить соответствующие методы к коллекциям
- ECMA402 предложение Intl.DisplayNames было убрано чемпионом из повестки дня в связи с обнаруженными проблемами и остается на stage 2
- у function.sent новый чемпион, который будет помогать двигать пропозал дальше
- так и не представленное комитету предложение Annex B — HTML Attribute Event Handlers было решено сделать неактивным
Основные результаты второго дня июльской встречи #TC39.
- Promise.allSettled переходит на stage 4, а значит попадет в ES2020 (слайды)
- Promise.any переходит на stage 2 (слайды)
- предложение String.prototype.replaceAll не нашло консенсуса (по поведению /g, возможно будут фиксить и matchAll позже) и остается на stage 2 (слайды)
- RegExp Match array offsets отправляется на stage 3 (слайды)
- предложение Iterator Methods отправляестся на stage 2 (слайды)
- Built-in modules снова не переходят на stage 2 и остаются на stage 1 (слайды)
- пропозал Collection Normalization получил некоторое обновление и остается на stage 2 (слайды)
- function implementation hiding также обновился и остается на stage 2 (слайды)
Вышел Safari Technology Preview 88. Основные изменения:
- ECMA402 пропозалы Intl.PluralRules и Intl.NumberFormat.prototype.formatToParts теперь включены по умолчанию
- исправления в таких API как WebRTC, XHR, Pointer Events
- улучшения рендерера, доступности и веб инспектора
- очередные наработки WebGPU

Весь список изменений:
https://webkit.org/blog/9445/release-notes-for-safari-technology-preview-88/