Разработчики Chromium обещают поработать над совместимостью в 2020. Конкретно упомянуты Flexbox, CSS Grid, формы, скроллинг, а также обещают обращать большее внимание на совместимость новых фич. Такие изменения мотивированы результатами опроса веб разработчиков от MDN в 2019 году.
Chromium Blog
Improving Chromium's browser compatibility in 2020
Last year, MDN ran the 2019 Web Developer Needs Assessment (DNA) survey . The DNA survey drew responses from over 28,000 developers from aro...
Yulia Startsev опубликовала на Mozilla Hacks анонс своих стримов о работе над движком SpiderMonkey. Я уже размещал тут ссылки на трансляции, но теперь можно и самостоятельно следить за ними в календаре.
Mozilla Hacks – the Web developer blog
Compiler Compiler: A Twitch series about working on a JavaScript engine
Yulia Startsev, a JavaScript engineer on Firefox's SpiderMonkey team, introduces her new Twitch stream called Compiler Compiler. In the three opening interactive episodes, we get an inside look at how ...
⚡️ В результате совместной работы WHATWG и W3C, черновик спецификации HTML от 29 января 2020 года становится W3C Candidate Recommendation!
Forwarded from OpenNews
111 Chrome-дополнений, загруженных 32 млн раз, уличены в загрузке конфиденциальных данных
Компания Awake Security сообщила о выявлении 111 дополнений к Google Chrome, отправляющих на внешние серверы конфиденциальные сведения о действиях пользователя, в том числе дополнения имели доступ к созданию скриншотов, чтению содержимого буфера обмена, анализу наличия токенов доступа в Cookie и перехвату ввода в web-формах. В сумме выявленные вредоносные дополнения насчитывали 32.9 млн загрузок в Chrome Web Store, а самое популярное (Sеarch Manager), a было загружено 10 млн раз и включает 22 тысячи отзывов (напоминает накрутку ботом).
Компания Awake Security сообщила о выявлении 111 дополнений к Google Chrome, отправляющих на внешние серверы конфиденциальные сведения о действиях пользователя, в том числе дополнения имели доступ к созданию скриншотов, чтению содержимого буфера обмена, анализу наличия токенов доступа в Cookie и перехвату ввода в web-формах. В сумме выявленные вредоносные дополнения насчитывали 32.9 млн загрузок в Chrome Web Store, а самое популярное (Sеarch Manager), a было загружено 10 млн раз и включает 22 тысячи отзывов (напоминает накрутку ботом).
⚡️На прошлой неделе Microsoft разослали обновление KB4567409 для операционных систем Windows 7 (поддержка которой уже полностью прекращена с 14 января) и Windows 8.1, которое заменяет старый Edge новым, основанным на Chromium, у неэнтерпрайз пользователей.
https://support.microsoft.com/en-us/help/4567409/update-for-the-new-microsoft-edge
https://support.microsoft.com/en-us/help/4567409/update-for-the-new-microsoft-edge
Microsoft
Update for the new Microsoft Edge for Windows 7 SP1 and Windows 8.1: June 17, 2020
Describes that the new Microsoft Edge is available for Windows 7 SP1 and Windows 8.1.
В зарелиженой вчера бете Safari 14 на самом деле довольно много нового. Я её уже установил и опробовал. Итак, вот часть того, что упомянуто в релизных записях от Apple (с моими комментариями и дополнениями):
- WebExtensions API на macOS, что позволит портировать расширения с Chromium и Firefox (устанавливаются через App Store)
- переводы страниц на ращные языки (в т.ч. русский)
- поддержка HTTP/3 (экспериментальная, включается из меню Develop или флагом)
- улучшения совместимости WebDriver, XHR+Fetch, Service Workers, CSS и SVG
- поддержки Flash больше нет
- улучшения производительности JavaScript, CSS, доступа к cookie и IndexedDB, инкрементальная загрузка PDF
- Privacy Report, который показывает, что удалось заблокировать благодаря Intelligent Tracking Prevention
- Face ID и Touch ID через WebAuthn
- оповещение об утечке пароля из Keychain
- привязанные к доменам коды безопасности
- поддержка BigInt (ES2020) — на самом деле поддерживается только как скалярные значения, BigInt TypedArrays всё ещё не поддерживаются
- кастомные EventTarget
- logical assignment operators (stage 3)
- public class fields (stage 3) — на самом деле поддерживаются только поля инстансов, но не статические
- поддержка формата изображений WebP
- поддержка HDR видео
- :is(), :where(), image-orientation
- улучшения Web Inspector
Кроме того, в релизных записях это не указано, но добавилась также поддержка Promise.any и AggregateError (stage 3)
- WebExtensions API на macOS, что позволит портировать расширения с Chromium и Firefox (устанавливаются через App Store)
- переводы страниц на ращные языки (в т.ч. русский)
- поддержка HTTP/3 (экспериментальная, включается из меню Develop или флагом)
- улучшения совместимости WebDriver, XHR+Fetch, Service Workers, CSS и SVG
- поддержки Flash больше нет
- улучшения производительности JavaScript, CSS, доступа к cookie и IndexedDB, инкрементальная загрузка PDF
- Privacy Report, который показывает, что удалось заблокировать благодаря Intelligent Tracking Prevention
- Face ID и Touch ID через WebAuthn
- оповещение об утечке пароля из Keychain
- привязанные к доменам коды безопасности
- поддержка BigInt (ES2020) — на самом деле поддерживается только как скалярные значения, BigInt TypedArrays всё ещё не поддерживаются
- кастомные EventTarget
- logical assignment operators (stage 3)
- public class fields (stage 3) — на самом деле поддерживаются только поля инстансов, но не статические
- поддержка формата изображений WebP
- поддержка HDR видео
- :is(), :where(), image-orientation
- улучшения Web Inspector
Кроме того, в релизных записях это не указано, но добавилась также поддержка Promise.any и AggregateError (stage 3)
MDN Web Docs
BigInt - JavaScript | MDN
BigInt values represent integer values which are too high or too low to be represented by the number primitive.
Кстати, с сегодня и по 26 июня ожидается ещё несколько WWDC сессий о Safari 14.
https://developer.apple.com/news/?id=e4u1mtfu
https://developer.apple.com/news/?id=e4u1mtfu
Apple
Safari, Web, and Authentication - Discover - Apple Developer
Что-то я мало постил обновлений по #WebAssembly в последнее время. Исправляюсь.
Garbage Collection
- доклад от Andreas Rossberg из Dfinity From References to GC
- доклад от команды V8
- доклад от команды Kotlin
Обновления пропозалов
- Typed Function References перешёл на phase 2 (26 мая)
- JavaScript BigInt to WebAssembly i64 integration перешёл на phase 4 (9 июня)
Сегодня пройдёт встреча WebAssembly CG, на которой Reference Types и Bulk Memory Operations могут продвинуться на phase 4
Garbage Collection
- доклад от Andreas Rossberg из Dfinity From References to GC
- доклад от команды V8
- доклад от команды Kotlin
Обновления пропозалов
- Typed Function References перешёл на phase 2 (26 мая)
- JavaScript BigInt to WebAssembly i64 integration перешёл на phase 4 (9 июня)
Сегодня пройдёт встреча WebAssembly CG, на которой Reference Types и Bulk Memory Operations могут продвинуться на phase 4
Также совсем забыл написать о том, что Ингвар Степанян из Google составил таблицу фич #WebAssembly, которые находятся в разработке браузерами и другими рантаймами.
https://webassembly.org/roadmap/
https://webassembly.org/roadmap/
Кстати, на iOS/iPadOS 14 можно будет выбрать браузер по умолчанию (но во вчерашней бете для разработчиков я не нашёл где это сделать).
Закончилась встеча #WebAssembly Community Group. Результаты:
- новый пропозал WebAssembly Instrument and Tracing Technology переходит на phase 1.
- Reference types переходит на phase 4.
- Bulk Memory Operations переходит на phase 4.
- новый пропозал Numeric Values in Data Segments переходит на phase 1.
А ещё JavaScript BigInt <-> WebAssembly i64 включили в Chromium без флага:
https://bugs.chromium.org/p/v8/issues/detail?id=7741#c21
- новый пропозал WebAssembly Instrument and Tracing Technology переходит на phase 1.
- Reference types переходит на phase 4.
- Bulk Memory Operations переходит на phase 4.
- новый пропозал Numeric Values in Data Segments переходит на phase 1.
А ещё JavaScript BigInt <-> WebAssembly i64 включили в Chromium без флага:
https://bugs.chromium.org/p/v8/issues/detail?id=7741#c21
Новые статьи в блоге web.dev:
- Using the CrUX Dashboard on Data Studio — об инструментах, позволяющих оценить UX
- Getting started with Chrome's origin trials — о том, как поучаствовать в тестировании Chrome origin trials
- Getting started with Trust Tokens — о том, как реализовать поддержку Trusted Tokens API на своем вебсайте
- Resilient search experiences — о том, как реализовать оптимистичный поиск с помощью сервис воркера
- Instant navigation experiences — о префетчинге ресурсов из сервис воркера
- App shell UX with service workers and streams — о том, как улучшить многостраничные приложения с помощью сервис воркера и Streams API
- Adaptive loading with service workers — о том, как реализовать адаптивную загрузку ресурсов с помощью сервис воркера
- Using the CrUX Dashboard on Data Studio — об инструментах, позволяющих оценить UX
- Getting started with Chrome's origin trials — о том, как поучаствовать в тестировании Chrome origin trials
- Getting started with Trust Tokens — о том, как реализовать поддержку Trusted Tokens API на своем вебсайте
- Resilient search experiences — о том, как реализовать оптимистичный поиск с помощью сервис воркера
- Instant navigation experiences — о префетчинге ресурсов из сервис воркера
- App shell UX with service workers and streams — о том, как улучшить многостраничные приложения с помощью сервис воркера и Streams API
- Adaptive loading with service workers — о том, как реализовать адаптивную загрузку ресурсов с помощью сервис воркера
Статья в блоге WebKit об Async Clipboard API, который помимо более удобного дизайна API и, собственно, асинхронности предоставляет новые возможности, такие как использование rich text или изображений, улучшенные безопасность и приватность.
https://webkit.org/blog/10855/async-clipboard-api/
https://webkit.org/blog/10855/async-clipboard-api/
WebKit
Async Clipboard API
Safari 13.1 adds support for the async Clipboard API.
Сотрудники Mozilla приветствуют Safari в WebExtensions коммьюнити.
https://hacks.mozilla.org/2020/06/welcoming-safari-to-the-webextensions-community/
https://hacks.mozilla.org/2020/06/welcoming-safari-to-the-webextensions-community/
Mozilla Hacks – the Web developer blog
Welcoming Safari to the WebExtensions Community
Safari is adopting a web-based API for browser extensions similar to Firefox’s WebExtensions API making it easy to build once and port to multiple browsers. Developers
Разработчики npm рассказывают о том, почему нельзя просто так взять и использовать только yarn.lock и не создавать package-lock.json (они анонсировали поддержку yarn.lock ранее). Спойлер: yarn.lock даёт детерминированный результат только в комбинации с конкретной версией yarn.
https://blog.npmjs.org/post/621733939456933888/npm-v7-series-why-keep-package-lockjson
https://blog.npmjs.org/post/621733939456933888/npm-v7-series-why-keep-package-lockjson
blog.npmjs.org
npm Blog Archive: npm v7 Series - Why Keep `package-lock.json`?
npm Blog (Archive); updates from the npm team are now published on the GitHub Blog and the GitHub Changelog
#WebAssembly пропозалы Reference Types и Bulk Memory Operations, перешедшие 23 июня на phase 4, включены по умолчанию в движке SpiderMonkey, используемом в Firefox.
https://bugzilla.mozilla.org/show_bug.cgi?id=1637884#c3
https://bugzilla.mozilla.org/show_bug.cgi?id=1637884#c3
https://bugzilla.mozilla.org/show_bug.cgi?id=1637884#c3
https://bugzilla.mozilla.org/show_bug.cgi?id=1637884#c3