Статья в блоге Mozilla Hacks об инструменте web-ext, который позволяет просто и быстро создавать расширения для Firefox и браузеров на основе Chromium, а также поддерживает автоматическую перезагрузку.
Mozilla Hacks – the Web developer blog
Developing cross-browser extensions with web-ext 3.2.0
The web-ext tool was created at Mozilla to help you build browser extensions faster and more easily. Although our first launch focused on support for the desktop Firefox browser, followed ...
Слайды к докладу Implementing one feature set in two JavaScript engines от Caio Lima и Joyee Сheung из Igalia на встрече разработчиков Web Engines Hackfest. В докладе рассказывалось об имплементации Class instance fields, Private methods & accessors и Static class features (все на stage 3) в JavaScript движках JavaScriptCore и V8.
Google Docs
Implementing One feature set in two JavaScript Engines
Implementing one feature set in two JavaScript engines Caio Lima & Joyee Cheung Igalia & Bloomberg 1
The problems of shared mutable state and how to avoid them — новая статья от Акселя Раушмайера о мутабельных и немутабельных данных и о том, почему мутабельность может быть плохо.
Forwarded from Веб-стандарты (Веб-стандарты)
Фотографии, видео и слайды с WSD в Екатеринбурге 19 октября при поддержке Контура.
Фото во ВКонтакте https://vk.com/album-32017543_270129380
Фото в Фейсбуке https://www.facebook.com/pg/webstandardsru/photos/?tab=album&album_id=2529870837080640
Трансляция с таймкодами https://youtu.be/DsfnFrwKksA
Программа и слайды https://wsd.events/2019/10/19/#schedule
Фото во ВКонтакте https://vk.com/album-32017543_270129380
Фото в Фейсбуке https://www.facebook.com/pg/webstandardsru/photos/?tab=album&album_id=2529870837080640
Трансляция с таймкодами https://youtu.be/DsfnFrwKksA
Программа и слайды https://wsd.events/2019/10/19/#schedule
Добавленная этой весной поддержка JSON модулей в спецификации HTML недавно была убрана из неё из-за потенциальных проблем безопасности, описанных тут (невозможность гарантировать, что будет использован нужный парсер). Параллельно поддержка JSON модулей была убрана и из экспериментальной поддержки ESM в Node.js.
Статья (точнее её первая часть) Бена Смита, бывшего председателя #WebAssembly Working Group и Community group о том, как он создавал свою демку maze race на чистом WebAssembly.
https://binji.github.io/posts/raw-wasm-making-a-maze-race/
https://binji.github.io/posts/raw-wasm-making-a-maze-race/
Вышла Node.js 12.13.0, которая является LTS версией и носит кодовое имя Erbium.
https://nodejs.org/en/blog/release/v12.13.0/
https://nodejs.org/en/blog/release/v12.13.0/
nodejs.org
Node.js — Node.js v12.13.0 (LTS)
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
Компилятор Emscripten обновился до версии 1.39.0 и теперь использует LLVM бекенд по умолчанию вместо Fastcomp (форка LLVM, который использовался до этого).
https://github.com/emscripten-core/emsdk/pull/373
https://github.com/emscripten-core/emsdk/pull/373
GitHub
Switch 'latest' from 'latest-fastcomp' to 'latest-upstream' by sbc100 · Pull Request #373 · emscripten-core/emsdk
Fixes: emscripten-core/emscripten#5488
Всем привет. Сегодня день релизов. Хотя скорее даже вечер или ночь, так как все они планируются по американским таймзонам. Ожидаем:
- Chrome 78
- Node.js 13
- Firefox 70
- TypeScript 3.7 RC (стабильный релиз ожидается ещё через 2 недели)
- Chrome 78
- Node.js 13
- Firefox 70
- TypeScript 3.7 RC (стабильный релиз ожидается ещё через 2 недели)
GitHub
2019-10-22, Version 13.0.0 (Current) by BethGriggs · Pull Request #29504 · nodejs/node
2019-10-22, Version 13.0.0 (Current), @BethGriggs
Notable Changes
TBD
Semver-Major Commits
[5981fb7faa] - (SEMVER-MAJOR) assert: fix line number calculation after V8 upgrade (Michaël Zasso) #296...
Notable Changes
TBD
Semver-Major Commits
[5981fb7faa] - (SEMVER-MAJOR) assert: fix line number calculation after V8 upgrade (Michaël Zasso) #296...
Давайте поподробнее посмотрим что интересного планируется в свежем Chrome 78. Я выделю три самых интересных по моему мнению и исключу все Chrome-only Web API из WICG (вроде Native File System и новых возможностей для фингерпринта типа возможности определить наличие поддержки bleutooth).
Во-первых, это ожидаемый многими Optional Chaining (stage 3) (под флагом), который, кстати, появится и в TypeScript 3.7.
Лично меня больше впечатляет поддержка #WebAssembly Reference Types (phase 3) (и также под флагом). Этот пропозал является основой для многих других предложений в WebAssembly (например, Interface Types, Typed Function References, Exception Handling, Garbage Collector).
Ещё в новой версии появится поддержка одной из спецификаций, входящей в проект Houdini, а именно CSS Properties and Values API Level 1.
Во-первых, это ожидаемый многими Optional Chaining (stage 3) (под флагом), который, кстати, появится и в TypeScript 3.7.
Лично меня больше впечатляет поддержка #WebAssembly Reference Types (phase 3) (и также под флагом). Этот пропозал является основой для многих других предложений в WebAssembly (например, Interface Types, Typed Function References, Exception Handling, Garbage Collector).
Ещё в новой версии появится поддержка одной из спецификаций, входящей в проект Houdini, а именно CSS Properties and Values API Level 1.
Что касается свежего Firefox 70, то в нём можно выделить поддержку нового бейслайн интерпретатора, поддержку WebRender на платформах Windows с интегрировнными видеокартами Intel для устройств с низким разрешением и поддержку Numeric Separators (stage 3) в SpiderMonkey.
Я уже писал о недавнем анализе VPN от Firefox, который оказался не таким уж и приватным, а теперь тот же ресурс проанализировал VPN от Opera. У него всё ещё хуже ☹️
https://restoreprivacy.com/opera-vpn/
https://restoreprivacy.com/opera-vpn/
Консорциум Unicode выпустил релиз Emoji 12.1, в котором добавлены 138 гендерно-нейтральных форм существующих emoji, 30 новых комбинаций людей, держащихся за руки с разными цветами кожи.
http://blog.unicode.org/2019/10/emoji-121-release-168-emoji-added.html
http://blog.unicode.org/2019/10/emoji-121-release-168-emoji-added.html
blog.unicode.org
Emoji 12.1 release: 168 Emoji added
Emoji 12.1 , with 168 new emoji, has been released. There are 138 new gender-neutral forms, so you will soon be able to text about people wi...
Firefox 70 вышел.
https://hacks.mozilla.org/2019/10/firefox-70-a-bountiful-release-for-all/
Релизные записи для разработчиков:
https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/70
Изменения совместимости:
https://www.fxsitecompat.com/en-CA/versions/70/
https://hacks.mozilla.org/2019/10/firefox-70-a-bountiful-release-for-all/
Релизные записи для разработчиков:
https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/70
Изменения совместимости:
https://www.fxsitecompat.com/en-CA/versions/70/
Mozilla Hacks – the Web developer blog
Firefox 70 — a bountiful release for all
Firefox 70 is released today, and includes great new features such as secure password generation with Lockwise and the new Firefox Privacy Protection Report, as well as cool additions for ...
Состоялся релиз Node.js 13.0.0. В нём появилась поддержка полной версии ICU по умолчанию (а значит полная поддержка API интернационализации для всех языков), а V8 обновился до версии 7.8 (как в предстоящем релизе Chrome 78).
Chrome 78 тоже начал выкатываться. Вот что можно почитать о новом релизе:
- Список фич с Chrome Platform Status
- Что нового для разработчиков
- Что нового в DevTools
- Что задеприкейтили и что выпилили
- О релизе V8 7.8
- Список фич с Chrome Platform Status
- Что нового для разработчиков
- Что нового в DevTools
- Что задеприкейтили и что выпилили
- О релизе V8 7.8
Chrome for Developers
New in Chrome 78 | Blog | Chrome for Developers
Chrome 78 is rolling out now! You can now provide "types" for CSS variables. You get fresher service workers because byte-for-byte checks are now performed for scripts imported by importScripts(). And I've got details for two new origin trials that provide…
Если у Вас есть вопросы к комитету #TC39, то очень скоро будет отличный шанс задать их участникам панели TC39 конференции HolyJS. Билет на конференцию не требуется, но будет премодерация, поэтому лучше постараться сформулировать вопрос интересно и этично 😄. Форма для вопросов и участники вот тут.
А ещё 6 ноября члены кор тим Node.js будут менторить всех желающих законтрибьютить в ноду на Code & Learn. Только очень советую всем заранее склонить репозиторий Node.js и собрать ноду локально. Я этого не сделал перед петербургским Code & Learn, и потом несколько часов компилировал её, из-за чего не мог приступить к задачам 😄. Ссылка на регистрацию тут.
А ещё 6 ноября члены кор тим Node.js будут менторить всех желающих законтрибьютить в ноду на Code & Learn. Только очень советую всем заранее склонить репозиторий Node.js и собрать ноду локально. Я этого не сделал перед петербургским Code & Learn, и потом несколько часов компилировал её, из-за чего не мог приступить к задачам 😄. Ссылка на регистрацию тут.
Некоторые читатели канала каким-то образом уже об этом узнали (и даже успели поставить звездочки и даже поучаствовать в обсуждениях синтаксиса!), хотя я еще не рассказывал… 😄 Теперь пришло время поделиться, потому что репозиторий теперь перенесён из моего аккаунта в организацию #TC39 на GitHub.
Был такой старый старый пропозал, у которого не было своего репозитория, хотя он в 2016 году попал на stage 1. Его авторами и чемпионами были создатель JavaScript Брендан Айк и недавно прекративший участие в TC39 Доменик Деникола. Ещё летом я вызвался помочь с этим пропозалом, и вот руки дошли. Это Generator Arrow Functions. Название говорит само за себя. Это стрелочные функции в генераторах. Хотя на самом деле возможно этот пропозал переименуется в Generator Keyword или в Generator Extensions или что-то подобное. Двигать его до stage 2 будет сложно, потому что пока нет понимания каким должен быть синтаксис (поучаствовать в обсуждениях можно тут).
https://github.com/tc39/proposal-generator-arrow-functions
Был такой старый старый пропозал, у которого не было своего репозитория, хотя он в 2016 году попал на stage 1. Его авторами и чемпионами были создатель JavaScript Брендан Айк и недавно прекративший участие в TC39 Доменик Деникола. Ещё летом я вызвался помочь с этим пропозалом, и вот руки дошли. Это Generator Arrow Functions. Название говорит само за себя. Это стрелочные функции в генераторах. Хотя на самом деле возможно этот пропозал переименуется в Generator Keyword или в Generator Extensions или что-то подобное. Двигать его до stage 2 будет сложно, потому что пока нет понимания каким должен быть синтаксис (поучаствовать в обсуждениях можно тут).
https://github.com/tc39/proposal-generator-arrow-functions
Совсем забыл вчера написать про релиз Electron 7, который теперь основан на Chrome 78 и Node 12.8.1.
https://electronjs.org/blog/electron-7-0
https://github.com/electron/electron/releases/tag/v7.0.0
https://electronjs.org/blog/electron-7-0
https://github.com/electron/electron/releases/tag/v7.0.0
GitHub
Release electron v7.0.0 · electron/electron
Release Notes for v7.0.0
Notable Changes
Stack upgrades:
Stack
Version in Electron 6
Version in Electron 7
What's New
Chromium
76.0.3809.146
78.0.3905.1
77, 78
V8
7.6
7.8
7.7, 7.8
...
Notable Changes
Stack upgrades:
Stack
Version in Electron 6
Version in Electron 7
What's New
Chromium
76.0.3809.146
78.0.3905.1
77, 78
V8
7.6
7.8
7.7, 7.8
...
Пропозалы Optional Chaining и Nullish Coalescing (оба stage 3) добавлены в повестку следующей (декабрьской) встречи #TC39. Чемпион Дениел Россенвассер собирается просить у комитета перевести их на stage 4. На самом деле это несколько странно, потому что пока ни один, ни другой пропозал не выполняют необходимые для этого условия.
GitHub
Add Optional Chaining & Nullish Coalescing for Stage 4 for December 2019's Agenda by DanielRosenwasser · Pull Request #642 · tc39/agendas
Новый stage 0 пропозал от Justin Ridgewell из Google — Array select/reject. Автор предлагает добавить два новых метода в прототип массива:
-
-
Предполагается, что это поможет неочивидность
-
Array.prototype.select как алиас Array.prototype.filter-
Array.prototype.reject который, убирает элементы, при которых функция коллбек возвращает trueПредполагается, что это поможет неочивидность
Array.prototype.filter — фильтрируем ли мы по или фильтрируем от. Пропозал будет представлен комитету с целью перейти на stage 1.GitHub
GitHub - tc39/proposal-array-filtering: A proposal to make filtering arrays easier
A proposal to make filtering arrays easier. Contribute to tc39/proposal-array-filtering development by creating an account on GitHub.