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

ChowJS поддерживает фичи языка вплоть до ES2020, поддерживает AOT-компиляцию в машинный код, inline caching, подмножество рантайма NW.js
⚡️ Вышла iOS 15 с Safari 15 в комплекте. Также вышли версии Safari 15 для macOS Big Sur и Catalina
V8 v9.5

В статусе бета версии зарелижена новая версия JavaScript-движка V8. В ней добавлены:
- Intl.DisplayNames API v2 (stage 3)
- Extend TimeZoneName Option Proposal (stage 3)
- WebAssembly Exception Handling (phase 3)

Релиз Chrome 95 с этой версией V8 запланирован на 19 октября 2021
Я тут вернулся из отпуска, так что сегодня и, возможно, завтра, будет опубликовано много пропущенных новостей. Рекомендую отключить уведомления, чтобы это не сильно раздражало 🙂
Chrome 94

21 сентября вышла новая версия браузера Chrome, в которой:
- добавлен режим HTTPS-first (пока выключен по умолчанию, но позже его собираются сделать основным)
- обращение к WebSQL из сторонних стриптов теперь выдаёт предупреждение (в Chrome 97 такие обращения будут блокироваться, а ещё позже WebSQL планируют совсем убрать)
- WebCodecs
- scheduler.postTask() — метод для управления приоритезацией (с режимами user-blocking, user-visible и background)
- Idle Detection API (встретившее бурную критику со стороны разработчиков Firefox и WebKit)
- поддержка новых цветовых пространств (Display P3)
- Class static initialization blocks (ES2022)
Новые Origin Trial:
- WebGPU
- открытие PWA через обработчик URL
Новое в DevTools: https://developer.chrome.com/blog/new-in-devtools-94/
Исправления безопасности: https://chromereleases.googleblog.com/2021/09/stable-channel-update-for-desktop_21.html
Safari Technology Preview 133

30 сентября вышла новая версия превью версии Safari. В ней из интересного:
- очень много обновлений фич и исправлений CSS
- экспериментальная поддержка CSS Cascade Layers (кстати, вот хорошая статья о них)
- обновление CSS Font Loading API
- базовая поддержка Storage API
- очередные обновления WebRTC
- Object.hasOwn (ES2022)
- Почти завершённая имплементация Temporal (stage 3) под флагом

❗️ И самое интересное: COOP/COEP включены по умолчанию, а с ними SharedArrayBuffer (ES2017) и #WebAssembly потоки (phase 2)!
27 и 28 сентября прошёл WebKit Contributors Meeting. Несколько докладов (от сотрудников Igalia) оттуда доступны публично:
- WebKit 2021/2022 Igalia (слайды, видео)
- OffscreenCanvas in WebKit 2021 update (слайды, видео) + статья от Brian Kardell
Вышел Firefox 93

В нём:
- поддержка формата изображений AVIF
- улучшенная поддержка форм в PDF
- блокировка несекьюрных загрузок
- улучшения приватности
- тип datetime-local для input
- поддержка Intl.supportedValuesOf
- class static initialization blocks (ES2022)
- различные улучшения DOM API
- движок WebRender теперь является основным и его нельзя выключить

Список изменений для разработчиков: https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/93
Список исправлений уязвимостей безопасности: https://www.mozilla.org/en-US/security/advisories/mfsa2021-43/
Новости W3C

Спецификация WebRTC Encoded Transform опубликована в статусе First Public Working Draft. Она предоставляет API для работы с закодированными медиа в WebRTC.

Спецификация Synchronization Accessibility User Requirements опубликована в статусе First Public Working Draft. Она описывает возможности по синхронизации доступности с медиа.

Совместными с WHATWG усилиями черновик спецификации DOM от 15 июня 2020 доведён до статуса W3C Recommendation.

ARIA in HTML опубликована в статуса Proposed Recommendation.

Спецификации Payment Request API и Payment Method Identifiers опубликованы в статусе W3C Proposed Recommendation.

Media Source Extensions опубликована в статусе First Public Working Draft. Эта спецификация описывает возможности по генерации медиа потоков для воспроизведения (адаптивное воспроизведение и временные сдвиги для лайв потоков).
Forwarded from Deno Fanatic
⚡️Deno 1.14

- More Web Crypto
- Config for lint and fmt

наконецто добавили эту фичу, стандартрый fmt не совсем был ок
- URLPattern
теперь можно заменить в большинстве фреймворков router на данный web api
- Stabilization of Deno.upgradeWebSocket
- Zero-copy transfers between workers
- File locking APIs

unstable, например фича может понадобиться для различных БД
- Mutual TLS support in fetch
Теперь можно преднастроить клиент для fetch, например докинуть сертификат
- V8 up to 9.4,
ну и конечно доступны class static blocks
- TypeScript 4.4
- std/http теперь идет от Deno native http
- std/collections - добавлено много нового API

https://deno.com/blog/v1.14
V8 v9.6

Выпущена бета-версия V8 v9.6, в которой наконец-то включили по умолчанию поддержку #WebAssembly Reference Types. Поддержка этой уже стандартизированной фичи ранее была добавлена в Firefox 79 и Safari 15. Выпуск Chrome 96 с этой версией V8 назначен на 19 октября.
Ежегодный опрос State of CSS

https://survey.stateofjs.com/survey/state-of-css/2021
Новости W3C

Спецификация CSS Multi-column Layout Module Level 1 опубликована в статусе W3C Candidate Recommendation Snapshot. Фидбек принимается до 12 декабря, после чего она перейдёт в статус Candidate Recommendation.

Media Capture and Streams опубликована в статусе Candidate Recommendation Snapshot. Фидбек принимается до 13 ноября, после чего она перейдёт в статус Candidate Recommendation.

Две спецификации о доступности в вебе опубликованы в статусе First Public Working Draft:
- Natural Language Interface Accessibility User Requirements
- Accessibility of Remote Meetings
JetBrains JavaScript Day

Через час начнётся бесплатная онлайн конференция с крутыми докладчиками, в том числе будет доклад о #TC39 от Ujjwal Sharma, одного из участников комитета.

https://pages.jetbrains.com/javascript-day-2021/
Web Streams везде

Статья о том, что такое Streams API, где оно используется в браузерах и Node.js, как с ним работать и о том, над чем ещё предстоит поработать.

https://css-tricks.com/web-streams-everywhere-and-fetch-for-node-js/
RenderingNG: проект по ускорению, улучшению надёжности и расширяемости рендеринга в Chromium

https://blog.chromium.org/2021/10/renderingng.html

Новая архитектура старается по максимуму использовать GPU и многоядерные системы, а также позволит проще добавлять новые фичи веб платформы. Отдельные части RenderingNG уже добавлены в Chromium, но основная работа всё ещё ведётся.
Вышел Parcel 2

Parcel — это сборщик для веб проектов, предоставляющий максимум необходимых возможностей из коробки. Основные изменения новой мажорной версии:
- Новая система плагинов
- Tree shaking включён по умолчанию
- Улучшения производительности, включающие новый компилятор JavaScript, написанный на языке Rust, а также распараллеливание задач
- Улучшение бандлера с ES модулями
- Автоматический code-splitting (разделение кода)
- Обработка изображений
- Улучшенное кэширование
- Улучшенный hot-reloading
- Инлайнинг бандлов
- Поддержка создания библиотек
- Ленивый режим разработки (пересобирает только необходимые файлы)
- Улучшения поддержка веб воркеров
- Улучшенная диагностика ошибок
- Более надёжный вотчер файлов
- Более быстрые и точные source maps

https://parceljs.org/blog/v2/
Безопасная работа с DOM через Sanitizer API

https://web.dev/sanitizer/

Данный API разрабатывается под эгидой WICG и в данный момент находится в разработке в Chromium и Firefox и в процессе одобрения в WebKit. Оно позволяет избежать XSS атак при работе с HTML и DOM.
Node v17.0.0

Вышла новая мажорная версия Node.js. Основные изменения:
- поддержка OpenSSL 3.0
- V8 9.5
- встроенный модуль readline теперь поддерживает Readable Stream API и промисы

Версия 16 станет LTS на следующей неделе. Поддержка версии 14 переходит в статус maintanance (только фиксы уязвимостей).

Ещё одна статья, посвящённая релизу: https://medium.com/the-node-js-collection/node-js-17-is-here-8dba1e14e382
Chrome 95

Вышел Chrome 95. В нём:
- V8 9.5
- URLPattern
- Eye Dropper API для создания кастомных color picker
- self.reportError()
- убрана поддержка FTP
- легаси U2F API помечен как deprecated (вместо него стоит использовать WebAuthn)

Список изменений из статьи про релиз Chrome 95 Beta
Видео: новое в Chrome 95
Новое в DevTools Chrome 95 (плюс видео)
Как победить CORS

Статья Jake Archibald о том, как правильно работать с CORS. Также прилагается интерактивный playground.