Отличная статья – 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, что может позволить добавить, например, белое вино или чёрную кошку.
https://blog.unicode.org/2019/07/unicode-technical-committee-considers.html
https://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, создатель Emscripten и 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/
Основные результаты третьего дня июльской встречи #TC39.
- Optional Chaining переходит на stage 3 (слайды)
- Dynamic Import Host Adjustment переходит на stage 1 (слайды)
- Dynamic Code Brand Checks остается на stage 1 (у комитета сомнения насчет абстрактной операции
- новое предложение
- новое предложение Infix bang было воспринято с большим сомнением, как я и предсказывал, и пока что никуда не переходит
- Explicit Resource Management, который не успели обсудить в первый день, после продолжения обсуждений переходит на stage 2
- 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.
Июльская встреча #TC39 в Microsoft закончена. Результаты можно посмотреть в записях выше по дням (первый, второй, третий). Самое главное — Promise.allSettled переходит на stage 4 и попадает в ES2020, а предложения Nullish Coalescing и Optional Chaining переходят на stage 3, а значит скоро их можно ждать в движках и TypeScript (плагины для Babel уже есть). Следующуя встреча пройдет в Нью-Йорке с 1 по 3 октября. Принимающей компанией станет Bloomberg.
На Hexlet вышла статья “Стоит ли учить JavaScript: перспективы, ситуация на рынке труда, мнения экспертов”, в которой есть мнения ведущих этого канала, а также GraphQL гуру Павла Черторогова, опытнейшего дизайнера и разработчика в одном лице — Андрея Оконечникова и архитектора из Tinkoff Александра Казаченко.
ru.hexlet.io
Что такое JavaScript: зачем он нужен, как выучить JS с нуля и найти работу
Рассказываем, что это за язык программирования — JavaScript, где его используют, насколько он популярен и с чего начать изучение JavaScript.
Предложение Frozen Realms (stage 1), которое не обновлялось с марта 2018, было переименовано в Secure ECMAScript (SES)
GitHub
GitHub - tc39/proposal-ses: Draft proposal for SES (Secure EcmaScript)
Draft proposal for SES (Secure EcmaScript). Contribute to tc39/proposal-ses development by creating an account on GitHub.
Вебня
1 августа мы делаем уже второй WebAssembly Moscow meetup, на котором выступят Илья Черторыльский из Райффайзен банк, Николай Вольф из Parity, а также Dan Gohman из Mozilla (доклад будет читаться на английском языке в режиме телеконференции). Dan является автором…
Регистрация на митап закроется завтра утром, поэтому если еще не зарегистрировались и хотите попасть, то сделайте это сегодня.
https://webassembly-moscow.timepad.ru/event/1025337/
https://webassembly-moscow.timepad.ru/event/1025337/
webassembly-moscow.timepad.ru
WebAssembly Moscow meetup #2 / События на TimePad.ru
Второй московский митап, полностью посвящённый технологии WebAssembly. Огромное спасибо Райффайзенбанк и компании Fluence Labs за помощь в проведении. Будет организована трансляция на youtube и выложены записи докладов.