Вебня
4.66K subscribers
89 photos
2 videos
3 files
2.08K links
JS VMs, спецификации, пропозалы, встречи #TC39, #WebAssembly, #W3C, браузеры, нёрдство.
Download Telegram
Уже сегодня в 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/
Основные результаты третьего дня июльской встречи #TC39.
- Optional Chaining переходит на stage 3 (слайды)
- Dynamic Import Host Adjustment переходит на stage 1 (слайды)
- Dynamic Code Brand Checks остается на stage 1 (у комитета сомнения насчет абстрактной операции IsCodeLike) (слайды)
- новое предложение Map.prototype.updateOrInsert переходит на stage 1 (слайды)
- новое предложение Infix bang было воспринято с большим сомнением, как я и предсказывал, и пока что никуда не переходит
- Explicit Resource Management, который не успели обсудить в первый день, после продолжения обсуждений переходит на stage 2
⚡️⚡️⚡️

Июльская встреча #TC39 в Microsoft закончена. Результаты можно посмотреть в записях выше по дням (первый, второй, третий). Самое главное — Promise.allSettled переходит на stage 4 и попадает в ES2020, а предложения Nullish Coalescing и Optional Chaining переходят на stage 3, а значит скоро их можно ждать в движках и TypeScript (плагины для Babel уже есть). Следующуя встреча пройдет в Нью-Йорке с 1 по 3 октября. Принимающей компанией станет Bloomberg.
На Hexlet вышла статья “Стоит ли учить JavaScript: перспективы, ситуация на рынке труда, мнения экспертов”, в которой есть мнения ведущих этого канала, а также GraphQL гуру Павла Черторогова, опытнейшего дизайнера и разработчика в одном лице — Андрея Оконечникова и архитектора из Tinkoff Александра Казаченко.
Предложение Frozen Realms (stage 1), которое не обновлялось с марта 2018, было переименовано в Secure ECMAScript (SES)
Стандарт для арифметики с плавающей точкой IEEE 754-2008, используемый в JavaScript, C++ и многих других языках, истек. Ему на смену пришел IEEE 754-2019. Основные изменения можно найти здесь: https://754r.ucbtest.org/background/
JavaScript движок XS для интернета вещей недавно обновился до версии 9.0.0 и получил поддержку таких фич как:
- Class Fields
- Private Methods
- Static Class Features
- Numeric separators
- Dynamic Import
- Import Metadata
- globalThis
- String.prototype.matchAll
- Promise.allSettled
- Hashbang Grammar
Также в XS появилась экспериментальная поддержка SES (stage 1) для возможности дать ранний фидбек по пропозалу.
Рабочая группа CSS обновила Candidate Recommendations спецификаций CSS Writing Modes Level 3 и CSS Writing Modes Level 4. Эти документы описывают CSS поддержку для различных интернациональных режимов написания, включая LTR, RTL, вертикальное написание.
Вышел Chrome 76, в котором добавилось очень много всего, например, v8 7.6, в котором добавили:
- улучшения JSON.parse
- значительные улучшения frozen/sealed массивов
- улучшения обработки unicode строк
- Promise.allSettled, который попал в ES2020
- улучшенную поддержку BigInt, который вот-вот также попадеь в ES2020
- улучшения Intl.DateTimeFormat
Также вышел Electron 6.0.0, который содержит в себе Chrome 76.0.3809.88, Node.js 12.4.0. Подробнее в блоге Electron. Поддержка Electron 3.x.x с этого момента прекращается.
Из других улучшений Chrome 76:
- добавлен медиа запрос prefers-color-scheme
- прогрессивные веб приложения (PWA) теперь можно устанавливать прямо из адресной строки omnibox
- blob’ы теперь можно удобнее считывать новыми методами text(), arrayBuffer() и stream()
- асинхронный буфер обмена теперь поддерживает изображения

Улучшения DevTools:
- автодополнение CSS по значениям свойств
- улучшения вкладки Networking
- импорт / экспорт HAR, а также он теперь содержит сообщения WebSockets
- текущие показатели использования памяти на вкладке Memory
- порт зарегистрированного ServiceWorker на вкладке Application
- поддержка Background Fetch и Background Sync на вкладке Application
- Puppeteer для Firefox

https://developers.google.com/web/updates/2019/07/nic76
https://developers.google.com/web/updates/2019/05/devtools

Список изменений на chromestatus: https://www.chromestatus.com/features#milestone%3D76
Сегодня этому каналу исполнился ровно 1 год! Если Вам нравится то, о чем мы пишем, то рассказывайте о нас коллегам и друзьям — это будет лучшим подарком. Спасибо за то, что читаете нас!
Текст спецификации для предложения Promise.any (stage 2), над которым я работаю, практически готов. Осталось дописать недостающие часть спеки для AggregateError, и можно готовиться к stage 3.
Доклад Luke Wagner о #WebAssembly пропозале WebIDL bindings (phase 1), который позволит оптимизировать вызовы из WebAssembly в существующие Web API, а также любые другие окружения, которые используют WebIDL.