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

https://developer.apple.com/documentation/safari-release-notes/safari-15-beta-release-notes

В новой версии:
- поддержка OTP
- поддержка Webauthn Passkey
- улучшенная поддержка aspect-ratio
- поддержка цветовых функций lab(), lch(), hwb() и пространств цветов в color()
- новый дизайн форм
- мета-тэг theme-color
- top-level await (ES2022)
- поддержка ES модулей в воркерах и сервис воркере
- Error.cause (stage 3)
- приватные методы классов и аксессоры (ES2022)
- поддержка TypedArray с элементами BigInt типов
- аппаратное ускорение VP9 и WebM
- Opus кодек для аудио в WebM контейнерах
- автоматический апгрейд соединения до HTTPS
- автоматическое скрытие IP от трекеров
- разные улучшения Private Click Measurement
- потоковая компиляция #WebAssembly
- #WebAssembly Bulk Memory Operations
- #WebAssembly Reference Types
- #WebAssembly Non-trapping float-to-int Conversations
- WebGL 2 включен по умолчанию
- Web Share API level 2
- поддержка Web Extensions на iOS и iPadOS
- отладка CSS Grid в Web Inspector
Введение в #WebAssembly для JavaScript разработчиков

https://pascalpares.appspot.ovh/webassembly-for-javascript-developers/
Использование #WebAssembly потоков из C, C++ и Rust

Ингвар Степанян из Google о том, что представляет собой реализация потоков в WebAssembly и как их использовать.

https://web.dev/webassembly-threads/
⚡️ #WebAssembly пропозал SIMD переходит на phase 5 (фича прошла процесс стандартизации и будет добавлена в спецификацию)
Результаты встречи #WebAssembly Community Group (20 июля 2021)

- пропозал Constant-Time wasm переходит на phase 1
- пропозал Instrument Tracing переходит на phase 2
- пропозал Exception Handling Переходит на phase 3
Новое в SpiderMonkey в выпусках Firefox 90 и 91

Команда SpiderMonkey выложила довольно подробный отчёт о проделанной работе, который включает новые фичи JS и #WebAssembly, API интернационализации, а также детали работы над компиляторами внутри движка.

https://spidermonkey.dev/blog/2021/07/19/newsletter-firefox-90-91.html
Обновил официальный список #WebAssembly пропозалов с учётом последних изменений со встреч WG и CG.
Вышел 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)
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/
Safari Technology Preview 131 (1 сентября)

Релиз включает улучшения Web Inspector, минорные исправления и улучшения CSS, начальную поддержку для COEP/COOP (добавление которых должно помочь в будущем включить поддержку SharedArrayBuffer и потоков в #WebAssembly!), исправления различных Web API, ускорение и улучшения обработки строки и регулярок, улучшения WebRTC, исправления медиа.

https://webkit.org/blog/11962/release-notes-for-safari-technology-preview-131/
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)!
V8 v9.6

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

https://web.dev/ps-on-the-web/

Adobe анонсировали публичную бету веб-версии Photoshop. Основная часть кода портирована с помощью Emscripten (компилятора C++ в #WebAssembly). Приложение использует мультитрединг wasm (уже работает в браузерах на основе Chromium и Firefox, а также включен в Safari TP, и ожидается в следующем обновлении Safari). Интерфейс написан на веб компонентах и библиотеке Lit с использованием UI библиотеки Spectrum в версии для веб компонентов.
⚡️ WebAssembly CSP пропозал на вчерашней встрече #WebAssembly CG перешёл с phase 1 сразу на phase 3
👀 В WebKit реализованы stage 3 ECMAScript пропозал Shadow Realms (https://bugs.webkit.org/show_bug.cgi?id=230602) и phase 3 #WebAssembly пропозал Exception handling (https://bugs.webkit.org/show_bug.cgi?id=229681). Ждём в ближайших сборках Safari TP.
Вышел Safari Technology Preview 134

https://webkit.org/blog/12033/release-notes-for-safari-technology-preview-134/

В нём:
- улучшения Web Inspector
- много улучшений и исправлений CSS и CSS Font Loading API
- минорные исправления скроллинга
- улучшения обработки цветовых пространств при рендеринге
- элемент <dialog> с поддержкой ::backdrop
- #WebAssembly Exception handling
- 4GB для wasm memory
- улучшения JIT, исправления и улучшения Intl, JSON.parse, JSON.stringify и регулярок
- добавилось и улучшилось много различных Web API
- исправления WebGL и Media
- WebRTC media capabilities
- улучшения доступности
⚡️ #WebAssembly пропозал Branch Hinting отправляется на phase 3
⚡️ #WebAssembly пропозал Relaxed SIMD отправляется на phase 2
Вышел Chrome 96

https://developer.chrome.com/blog/new-in-chrome-96/

В нём:
- HTTPS по умолчанию при его наличии
- URL protocol handlers для PWA
- PaymentRequest API для режима basic-card помечен как deprecated (будет убран в Chrome 100, релиз которого запланирован на 29 марта 2022)
- тестирование трёхзначных версий браузера в user agent (для подготовки к версиям 100+)
- CSS псевдокласс :autofill
- #WebAssembly CSP (phase 3)
- #WebAssembly Reference Types (уже в спецификации и доступны в стабильных версиях Safari 15+ и Firefox 79+)

Новые origin trial фичи:
- Conditional focus
- Priority Hints

Видеообзор: https://www.youtube.com/watch?v=PPukHsOH_BI
Исправления уязвимостей: https://chromereleases.googleblog.com/2021/11/stable-channel-update-for-desktop.html
Новое в DevTools: https://developer.chrome.com/blog/new-in-devtools-96/
Описание новых фич для beta версии: https://blog.chromium.org/2021/10/chrome-96-beta-conditional-focus.html
Пропозал WebAssembly Garbage Collection перешёл на phase 2

Один из самых важных пропозалов для #WebAssembly продвинулся на phase 2 (Spec text available). Есть ещё некоторые открытые вопросы, но это очень важное событие. GC позволит эффективно использовать языки со сборкой мусора для исходного кода, и при их использовании можно будет избавиться от большой части рантайма, который пока что приходится также компилировать в wasm.
🔥34👍2