Вебня
4.69K subscribers
89 photos
2 videos
3 files
2.08K links
JS VMs, спецификации, пропозалы, встречи #TC39, #WebAssembly, #W3C, браузеры, нёрдство.
Download Telegram
RenderingNG в деталях

Chris Harrelson начал серию статей, которая посвящена процессу рендеринга (превращение HTML и CSS в пиксели) в движке Blink. А точнее про RenderingNG (rendering engine) – собирательное название для плеяды специализированных компонент.
В первой статье описываются мотивация, ключевые свойства системы и сами компоненты, как они развивались по годам с указанием приобретаемой функциональности. Во второй статье описывается общая архитектура, как компоненты взаимодействуют и как работает весь процесс по получению пикселей на условном экране. Обещают в скором времени продолжение с деталями по каждому компоненту и какую роль они играют, а так же по структурам данных, которые используются в процессе рендеринга.
⚡️ Safari 15 Beta стал доступен для macOS Catalina через портал Apple для разработчиков.

https://developer.apple.com/download/all/
URLPattern API станет доступен в Chrome 93

https://web.dev/urlpattern/

URLPattern — это новый API для сопоставления URL. В данный момент он находится в разработке в WICG, поэтому, кажется, Google форсит его до продвижения в качестве стандарта W3C, что немного странно, хотя API выглядит очень даже полезным.
Вышел Yarn 3.0

В новой версии улучшена производительность, добавлена поддержка ESBuild и добавлены другие изменения. В следующих минорных версиях планируется также поддержка Corepack.
Оптимизация функций стадартной библиотеки в JavaScriptCore

Tadeu Zagallo из Apple рассказал о способах оптимизации встроенных функций в JavaScriptCore (JS движке из WebKit / Safari) на примере Function.prototype.toString(). Оптимизации достигаются за счет кеширования результата, спекулятивных вычислений за счет знаний о механике исполнения, добавления новой инструкции, которая загружает кешированное значение когда оно доступно и обучения абстракного интерпретатора использованию вычисленного значения, если оно доступно.

https://webkit.org/blog/11934/optimizing-javascript-standard-library-functions-in-jsc/
Использование AbortSignal в Node.js

James Snell о том, как работает AbortSignal и AbortController, а также о том, как реализовать их поддержку в своём API.

https://www.nearform.com/blog/using-abortsignal-in-node-js/
Новые возможности модуля crypto в Node.js

Ещё одна статья James Snell о генереции случайных UUID через новое API crypto.randomUUID() и генерации и проверке простых чисел.

https://www.nearform.com/blog/new-crypto-capabilities-in-node-js/
Playwright Test — новый тест-раннер от команды Playwright

Андрей Лушников из Microsoft о новом раннере для Playwright, который помогает запустить тесты во всех браузерах, выполняет тесты параллельно, реализует захват трейсов, видео, скриншотов и легко расширяем.

https://applitools.com/event/introducing-playwrights-new-test-runner/
WebDriver BiDi — новый протокол для автоматизации браузеров

В разработке и стандартизации (W3C) задействованы такие компании как Apple, BrowserStack, Google, Microsoft, Mozilla, Sauce Labs. Протокол позволит использовать Puppeteer (или другие инструменты) с любыми браузерами, заменив собой Chrome DevTools Protocol (CDP), а также добавляет интеграцию с Web Platform Tests.

https://developer.chrome.com/blog/webdriver-bidi/
👍1
Вышла Node.js 16.6.0 с поддержкой метода at() (stage 3) для строк, массивов и типизированных массивов.

https://nodejs.org/en/blog/release/v16.6.0/
GNOME Web Canary

Сборки браузера GNOME Web (основывается на WebKit) теперь помимо стабильных релизов (для конечных пользователей) и Technology Preview (для тестирования последних разработок) доступены в виде сборок с самыми последними фичами, в том числе нестабильными.

https://base-art.net/Articles/introducing-the-gnome-web-canary-flavor/
Сегодня каналу Вебня исполняется 3 года!

Большое спасибо всем подписчикам и особенно патронам за поддержку и мотивацию! По случаю дня рождения канала несколько новостей:

1) Я удалил с Patreon таер с поддержкой в $5, так как фактически никаких особенных плюсов у таких патронов по сравнению с теми, кто платил $2 практически никогда не было. Если Вам нравится этот канал настолько, что вы готовы пожертвовать больше, то это всё ещё возможно сделать через сам Patreon.

2) Теперь чат, который ранее был открыт только для патронов, открыт для всех! Он не привязан к каналу, чтобы не мешать комментарии из канала с любыми другими обсуждениями здесь. Я пока не уверен, что смогу уделять ему много времени, но обязательно буду появляться и рассказывать что-нибудь интересное, а может быть иногда даже будем проводить небольшие видеоконференции по мотивам встреч TC39 или групп W3C, посмотрим. Пожалуйста, воздержитесь от оффтопа в чате (сегодня в честь дня рождения канала — можно😄). И добро пожаловать: @webnya_chat!

——

Канал будет придерживаться всё той же политики относительно рекламы — её нет и никогда не будет! Также мы никогда сами не тратили денег на рекламу или продвижение канала, поэтому если он Вам нравится, то пожалуйста расскажите о нём другим, это будет лучшим подарком на день рождения Вебни! Также можно подонатить на Патреоне, но только если очень хочется и Вас это не обременит, это совсем не обязательно! 🙂

И, конечно же, принимаем поздравления в комментариях к этому посту и в чате Вебни!
Что нового появится в Chrome 93

Оригинальная статья: https://blog.chromium.org/2021/07/chrome-93-multi-screen-window-placement.html

Добавлены новые Origin Trials:
- Cross-Origin-Embedder-Policy: credentialless — позволяет отправлять cross-origin запросы без CORS
- Multi-Screen Window Placement API
- ОС-подобные оверлеи для PWA
- PWA в качестве обработчиков URL

Фичи, которые вышли из Origin Trial и станут доступны по умолчанию:
- Web Bundles — новый способ публикации бандлов с улучшенным кэшированием
- WebXR Plane Detection API

Другие фичи:
- AbortSignal.abort()
- улучшения CSS Flexbox
- Error.cause (stage 3) — также будет доступен в Firefox 91 и в Safari 15, которые сейчас доступны как beta-релизы
- Object.hasOwn (stage 3) — также появится в Firefox 92
- обновления User-Agent Client Hints API

Релиз Chrome 93 состоится 31 августа
Вебня pinned «Сегодня каналу Вебня исполняется 3 года! Большое спасибо всем подписчикам и особенно патронам за поддержку и мотивацию! По случаю дня рождения канала несколько новостей: 1) Я удалил с Patreon таер с поддержкой в $5, так как фактически никаких особенных плюсов…»
Результаты опроса о скроллинге в вебе 2021

Деврелы Google опубликовали результаты опроса о скроллинге. В целом картина такая, что разработчики не очень удовлетворены текущим состоянием и испытывают боль.
В дружественном канале @ufostation вышло интервью с разработчиками Яндекс.Браузера
⚡️ Опубликованы стенограммы с июльской встречи #TC39

Результаты встречи я ранее публиковал тут:
- первый день
- второй день
- третий день
Вышел Safari Technology Preview 129

https://webkit.org/blog/11951/release-notes-for-safari-technology-preview-129/

В нём:
- улучшения Web Inspector
- исправления и улучшения CSS
- различные улучшения скроллинга
- исправления некоторых Web API, таких как ReadableStream, WebGL, IndexedDB, WebCrypto
- часть реализации #WebAssembly пропозала Typed Function References (phase 2)
⚡️ W3C и WHATWG совместно опубликовали обновление спецификаций DOM от 15 июня 2020 года в статусе Proposed Recommendation.
Super Duper Secure Mode в Edge

В браузере Edge появится новый режим, в котором будет отключен JIT, который является причиной почти половины уязвисостей. Инженеры Microsoft выяснили, что производительность JS при этом падает незначительно, а отключение JIT позволит применить также другие технология для защиты браузера, которые иначе применить сложно. Режим получил название Super Duper Secure Mode и доступен в Edge Canary, Dev и Beta. На данный момент при включённом SDSM недоступен #WebAssembly.

https://microsoftedge.github.io/edgevr/posts/Super-Duper-Secure-Mode/
Сегодня World Wide Web исполняется 30 лет

6 августа 1991 года Сэр Тим Бернерс Ли рассказал миру про Веб.

https://www.w3.org/blog/2021/08/30-years-on-from-introducing-the-web-to-the-world/