Вебня
4.69K subscribers
89 photos
2 videos
3 files
2.08K links
JS VMs, спецификации, пропозалы, встречи #TC39, #WebAssembly, #W3C, браузеры, нёрдство.
Download Telegram
В репозитории Electron примерно 12 часов назад появилась версия с тэгом v5.0.0, однако никаких официальных анонсов еще не было.
https://github.com/electron/electron/releases/tag/v5.0.0
W3C опубликовал новую версию документа Roadmap of Web Applications on Mobile, который содержит обзор различных спецификаций, разрабатываемых в W3C и применимых к веб приложениям на мобильных устройствах. Изменения новой версии описаны вот здесь.
25 и 26 апреля в офисе Mozilla в Торонто пройдет встреча W3C, посвященная веб компонентам. Список тем можно найти на гитхабе. Список довольно интересный, советую ознакомиться и пройти по соответствующим ссылкам.
В новых версиях Safari для бета верси iOS 12.3 и macOS 10.14.5 появилась поддержка Intelligent Tracking Prevention 2.2.
https://webkit.org/blog/8828/intelligent-tracking-prevention-2-2/
Статья о том, как команда V8 ускоряла API интернеционализации идобавляла новые фичи.
https://v8.dev/blog/intl
На этой неделе случился релиз Svelte 3: Rethinking reactivity. Что интересно, достаточно стандартное API для реактивности заменили на... его отсустсвие. Это возможно благодаря тому, что Svelte по сути компилятор и теперь он инструментирует код так, что реактивность работает без дополнительного API. Подробности в видео от Rich Harris с деталями и сравнением с React.
У Svelte так же обновился сайт и слоган: вместо "The magical disappearing UI framework" теперь "Cybernetically enhanced web apps"
Далеко не все знают, что такое "инструментирование кода" поэтому рекомендую к просмотру доклад Matt Zeunert - Dynamic Analysis with Babel, о том как сделать нечто подобное, что сделали в Svelte с помощью Babel. Кстати, Matt автор FromJS – экспериментального инструмента показывающий как было получено любое значение в DOM.
В Google прорабатывают решение Trusted Types (вводная статья, explainer, спецификация) – API позволяющее предотвращать XSS инъекции в DOM (например, через присвоение значений Element#innerHTML или Location#href), путем маркировки значений как доверенные для определенных контекстов. Звучит мудренно, но на самом деле не так сложно: включается через CSP заголовок, после чего присваивать значение в DOM API yязвимые к XSS можно, только если это значение пропущено через специальный интерфейс (политику). Имплементация в статусе Origin Trial, доступна в Chrome за флагами с начала этого года.
Инженеры Facebook собираются заимплементить в Chromium WICG пропозал спецификации JavaScript Self-Profiling API Proposal для измерения времени исполнения JavaScript в браузерах пользователей.
Опубликована вторая версия WICG предложения Picture in Picture, которая позволит не ограничиваться HTMLVideoElement, а использовать любой произвольный контент. Это нужно в первую очередь для кастомизации UI и UX видео элемента, но кажется позволит делать и более интересные штуки. Команда Chromium выразила желание заимплементить это предложение.
https://twitter.com/mathias/status/1122839902452948993

Внезапно. CSS не имеет однострочных комментариев по спецификации, однако все браузеры всё равно поддерживают “//“ (на самом деле нет, смотрите комментарий @rdvornov)
Еще одна инициатива WICG и команды Chromium — Periodic Background Sync. Это дополнение к другому WICG предложению Background Sync (поддерживается в Chrome начиная с версии 49), которое добавляет возможность многократно повторять синхронизацию через определенный промежуток времени.
CSS WG опубликовала Candidate Recommendation спецификаций CSS Easing Functions Level 1 и CSS Containment Module Level 1. Первая определяет кривые для анимаций, вторая добавляет свойство contain, которое указавает, что элемент и его контент независимы от дерева документа настолько, насколько это возможно. Это позволяет браузеру производить необходимые изменения только для части DOM, а не всей страницы.
16 мая в Москве пройдет первый #WebAssembly митап, одним из организаторов которого я являюсь.

https://webassembly-moscow.timepad.ru/event/969924/