Статья о том, как команда V8 ускоряла API интернеционализации идобавляла новые фичи.
https://v8.dev/blog/intl
https://v8.dev/blog/intl
На этой неделе случился релиз Svelte 3: Rethinking reactivity. Что интересно, достаточно стандартное API для реактивности заменили на... его отсустсвие. Это возможно благодаря тому, что Svelte по сути компилятор и теперь он инструментирует код так, что реактивность работает без дополнительного API. Подробности в видео от Rich Harris с деталями и сравнением с React.
У Svelte так же обновился сайт и слоган: вместо "The magical disappearing UI framework" теперь "Cybernetically enhanced web apps"
У Svelte так же обновился сайт и слоган: вместо "The magical disappearing UI framework" теперь "Cybernetically enhanced web apps"
svelte.dev
Svelte 3: Rethinking reactivity
It’s finally here
Далеко не все знают, что такое "инструментирование кода" поэтому рекомендую к просмотру доклад Matt Zeunert - Dynamic Analysis with Babel, о том как сделать нечто подобное, что сделали в Svelte с помощью Babel. Кстати, Matt автор FromJS – экспериментального инструмента показывающий как было получено любое значение в DOM.
YouTube
Matt Zeunert - Dynamic Analysis with Babel
OUR SOCIAL MEDIA:
telegram channel: https://goo.gl/MG5TYY
telegram group: https://goo.gl/H6ZkHh.
vk: https://goo.gl/gB62iZ
facebook: https://goo.gl/3bTtm4
twitter: https://goo.gl/o6dy8k
telegram channel: https://goo.gl/MG5TYY
telegram group: https://goo.gl/H6ZkHh.
vk: https://goo.gl/gB62iZ
facebook: https://goo.gl/3bTtm4
twitter: https://goo.gl/o6dy8k
Еще один доклад Инструментируй это, как инструментирование кода помогает решать разные задачи
YouTube
Роман Дворнов, Avito | Инструментируй это | FrontTalks 2015
Все уже привыкли к автоматизации: сборщиками и другими консольными инструментами никого не удивишь. А вот автоматизации самого процесса разработки того, с чем мы имеем дело в браузере, уделяется меньше внимания. Хотя тут многое можно улучшить. Если взглянуть…
В Google прорабатывают решение Trusted Types (вводная статья, explainer, спецификация) – API позволяющее предотвращать XSS инъекции в DOM (например, через присвоение значений Element#innerHTML или Location#href), путем маркировки значений как доверенные для определенных контекстов. Звучит мудренно, но на самом деле не так сложно: включается через CSP заголовок, после чего присваивать значение в DOM API yязвимые к XSS можно, только если это значение пропущено через специальный интерфейс (политику). Имплементация в статусе Origin Trial, доступна в Chrome за флагами с начала этого года.
web.dev
Prevent DOM-based cross-site scripting vulnerabilities with Trusted Types | Articles | web.dev
Introducing Trusted Types: a browser API to prevent DOM-based cross-site scripting in modern web applications.
Dev channel браузера Edge обновился до версии 75
https://techcommunity.microsoft.com/t5/Discussions/Dev-channel-update-to-75-0-139-1-is-live/m-p/486346
https://techcommunity.microsoft.com/t5/Discussions/Dev-channel-update-to-75-0-139-1-is-live/m-p/486346
TECHCOMMUNITY.MICROSOFT.COM
Dev channel update to 75.0.139.1 is live
Today we released build 75.0.139.1 to the Dev channel. Updates will happen automatically, but if you want to update immediately just go to the Settings and more menu, and choose Help and feedback > About Microsoft Edge. This will start an update check automatically.…
Выпуск подкаста TalkScript о приватных полях класса с участием #TC39 делегатов Daniel Ehrenberg и Rob Palmer.
https://www.sitepen.com/blog/episode-32-is-the-new-_-private-fields-in-js-with-rob-palmer-and-daniel-ehrenberg/
https://www.sitepen.com/blog/episode-32-is-the-new-_-private-fields-in-js-with-rob-palmer-and-daniel-ehrenberg/
TalkScript.FM
Episode 32: # is the New _: Private Fields in JS with Rob Palmer and Daniel Ehrenberg | TalkScript.FM
We learn about the history of class fields, why many potential approaches to private fields fail to offer strong encapsulation, and why the # symbol was used as a prefix for private fields.
Инженеры Facebook собираются заимплементить в Chromium WICG пропозал спецификации JavaScript Self-Profiling API Proposal для измерения времени исполнения JavaScript в браузерах пользователей.
Опубликована вторая версия WICG предложения Picture in Picture, которая позволит не ограничиваться HTMLVideoElement, а использовать любой произвольный контент. Это нужно в первую очередь для кастомизации UI и UX видео элемента, но кажется позволит делать и более интересные штуки. Команда Chromium выразила желание заимплементить это предложение.
GitHub
picture-in-picture/v2_explainer.md at v2 · w3c/picture-in-picture
Picture-in-Picture (PiP) . Contribute to w3c/picture-in-picture development by creating an account on GitHub.
https://twitter.com/mathias/status/1122839902452948993
Внезапно. CSS не имеет однострочных комментариев по спецификации, однако все браузеры всё равно поддерживают “
Внезапно. CSS не имеет однострочных комментариев по спецификации, однако все браузеры всё равно поддерживают “
//“ (на самом деле нет, смотрите комментарий @rdvornov)Twitter
Mathias Bynens
@jaffathecake @sindresorhus @tabatkins While single-line comments aren’t officially supported in CSS, they kind of already work in 99% of use cases: https://t.co/9Mbz3WFXR1
Еще одна инициатива WICG и команды Chromium — Periodic Background Sync. Это дополнение к другому WICG предложению Background Sync (поддерживается в Chrome начиная с версии 49), которое добавляет возможность многократно повторять синхронизацию через определенный промежуток времени.
GitHub
GitHub - beverloo/periodic-background-sync: Periodic Background Sync Explainer
Periodic Background Sync Explainer. Contribute to beverloo/periodic-background-sync development by creating an account on GitHub.
CSS WG опубликовала Candidate Recommendation спецификаций CSS Easing Functions Level 1 и CSS Containment Module Level 1. Первая определяет кривые для анимаций, вторая добавляет свойство contain, которое указавает, что элемент и его контент независимы от дерева документа настолько, насколько это возможно. Это позволяет браузеру производить необходимые изменения только для части DOM, а не всей страницы.
MDN Web Docs
contain - CSS | MDN
The contain CSS property indicates that an element and its contents are, as much as possible, independent from the rest of the document tree.
Containment enables isolating a subsection of the DOM, providing performance benefits by limiting calculations of…
Containment enables isolating a subsection of the DOM, providing performance benefits by limiting calculations of…
16 мая в Москве пройдет первый #WebAssembly митап, одним из организаторов которого я являюсь.
https://webassembly-moscow.timepad.ru/event/969924/
https://webassembly-moscow.timepad.ru/event/969924/
Предложение Promise.allSettled добавлено в V8 7.6
https://twitter.com/_gsathya/status/1123605995177922560?s=21
https://twitter.com/_gsathya/status/1123605995177922560?s=21
Twitter
Sathya Gunasekaran
📢 I just shipped Promise.allSettled in Chrome 76 🔥 More info: https://t.co/YpaDf223mA
SQLite портировали на Webassembly путем компиляции оригинального C кода с помощью Emscripten. Проект доступен в npm под именем sql.js, начинался как asm.js проект, которому требовались C биндинги, node-gyp компиляция и прочие шаманства – теперь это все не нужно, пакет можно использовать как обычный JS модуль. Работает в node.js, браузерах и WebWorker'ах.
Под капотом обычный SQLite, который хранит базу данных в памяти (не сохраняет изменения куда либо), но умеет импортировать sqlite файлы и экпортировать БД в виде TypedArray.
Под капотом обычный SQLite, который хранит базу данных в памяти (не сохраняет изменения куда либо), но умеет импортировать sqlite файлы и экпортировать БД в виде TypedArray.
npm
npm: sql.js
SQLite library with support for opening and writing databases, prepared statements, and more. This SQLite library is in pure javascript (compiled with emscripten).. Latest version: 1.13.0, last published: a month ago. Start using sql.js in your project by…
Chrome и Firefox заинтересованы в реализации нативных JSON модулей.
https://twitter.com/littledan/status/1125318952308105216
https://twitter.com/littledan/status/1125318952308105216
Twitter
Daniel Ehrenberg
Whoa, Chrome and Firefox are interested in implementing native JSON modules on the web! This feature lets you import a JSON document from a JavaScript module. It comes in as a mutable object in the default export. https://t.co/bSccYP42Rn
Пару недель назад прошла двухдневная встреча W3C Web Platform Working Group, на которой обсудили множество интересных тем (там, например, есть JSON modules, и даже CSS Modules). Нам еще предстоит ознакомиться с результатами обсуджений, но прямо сейчас, как правильно подсветил Luca Colonnello, наибольшее внимание привлекают два предложения: декларативный Shadow DOM и декларативные Custom Elements. Эти два предложения нацелены решить проблемы Web Components связанные с серверным рендерингом (речь про SEO, performance etc)
GitHub
Spring 2019 F2F Agenda · Issue #802 · w3c/webcomponents
We're planning to have a F2F in Toronto on April 25th and April 26th. Let's list the possible topics of discussion with the estimated time needed. Here's the current list: A...
Я тут в путешествиях пропустил новости с #msbuild, поэтому сворую у Веб-стандартов.
https://t.me/webstandards_ru/4925
А ещё Вадим поехал на Google I/O, поэтому подписываемся на канал и ждём от него новостей!
https://t.me/webstandards_ru/4925
А ещё Вадим поехал на Google I/O, поэтому подписываемся на канал и ждём от него новостей!
Telegram
Веб-стандарты
Новинки Microsoft с конференции Build 2019: React Native для Windows https://github.com/microsoft/react-native-windows и Edge на Chromium с режимом IE для совместимости https://blogs.windows.com/msedgedev/2019/05/06/edge-chromium-build-2019-pwa-ie-mode-devtools/
https://devblogs.microsoft.com/dotnet/introducing-net-5/
Microsoft анонсировали .NET 5, который выйдет в ноябре 2020 и будет следующим релизом после .NET Core 3.0. В нём помимо прочего добавится поддержка #WebAssembly через Mono AOT компилятор (как это уже реализовано в Blazor, который недавно перешёл в стадию preview).
Microsoft анонсировали .NET 5, который выйдет в ноябре 2020 и будет следующим релизом после .NET Core 3.0. В нём помимо прочего добавится поддержка #WebAssembly через Mono AOT компилятор (как это уже реализовано в Blazor, который недавно перешёл в стадию preview).
Microsoft News
Introducing .NET 5
Today, we’re announcing that the next release after .NET Core 3.0 will be .NET 5. This will be the next big release in the .NET family. There will be just one .NET going forward, and you will be able to use it to target Windows,
Firefox 68 Nightly теперь поддерживает предложение Numeric separators (stage 3).
https://bugzilla.mozilla.org/show_bug.cgi?id=1421400
https://bugzilla.mozilla.org/show_bug.cgi?id=1421400
GitHub
GitHub - tc39/proposal-numeric-separator: A proposal to add numeric literal separators in JavaScript.
A proposal to add numeric literal separators in JavaScript. - GitHub - tc39/proposal-numeric-separator: A proposal to add numeric literal separators in JavaScript.
Googlebot проапгрейдили до последнего Chrome 74 и пообещали регулярно это делать в будущем. Заметим, что апгрейд существенный и по заявлениям Webmaster Central Blog это более 1000 новых фич, в том числе ES6+ и Web Components v1
https://webmasters.googleblog.com/2019/05/the-new-evergreen-googlebot.html
https://webmasters.googleblog.com/2019/05/the-new-evergreen-googlebot.html
Official Google Webmaster Central Blog
The new evergreen Googlebot
Googlebot is now using an evergreen Chromium rendering engine to render websites - improving Google Search's JavaScript compatibility even more