Предложение Built-in Modules будет вновь пытаться пройти на stage 2 на июльской встрече #TC39.
Слайды: https://github.com/tc39/proposal-javanoscript-standard-library/blob/master/slides/JSL-TC39-July-2019.pdf
Слайды: https://github.com/tc39/proposal-javanoscript-standard-library/blob/master/slides/JSL-TC39-July-2019.pdf
GitHub
GitHub - tc39/proposal-built-in-modules
Contribute to tc39/proposal-built-in-modules development by creating an account on GitHub.
Два предложения от Ron Buckton из команды TypeScript RegExp Match Offsets и Explicit Resource Management будут пытаться перейти на stage 2 и stage 1 соответственно
GitHub
GitHub - tc39/proposal-regexp-match-indices: ECMAScript RegExp Match Indices
ECMAScript RegExp Match Indices. Contribute to tc39/proposal-regexp-match-indices development by creating an account on GitHub.
Новое предложение Infix Bang попытается перейти на stage 1. Но что-то есть большие сомнения.
GitHub
GitHub - tc39/proposal-wavy-dot: TC39 Wavy Dot ("~.") Proposal
TC39 Wavy Dot ("~.") Proposal. Contribute to tc39/proposal-wavy-dot development by creating an account on GitHub.
Больше предложения, которые собираются продвигаться, в адженду не принимаются, так что основная программа июльской встречи #TC39 сформирована и находится тут.
GitHub
agendas/2019/07.md at main · tc39/agendas
TC39 meeting agendas. Contribute to tc39/agendas development by creating an account on GitHub.
Вебня
На посвященной React Native конференции Chain React, проходящей сейчас в Портланде, был представлен JavaScript движок Hermes. Этот движок разработан в компании Facebook для быстрого старта приложений и экономии памяти на платформе Android, использует только…
А вот и статья о Hermes в блоге Facebook https://code.fb.com/android/hermes/
Engineering at Meta
Hermes: An open source JavaScript engine optimized for mobile apps, starting with React Native
Mobile applications are growing larger and more complex. Larger apps using JavaScript frameworks often experience performance issues as developers add features and complexity. These issues are gene…
Отличная статья – Is postMessage slow?
Принцип работы, бенчмарки, цифры, графики, альтернативные решения, камео WebAssembly+Rust – все как надо: https://dassur.ma/things/is-postmessage-slow/
Принцип работы, бенчмарки, цифры, графики, альтернативные решения, камео WebAssembly+Rust – все как надо: https://dassur.ma/things/is-postmessage-slow/
dassur.ma
Is postMessage slow? — surma.dev
No, not really. (It depends.)
Никита Сковорода о недавно обнаруженной им уязвимости в yarn, в результате которой токен аутентификации отправлялся по незашифрованному HTTP соединению для некоторых scoped пакетов.
https://github.com/ChALkeR/notes/blob/master/Yarn-vuln.md
https://github.com/ChALkeR/notes/blob/master/Yarn-vuln.md
GitHub
notes/Yarn-vuln.md at master · ChALkeR/notes
Some public notes. Contribute to ChALkeR/notes development by creating an account on GitHub.
Опубликовано обновление CSS Syntax Module Level 3 (Candidate Recommendation)
Ключевые изменения:
- Идентификаторы могут начинаться с двойного тире (влияние custom properties, но подобное именование может добавиться и в прелюдиях директив, например, в @property)
- Убрали <unicode-range-token>, вместо него добавлен <urange> микросинтаксис (из-за проблем в раборе селекторов с комбинатором
- Добавили определение производных типов <declaration-value> и <any-value>, которые можно встретить в других спеках
- @charset теперь официально не правило, хотя выглядит похоже (это деректива, которая не представлена в CSSOM отдельным объектом, как другие)
И множество других правок и дополнений.
Так совпало, что в недавнем обновлении парсера css-tree, большая часть изменений уже поддержана (тогда изменения были в черновике) – на специальном стенде можно посмотреть как разбиваются значения на токены и матчатся на синтаксисы
Ключевые изменения:
- Идентификаторы могут начинаться с двойного тире (влияние custom properties, но подобное именование может добавиться и в прелюдиях директив, например, в @property)
- Убрали <unicode-range-token>, вместо него добавлен <urange> микросинтаксис (из-за проблем в раборе селекторов с комбинатором
+, реальный баг в Firefox)- Добавили определение производных типов <declaration-value> и <any-value>, которые можно встретить в других спеках
- @charset теперь официально не правило, хотя выглядит похоже (это деректива, которая не представлена в CSSOM отдельным объектом, как другие)
И множество других правок и дополнений.
Так совпало, что в недавнем обновлении парсера css-tree, большая часть изменений уже поддержана (тогда изменения были в черновике) – на специальном стенде можно посмотреть как разбиваются значения на токены и матчатся на синтаксисы
GitHub
[css-properties-values-api] Add @property. by andruud · Pull Request #847 · w3c/css-houdini-drafts
This adds basic support for @property, without solving any of the potentially complicated issues, like #845 and #846.
Resolves #137, at least partially.
Resolves #137, at least partially.
Статья: Font-size: An Unexpectedly Complex CSS Property
Про то как работает CSS свойтво
Про то как работает CSS свойтво
font-size с точки зрения спецификаций и сложности его имплементации в stylo (подпроект Servo, подсистемы Firefox). Хоть статье уже два года, она не теряет своей актуальности – полезно для понимания насколько CSS непростой с точки зрения браузера.manishearth.github.io
font-size: An unexpectedly complex CSS property
font-size is the worst. It’s a CSS property probably everyone who writes CSS has used at some point. It’s pretty ubiquitous. And it’s super complicated. “But it’s just a number”, you say. “How can …
Unicode Technical Committee (UTC) рассматривает механизм добавления цветов для emoji, что может позволить добавить, например, белое вино или чёрную кошку.
http://blog.unicode.org/2019/07/unicode-technical-committee-considers.html
http://blog.unicode.org/2019/07/unicode-technical-committee-considers.html
blog.unicode.org
Unicode Technical Committee Considers Emoji Color Mechanism
The Unicode Technical Committee (UTC) is discussing a mechanism for color changes to existing emoji characters. Such a mechanism could be u...
Alon Zakai, создатель Emnoscripten и Binaryen о том, как сделать #WebAssembly код асинхронным в userspace с помощью новой фичи в Binaryen — Asyncify.
https://kripken.github.io/blog/wasm/2019/07/16/asyncify.html
https://kripken.github.io/blog/wasm/2019/07/16/asyncify.html
kripken.github.io
Pause and Resume WebAssembly with Binaryen's Asyncify
Pausing and resuming code can be useful for various things, like implementing coroutines, async/await, limiting how much CPU time untrusted code gets, and so...
Skia (опенсурсная библиотека для 2D графики, основа графического движка используемого в Google Chrome, Firefox, Android и др) портирована на WebAssembly. Порт получил название CanvasKit. Основное применение — использовать в вебе, в том числе для апробации новых Canvas и SVG API, что должно помочь ускорить развитие этих технологий.
Все 3 спецификации #WebAssembly 18 июля перешли на стадию Candidate Recommendation:
- WebAssembly Core Specification
- WebAssembly JavaScript Interface
- WebAssembly Web API
- WebAssembly Core Specification
- WebAssembly JavaScript Interface
- WebAssembly Web API
Специалист по компьютерной безопасности Patrick Ventuzelo описывает реверс инжиниринг #WebAssembly модуля в сервисе заметок Google Keep.
https://webassembly-security.com/google-keep-webassembly-module-analysis/
https://webassembly-security.com/google-keep-webassembly-module-analysis/
FuzzingLabs
Analysis Of Google Keep WebAssembly Module | FuzzingLabs
Blogpost about Google Keep wasm module analysis and WebAssembly reversing techniques | Fuzzing Labs
Уже сегодня в 17:00 UTC / 10:00 PDT (в 20:00 по Москве / Киеву / Минску) начнется 71 заседание #TC39, которое пройдет в Редмонде, где эту встречу примет компания Microsoft. Встреча будет проходить с 23 по 25 июля. Повестку дня можно найти как всегда на GitHub https://github.com/tc39/agendas/blob/master/2019/07.md.
GitHub
agendas/2019/07.md at main · tc39/agendas
TC39 meeting agendas. Contribute to tc39/agendas development by creating an account on GitHub.
Changing a way we’re viewing JSON in a browser
Статья про JsonDiscovery – полезное расширение (плагин) для Chrome и Firefox для просмотра (и не только) JSON. Расширение пилит Денис Колесников. В статье рассказно о фичах, с картинками и короткими видео, которые могут вам зайти и оказаться полезными
Статья про JsonDiscovery – полезное расширение (плагин) для Chrome и Firefox для просмотра (и не только) JSON. Расширение пилит Денис Колесников. В статье рассказно о фичах, с картинками и короткими видео, которые могут вам зайти и оказаться полезными
Medium
JsonDiscovery: Changing a way we’re viewing JSON in a browser
A short overview of JsonDiscovery, a browser’s extension for viewing JSON. It has several cool features you will love, just take a look…
1 августа мы делаем уже второй WebAssembly Moscow meetup, на котором выступят Илья Черторыльский из Райффайзен банк, Николай Вольф из Parity, а также Dan Gohman из Mozilla (доклад будет читаться на английском языке в режиме телеконференции). Dan является автором WASI и председателем соответствующей подгруппы в #WebAssembly CG.
Все подробности по ссылке:
https://webassembly-moscow.timepad.ru/event/1025337/
Если у Вас есть что рассказать на следующих митапах, то пишите мне в личку @chicoxyzzy или ищите в @webassembly_ru
Все подробности по ссылке:
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 с предложением не имплементировать
- ECMA402 предложение Intl.DisplayNames было убрано чемпионом из повестки дня в связи с обнаруженными проблемами и остается на stage 2
- у
- так и не представленное комитету предложение Annex B — HTML Attribute Event Handlers было решено сделать неактивным
- 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 не нашло консенсуса (по поведению
- 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 (слайды)
- 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/
- 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/