В Microsoft обнаружили широкое распространение зловредного ПО Adrozek
Это malware, поражающая браузеры Edge, Chrome, Яндекс, Firefox на операционных системах Windows. Adrozek подменяет отдельные DLL чтобы вставлять рекламу в результаты поиска, а также отключает обновления, различные настройки безопасности, а вслучае с Firefox также крадёт данные учётной записи. Устанавливается малварь методом социальной инженерии — через просьбы установить испольняемый файл на компьютер жертвы.
https://www.microsoft.com/security/blog/2020/12/10/widespread-malware-campaign-seeks-to-silently-inject-ads-into-search-results-affects-multiple-browsers/
Это malware, поражающая браузеры Edge, Chrome, Яндекс, Firefox на операционных системах Windows. Adrozek подменяет отдельные DLL чтобы вставлять рекламу в результаты поиска, а также отключает обновления, различные настройки безопасности, а вслучае с Firefox также крадёт данные учётной записи. Устанавливается малварь методом социальной инженерии — через просьбы установить испольняемый файл на компьютер жертвы.
https://www.microsoft.com/security/blog/2020/12/10/widespread-malware-campaign-seeks-to-silently-inject-ads-into-search-results-affects-multiple-browsers/
Microsoft News
Widespread malware campaign seeks to silently inject ads into search results, affects multiple browsers
A persistent malware campaign has been actively distributing Adrozek, an evolved browser modifier malware at scale since at least May 2020. At its peak in August, the threat was observed on over 30,000 devices every day. The malware is designed to inject…
Вышел Deno 1.6
Главные изменения:
- теперь можно распространять приложение в виде бинарника (с некоторыми ограничениями)
- Language Server Protocol
- экспериментальная поддержка Apple Silicon
- TypeScript 4.1
https://deno.land/posts/v1.6
Главные изменения:
- теперь можно распространять приложение в виде бинарника (с некоторыми ограничениями)
- Language Server Protocol
- экспериментальная поддержка Apple Silicon
- TypeScript 4.1
https://deno.land/posts/v1.6
Deno Blog
Deno 1.6 Release Notes
Deno 1.6 adds the ability to build your Deno projects into fully standalone, self-contained executables with `deno compile`. The release also introduces a built-in LSP for editor integrations, and experimental Apple Silicon support.
NativeScript присоединяется к OpenJS Foundation
https://openjsf.org/blog/2020/12/07/nativescript-joins-openjs-foundation-as-incubating-project/
https://openjsf.org/blog/2020/12/07/nativescript-joins-openjs-foundation-as-incubating-project/
OpenJS Foundation
NativeScript joins OpenJS Foundation as Incubating Project - OpenJS Foundation
NativeScipt is now an incubation project at the OpenJS Foundation. NativeScript empowers you to access native platform APIs from JavaScript directly.
Спецификация The Screen Fold API опубликована в статусе First Publick Working Draft
Этот API позволяет веб-приложениям запрашивать угловое значение, до которого устройство может складываться, и, если это доступно, текущий угол. Кроме того, продоставляются соответствующие media queries.
https://www.w3.org/TR/2020/WD-screen-fold-20201217/#screen-fold-media-queries
Этот API позволяет веб-приложениям запрашивать угловое значение, до которого устройство может складываться, и, если это доступно, текущий угол. Кроме того, продоставляются соответствующие media queries.
https://www.w3.org/TR/2020/WD-screen-fold-20201217/#screen-fold-media-queries
www.w3.org
The Screen Fold API
This document specifies an API that allows web applications to request the
angular value to which a device with a screen hinge is folded. Under the
right conditions, and if allowed, the value representing the angle in
degrees is returned.
angular value to which a device with a screen hinge is folded. Under the
right conditions, and if allowed, the value representing the angle in
degrees is returned.
DevRel’ы Samsung Internet о результатах года в развитии браузера (прямая трансляция)
https://www.youtube.com/watch?v=6db3pyB9Yfg
https://www.youtube.com/watch?v=6db3pyB9Yfg
YouTube
Year In Review and What's Next!
Phew! It's been that kind of year. Come join us on Thursday 17 December for an informal live stream chit-chat with the Samsung Internet Developer Advocacy team: Ada Rose Cannon, Laura Morinigo, Lola Odelola, Kevin Picchi, and Dan Appelquist. We'll be talking…
Много статей с web.dev (по мотивам Chrome Dev Summit и не только)
- Обзор воркеров (Web Worker, Service Worker)
- Про обновление Workbox
- Squoosh v2 (новые кодеки, дизайн и CLI)
- Лучшие практики для формы адресов и платежей
- Лучшие практики для форм регистрации и логина
- Кроссбраузерные Paint Worklet’ы
- Использование современного JavaScript для веб-приложений
- Гайд по кэшированию
- Автоматизированный аудит сайтов с помощью AutoWebPerf
- Как спозиционировать элемент по центру блока в CSS
- Обзор воркеров (Web Worker, Service Worker)
- Про обновление Workbox
- Squoosh v2 (новые кодеки, дизайн и CLI)
- Лучшие практики для формы адресов и платежей
- Лучшие практики для форм регистрации и логина
- Кроссбраузерные Paint Worklet’ы
- Использование современного JavaScript для веб-приложений
- Гайд по кэшированию
- Автоматизированный аудит сайтов с помощью AutoWebPerf
- Как спозиционировать элемент по центру блока в CSS
#WebAssembly пропозал bulk memory operations реализован в JavaScriptCore, движке, используемом в Safari.
https://bugs.webkit.org/show_bug.cgi?id=200938
https://bugs.webkit.org/show_bug.cgi?id=200938
GitHub
bulk-memory-operations/proposals/bulk-memory-operations/Overview.md at master · WebAssembly/bulk-memory-operations
Bulk memory operations. Contribute to WebAssembly/bulk-memory-operations development by creating an account on GitHub.
⚡️ Mozilla не имеет планов на развитие поддержки PWA в Firefox
https://twitter.com/domenic/status/1341816308380405761
https://twitter.com/domenic/status/1341816308380405761
Twitter
Domenic Denicola
Firefox looking to remove their "site-specific browser" prototype, i.e. PWA support: https://t.co/lSP43OtYb6
Результаты 79 встречи TC39 (16 - 19 ноября)
Лучше поздно, чем никогда. Общие результаты ноябрьской встречи. Стенограммы на английском опубликованы тут.
🐥 Error Cause переходит на stage 2 (слайды)
🐣 новое предложение JS Module Blocks переходит на stage 1 (слайды)
🐣 новое предложение Extensions переходит на stage 1 (слайды)
🐣 новое предложение Grouped Accessors and Auto-Accessors переходит на stage 1 (слайды)
Не продвинулись на следующий stage по результатам встречи:
- Realms остаётся на stage 2 (слайды)
- Standardized Debug остаётся на stage 1
- JSON modules остаётся на stage 2 (слайды)
Обновления по пропозалам:
- Обратная связь от разработчиков движка JavaScriptCore о пропозале RegExp Matches Indices — stage 3 обновление (слайды)
.item() rename + revisit inclusion on String — stage 3 обновление (слайды)
(слайды)
- Import Assertions — stage 3 обновление (слайды)
(слайды)
- Temporal — stage 2 обновление (слайды)
- Intl Enumiration — stage 2 обновление (слайды)
- Vision for concurrent JS + constellations of proposals — презентация stage 0 пропозала (без запроса на продвижение) (слайды)
- Adopting Unicode behavior for set notation in regular expressions — презентация stage 0 пропозала (для продвижения было добавлено слишком поздно) (слайды)
Принятые нормативные изменения:
- Handling of NaN and side effects in Date.prototype.set* methods
- proto normative optional options
- IntegerIndexedElementSet should always indicate success
- Give %TypedArray% methods explicit algorithms
- Default constructors and spread operation
Другие доклады и обсуждения:
- Представлен календарь встреч на 2021 год (слайды)
- Отчёт редакторов ECMA262
- Отчёт редакторов ECMA402
- Изменения в составе группы председателей (слайды)
- Supporting MDN's documentation about in TC39's output
(слайды)
- Обновления процесса (слайды)
- Dealing with TC39 Data (слайды)
- Batch preloading (слайды)
Более подробные отчёты от меня по дням:
- 16 ноября
- 17 ноября
- 18 ноября
- 19 ноября
Лучше поздно, чем никогда. Общие результаты ноябрьской встречи. Стенограммы на английском опубликованы тут.
🐥 Error Cause переходит на stage 2 (слайды)
🐣 новое предложение JS Module Blocks переходит на stage 1 (слайды)
🐣 новое предложение Extensions переходит на stage 1 (слайды)
🐣 новое предложение Grouped Accessors and Auto-Accessors переходит на stage 1 (слайды)
Не продвинулись на следующий stage по результатам встречи:
- Realms остаётся на stage 2 (слайды)
- Standardized Debug остаётся на stage 1
- JSON modules остаётся на stage 2 (слайды)
Обновления по пропозалам:
- Обратная связь от разработчиков движка JavaScriptCore о пропозале RegExp Matches Indices — stage 3 обновление (слайды)
.item() rename + revisit inclusion on String — stage 3 обновление (слайды)
(слайды)
- Import Assertions — stage 3 обновление (слайды)
(слайды)
- Temporal — stage 2 обновление (слайды)
- Intl Enumiration — stage 2 обновление (слайды)
- Vision for concurrent JS + constellations of proposals — презентация stage 0 пропозала (без запроса на продвижение) (слайды)
- Adopting Unicode behavior for set notation in regular expressions — презентация stage 0 пропозала (для продвижения было добавлено слишком поздно) (слайды)
Принятые нормативные изменения:
- Handling of NaN and side effects in Date.prototype.set* methods
- proto normative optional options
- IntegerIndexedElementSet should always indicate success
- Give %TypedArray% methods explicit algorithms
- Default constructors and spread operation
Другие доклады и обсуждения:
- Представлен календарь встреч на 2021 год (слайды)
- Отчёт редакторов ECMA262
- Отчёт редакторов ECMA402
- Изменения в составе группы председателей (слайды)
- Supporting MDN's documentation about in TC39's output
(слайды)
- Обновления процесса (слайды)
- Dealing with TC39 Data (слайды)
- Batch preloading (слайды)
Более подробные отчёты от меня по дням:
- 16 ноября
- 17 ноября
- 18 ноября
- 19 ноября
GitHub
notes/meetings/2020-11 at main · tc39/notes
TC39 meeting notes. Contribute to tc39/notes development by creating an account on GitHub.
В Wasmtime реализована поддержка wasi-nn
Есть множество кейсов для использования #WebAssembly для машинного обучения, но при этом надо решить несколько проблем. Wasi-nn создаёт высокоуровневый API для доступа к возможностям хоста по использованию специфических инструкций центрального и графического процессоров. В Wasmtime в качестве бекенда для wasm-nn используется OpenVINO.
В блоге Bytecode Alliance опубликованы две статьи, посвящённые этому:
- Machine Learning in WebAssembly: Using wasi-nn in Wasmtime
- Implementing a WASI Proposal in Wasmtime: wasi-nn
Есть множество кейсов для использования #WebAssembly для машинного обучения, но при этом надо решить несколько проблем. Wasi-nn создаёт высокоуровневый API для доступа к возможностям хоста по использованию специфических инструкций центрального и графического процессоров. В Wasmtime в качестве бекенда для wasm-nn используется OpenVINO.
В блоге Bytecode Alliance опубликованы две статьи, посвящённые этому:
- Machine Learning in WebAssembly: Using wasi-nn in Wasmtime
- Implementing a WASI Proposal in Wasmtime: wasi-nn
GitHub
GitHub - WebAssembly/wasi-nn: Neural Network proposal for WASI
Neural Network proposal for WASI. Contribute to WebAssembly/wasi-nn development by creating an account on GitHub.
Firefox присоединился к инициативе других браузеров по блокировке шпионского государственного сертификата в Казахстане
https://www.opennet.ru/opennews/art.shtml?num=54284
https://www.opennet.ru/opennews/art.shtml?num=54284
www.opennet.ru
В Firefox, Chrome, Edge и Safari заблокирован сертификат, используемый для перехвата трафика в Казахстане
Компания Mozilla объявила о добавлении в списки отозванных сертификатов корневого сертификата, использованного в декабрьских учениях по перехвату HTTPS-трафика в Казахстане. Аналогичные действия предприняли компании Google, Apple и Microsoft, которые также…
Рабочая группа WebGPU планирует дорожную карту проектирования спецификации
Для того, чтобы определить, что будет включено в версию спецификации v1, был опубликован документ, в котором члены рабочей группы отмечают какие из фич они хотели бы видеть в первой или последующих версиях.
Для того, чтобы определить, что будет включено в версию спецификации v1, был опубликован документ, в котором члены рабочей группы отмечают какие из фич они хотели бы видеть в первой или последующих версиях.
Oriol Brufau рассказал о том, как добавлял поддержку псевдо-элемента ::marker в Chromium
Поддержка фичи появилась в Chromium 86. В других браузерах ::marker уже успешно работает. В статье описываются технические особенности реализации фичи в движке Blink.
Поддержка фичи появилась в Chromium 86. В других браузерах ::marker уже успешно работает. В статье описываются технические особенности реализации фичи в движке Blink.
Oriol Brufau’s blog
CSS ::marker pseudo-element in Chromium
The CSS ::marker pseudo-element has shipped in Chromium 86. Implementation details.
Состоялся релиз Ruby 3.0
В языке появилось много значительных улучшений. Ruby 3.0 с использованием JIT в 3 раза быстрее, чем Ruby 2.0. Помимо этого появилась поддержка параллелизма (Ractor — экспериментальная модель акторов на уровне языка, Fiber Scheduler), паттерн-матчинг и статический анализ (RBS — язык описания типов, TypeProf — инструмент для статического анализа) и другие, менее значимые, но интересные изменения.
https://www.ruby-lang.org/en/news/2020/12/25/ruby-3-0-0-released/
В языке появилось много значительных улучшений. Ruby 3.0 с использованием JIT в 3 раза быстрее, чем Ruby 2.0. Помимо этого появилась поддержка параллелизма (Ractor — экспериментальная модель акторов на уровне языка, Fiber Scheduler), паттерн-матчинг и статический анализ (RBS — язык описания типов, TypeProf — инструмент для статического анализа) и другие, менее значимые, но интересные изменения.
https://www.ruby-lang.org/en/news/2020/12/25/ruby-3-0-0-released/
W3C опубликовал CSS Snapshot 2020
В нём собраны воедино все спецификации, которые вместе формируют текущее состояние CSS по состоянию на 2020 год.
https://www.w3.org/TR/2020/NOTE-css-2020-20201222/#css
В нём собраны воедино все спецификации, которые вместе формируют текущее состояние CSS по состоянию на 2020 год.
https://www.w3.org/TR/2020/NOTE-css-2020-20201222/#css
Декабрьские релизы спецификаций от W3C
- Web Authentication: An API for accessing Public Key Credentials Level 2 (Candidate Recommendation)
- CSS Text Module Level 3 (Candidate Recommendation)
- CSS Box Model Module Level 3 (Candidate Recommendation)
- CSS Backgrounds and Borders Module Level 3 (Candidate Recommendation)
- CSS Cascading and Inheritance Level 3 (Proposed Recommendation)
А также совместная работа W3C и WHATWG — HTML Review Draft (Proposed Recommendation)
- Web Authentication: An API for accessing Public Key Credentials Level 2 (Candidate Recommendation)
- CSS Text Module Level 3 (Candidate Recommendation)
- CSS Box Model Module Level 3 (Candidate Recommendation)
- CSS Backgrounds and Borders Module Level 3 (Candidate Recommendation)
- CSS Cascading and Inheritance Level 3 (Proposed Recommendation)
А также совместная работа W3C и WHATWG — HTML Review Draft (Proposed Recommendation)
Сегодня прощаемся с Flash Player
Adobe больше не будет поддерживать Flash Player после 31 декабря 2020 года, а также будет блокировать запуск Flash-содержимого в Flash Player с 12 января 2021 года. Кстати, если вдруг кто-то не знал, то ActionScript 2.0+ был частичной имплементацией так и не выпущенной спецификации ECMAScript 4.
https://www.adobe.com/products/flashplayer/end-of-life.html
Adobe больше не будет поддерживать Flash Player после 31 декабря 2020 года, а также будет блокировать запуск Flash-содержимого в Flash Player с 12 января 2021 года. Кстати, если вдруг кто-то не знал, то ActionScript 2.0+ был частичной имплементацией так и не выпущенной спецификации ECMAScript 4.
https://www.adobe.com/products/flashplayer/end-of-life.html
Adobe
Adobe Flash Player End of Life
Adobe Flash Player End of Life general information
Команда React представила своё исследование серверных компонентов
Скорее всего Вы уже в курсе, но я на всякий случай расскажу об этом. Серверные компоненты — это новый тип компонентов React, которые имеют прямой доступ к данным бекенда и не отправляются в составе бандла на клиент. Они также могут быть sharable (одновременно клиентскими и серверными), позволяют автоматически разделять код на чанки. Обмен данными происходит в специальном компактном формате (представляющем JSX). Для реализации данного подхода был разработан экспериментальный плагин для Webpack. Дальнейшая разработка будет вестись совместно усилиями команд React и Next.js.
Запись в блоге React и видео: https://reactjs.org/blog/2020/12/21/data-fetching-with-react-server-components.html
Статья Addy Osmani из Google о серверных компонентах в React: https://addyosmani.com/blog/react-server-components/
Черновик RFC: https://github.com/josephsavona/rfcs/blob/server-components/text/0000-server-components.md
Скорее всего Вы уже в курсе, но я на всякий случай расскажу об этом. Серверные компоненты — это новый тип компонентов React, которые имеют прямой доступ к данным бекенда и не отправляются в составе бандла на клиент. Они также могут быть sharable (одновременно клиентскими и серверными), позволяют автоматически разделять код на чанки. Обмен данными происходит в специальном компактном формате (представляющем JSX). Для реализации данного подхода был разработан экспериментальный плагин для Webpack. Дальнейшая разработка будет вестись совместно усилиями команд React и Next.js.
Запись в блоге React и видео: https://reactjs.org/blog/2020/12/21/data-fetching-with-react-server-components.html
Статья Addy Osmani из Google о серверных компонентах в React: https://addyosmani.com/blog/react-server-components/
Черновик RFC: https://github.com/josephsavona/rfcs/blob/server-components/text/0000-server-components.md
legacy.reactjs.org
Introducing Zero-Bundle-Size React Server Components – React Blog
This blog site has been archived. Go to react.dev/blog to see the recent posts. 2020 has been a long year. As it comes to an end we wanted to share a special Holiday Update on our research into zero-bundle-size React Server Components. To introduce React…
Выложен полный плейлист со всеми видео недавней онлайн конференции #WebAssembly Live! On Air
https://www.youtube.com/playlist?list=PL6TuxoG36L8lwmNrlIqGBXwlh1ejfk8xJ
https://www.youtube.com/playlist?list=PL6TuxoG36L8lwmNrlIqGBXwlh1ejfk8xJ
YouTube
WebAssembly - YouTube