Microsoft разрабатывает спецификацию для нативных CSS модулей
Работа #TC39 над Import Assertions (пропозал перешёл на stage 3 во время сентябрьской встречи комитета) позволит разблокировать поддержку не-JavaScript модулей. Работа над JSON модулями (stage 2) также ведётся в рамках TC39. Microsoft же начал работу по созданию спецификации для CSS модулей под эгидой W3C Web Incubator Community Group в репозитории со спецификациями для веб компонентов.
https://github.com/WICG/webcomponents/blob/gh-pages/proposals/css-modules-v1-explainer.md
Работа #TC39 над Import Assertions (пропозал перешёл на stage 3 во время сентябрьской встречи комитета) позволит разблокировать поддержку не-JavaScript модулей. Работа над JSON модулями (stage 2) также ведётся в рамках TC39. Microsoft же начал работу по созданию спецификации для CSS модулей под эгидой W3C Web Incubator Community Group в репозитории со спецификациями для веб компонентов.
https://github.com/WICG/webcomponents/blob/gh-pages/proposals/css-modules-v1-explainer.md
Результаты #WebAssembly CG встречи 10 ноября 2020
Relaxed dead code validation переходит на Phase 2
Branch hinting переходит на Phase 1
Feature detection для SIMD будет выделено в отдельный пропозал
Relaxed dead code validation переходит на Phase 2
Branch hinting переходит на Phase 1
Feature detection для SIMD будет выделено в отдельный пропозал
Вышел Angular 11
Из нового:
- успешно внедрена инициатива Operation Byelog (обработка всех issue и выявление основных потребностей от коммьюнити)
- автоматический инлайн шрифтов
- Component Test Harnesses теперь работают для всех компонентов, а не только для Angular Material
- улучшения отчётов и логирования
- улучшения Angular Language Service
- улучшенная и упрощённая поддержка Hot Module Replacement
- более быстрая компиляция
- экспериментальная поддержка webpack 5
- TSLint и Codelyzer задеприкейчены и заменены на ESLint
- прекращена поддержка IE9, IE10 и IE mobile
- обновлена дорожная карта
Из нового:
- успешно внедрена инициатива Operation Byelog (обработка всех issue и выявление основных потребностей от коммьюнити)
- автоматический инлайн шрифтов
- Component Test Harnesses теперь работают для всех компонентов, а не только для Angular Material
- улучшения отчётов и логирования
- улучшения Angular Language Service
- улучшенная и упрощённая поддержка Hot Module Replacement
- более быстрая компиляция
- экспериментальная поддержка webpack 5
- TSLint и Codelyzer задеприкейчены и заменены на ESLint
- прекращена поддержка IE9, IE10 и IE mobile
- обновлена дорожная карта
Medium
Version 11 of Angular Now Available
Version 11.0.0 is here and we’ve got some great updates for Angular developers everywhere.
Вышел Babylon.js 4.2
Babylon.js — это и рендер движок для веба, в комплекте с которым идут различные редакторы и много-много других инструментов. В новой версии добавили настолько много всего, что и не перечислишь. Лучше почитайте анонс и посмотрите видео.
https://www.youtube.com/watch?v=vkLZMHYj8d4&feature=emb_title
https://blogs.windows.com/blog/2020/11/12/babylon-js-4-2-simplicity-reimagined/
Babylon.js — это и рендер движок для веба, в комплекте с которым идут различные редакторы и много-много других инструментов. В новой версии добавили настолько много всего, что и не перечислишь. Лучше почитайте анонс и посмотрите видео.
https://www.youtube.com/watch?v=vkLZMHYj8d4&feature=emb_title
https://blogs.windows.com/blog/2020/11/12/babylon-js-4-2-simplicity-reimagined/
YouTube
Babylon.js 4.2 Release Video
We are artists, developers, creators, and dreamers and we want to make it as simple as possible to enable everyone to bring their ideas to life. With this new version of Babylon.js, we set out to make it even easier to develop with. From a ton of new tools…
Расписание на 79ю встречу #TC39 утверждено
Теперь в нём могут происходить только незначительные изменения. Заключительная в этом году встреча начнётся в понедельник 16 ноября и закончится в четверг 19 ноября. В этот раз она проходит в таймзоне CET (встреча изначально должна была пройти в Будапеште), так что следить за происходящим в этот раз будем в самом конфортном режиме.
https://github.com/tc39/agendas/blob/master/2020/11.md
Лично я больше всего жду обновления Import assertions, а также перехода Realms на stage 3! А что Вам интересно из тем повестки встречи?
Теперь в нём могут происходить только незначительные изменения. Заключительная в этом году встреча начнётся в понедельник 16 ноября и закончится в четверг 19 ноября. В этот раз она проходит в таймзоне CET (встреча изначально должна была пройти в Будапеште), так что следить за происходящим в этот раз будем в самом конфортном режиме.
https://github.com/tc39/agendas/blob/master/2020/11.md
Лично я больше всего жду обновления Import assertions, а также перехода Realms на stage 3! А что Вам интересно из тем повестки встречи?
GitHub
agendas/2020/11.md at main · tc39/agendas
TC39 meeting agendas. Contribute to tc39/agendas development by creating an account on GitHub.
Начиная с Firefox 83, в браузере будет включен новый модуль Warp предназначенный для оптимизации JIT (взамен старого Ion). Это значительное улучшение в SpiderMonkey, которое скажется на скорости загрузки страниц, выполнении JS и потреблении памяти. Так же новая архитектура упрощает поддержку и добавление новых оптимизаций, которые продолжат добавлять в будущих версиях Firefox.
Подробности: https://hacks.mozilla.org/2020/11/warp-improved-js-performance-in-firefox-83/
Подробности: https://hacks.mozilla.org/2020/11/warp-improved-js-performance-in-firefox-83/
Mozilla Hacks – the Web developer blog
Warp: Improved JS performance in Firefox 83
We have enabled Warp, a significant update to SpiderMonkey, by default in Firefox 83. SpiderMonkey, the JavaScript engine used in the Firefox
Что нового в Chrome 88 DevTools
Chrome 88 выйдет 19 января 2021 года и как всегда принесёт новые фичи в DevTools:
- уменьшено на ~37% время старта
- визуализация отображения углов в CSS
- эмуляция неподдерживаемых форматов изображений
- симуляция максимального объёма хранилища
- Web Vitals на панели Performance
- отображение ошибок CORS на панели Network
- обновление вкладки подробностей о фрейме
- открытие панели Network из панели информации о сервис воркере
- улушенные возможности копирования данных
- отображение значений переменных WebAssembly при наведении мыши в дебаггере
- экспериментальные фичи: инструменты дебага CSS Flexbox и комбинации клавиш для шорткатов
https://developers.google.com/web/updates/2020/11/devtools
Chrome 88 выйдет 19 января 2021 года и как всегда принесёт новые фичи в DevTools:
- уменьшено на ~37% время старта
- визуализация отображения углов в CSS
- эмуляция неподдерживаемых форматов изображений
- симуляция максимального объёма хранилища
- Web Vitals на панели Performance
- отображение ошибок CORS на панели Network
- обновление вкладки подробностей о фрейме
- открытие панели Network из панели информации о сервис воркере
- улушенные возможности копирования данных
- отображение значений переменных WebAssembly при наведении мыши в дебаггере
- экспериментальные фичи: инструменты дебага CSS Flexbox и комбинации клавиш для шорткатов
https://developers.google.com/web/updates/2020/11/devtools
Chrome Developers
What's New In DevTools (Chrome 88) - Chrome Developers
New CSS angle visualization tools, emulate unsupported image types and storage quota, new Web Vitals lane and more.
Первый день 79й встречи #TC39
Ноябрьский #TC39 начнётся уже через 30 минут. В первый день, как обычно, по большей части будут отчёты секретариата ECMA, редакторов спецификаций, а также несколько тем по проблемам совместимости или PR на GitHub, по которым необходим консенсус. Если успеем, то обсудим один новый пропозал. Ссылки на документы, слайды и результаты обсуждений я буду добавлять в этот пост, чтобы не сильно спамить нотификациями. Если что-то совсем важное, то отдельным сообщением. В перерывах возможно буду выкладывать и какие-то другие новости.
———
Представлен календарь встреч на 2021 год
(слайды)
Вместо 6 встреч каждые два месяца теперь вводится два вида пленарных встреч — основные ежеквартальные (по 4 дня каждая) и 4 облегченные между ними (по 2 дня каждая). В сумме все встречи займут также 96 часов, как и раньше. Основные встречи планируются как оффлайновые с возможностью перевести в онлайн. Из встреч на 2021 только лондонская возможно будет оффлайновой всвязи с пандемией.
Отчёты редакторов
- ECMA262
- ECMA402
Изменения в составе группы председателей
(слайды)
Проблемы веб совместимости / нормативные изменения, требующие консенсуса
- Handling of NaN and side effects in Date.prototype.set* methods — консенсус достигнут
- Handling await in left operands of exponentiation — консенсус не достигнут
- proto normative optional options —
- Re-resolve unresolvable bindings in PutValue — нужно ещё время на обсуждение
- IntegerIndexedElementSet should always indicate success — консенсус достигнут; тут очень интересная история о том, как появилось это расхождение в имплементациях, может быть расскажу позже
- Give %TypedArray% methods explicit algorithms — консенсус достигнут
Пропозалы
Vision for concurrent JS + constellations of proposals (новый пропозал, чемпион не просил консенсуса для перехода на stage 1)
(слайды)
Огненная тема! 🔥 Естественно вызвала много разговоров. Возможно напишу отдельно позже.
Обратная связь от разработчиков движка JavaScriptCore о пропозале RegExp Matches Indices (stage 3 обновление)
(слайды)
Разработчики JSC попробовали 4 разные имплементации пропозала. Как и разработчики V8, они столкнулись с особенностями, которые влияют на производительность регулярных выражений с использованием
Другие темы
Supporting MDN's documentation about in TC39's output
(слайды)
TC39 сильно беспокоится о судьбе MDN как самого лучшего и популярного источника докуметации по JavaScript и Intl. Недавно в Mozilla прошла серия увольнений, которая затронула и судьбу MDN. В докладе были предложены способы поддержки MDN, чтобы начать дискуссию и обсудить решения на уровне ECMA ExeComm (комитета, составленного из компаний-участниц Ecma).
Ноябрьский #TC39 начнётся уже через 30 минут. В первый день, как обычно, по большей части будут отчёты секретариата ECMA, редакторов спецификаций, а также несколько тем по проблемам совместимости или PR на GitHub, по которым необходим консенсус. Если успеем, то обсудим один новый пропозал. Ссылки на документы, слайды и результаты обсуждений я буду добавлять в этот пост, чтобы не сильно спамить нотификациями. Если что-то совсем важное, то отдельным сообщением. В перерывах возможно буду выкладывать и какие-то другие новости.
———
Представлен календарь встреч на 2021 год
(слайды)
Вместо 6 встреч каждые два месяца теперь вводится два вида пленарных встреч — основные ежеквартальные (по 4 дня каждая) и 4 облегченные между ними (по 2 дня каждая). В сумме все встречи займут также 96 часов, как и раньше. Основные встречи планируются как оффлайновые с возможностью перевести в онлайн. Из встреч на 2021 только лондонская возможно будет оффлайновой всвязи с пандемией.
Отчёты редакторов
- ECMA262
- ECMA402
Изменения в составе группы председателей
(слайды)
Проблемы веб совместимости / нормативные изменения, требующие консенсуса
- Handling of NaN and side effects in Date.prototype.set* methods — консенсус достигнут
- Handling await in left operands of exponentiation — консенсус не достигнут
- proto normative optional options —
_proto_ ост
аётся опциональным, остальные свойства (для геттеров и сеттеров) должны быть либо реализованы все вместе, либо не реализован ни один из них- Re-resolve unresolvable bindings in PutValue — нужно ещё время на обсуждение
- IntegerIndexedElementSet should always indicate success — консенсус достигнут; тут очень интересная история о том, как появилось это расхождение в имплементациях, может быть расскажу позже
- Give %TypedArray% methods explicit algorithms — консенсус достигнут
Пропозалы
Vision for concurrent JS + constellations of proposals (новый пропозал, чемпион не просил консенсуса для перехода на stage 1)
(слайды)
Огненная тема! 🔥 Естественно вызвала много разговоров. Возможно напишу отдельно позже.
Обратная связь от разработчиков движка JavaScriptCore о пропозале RegExp Matches Indices (stage 3 обновление)
(слайды)
Разработчики JSC попробовали 4 разные имплементации пропозала. Как и разработчики V8, они столкнулись с особенностями, которые влияют на производительность регулярных выражений с использованием
.indicies
. Было решено продумать возможные необходимые действия и представить их в докладе на следующих встречах комитета.Другие темы
Supporting MDN's documentation about in TC39's output
(слайды)
TC39 сильно беспокоится о судьбе MDN как самого лучшего и популярного источника докуметации по JavaScript и Intl. Недавно в Mozilla прошла серия увольнений, которая затронула и судьбу MDN. В докладе были предложены способы поддержки MDN, чтобы начать дискуссию и обсудить решения на уровне ECMA ExeComm (комитета, составленного из компаний-участниц Ecma).
WebKit переезжает на GitHub
В конце 2019 года были опубликованы планы WebKit на 2020 год. Среди прочего, там есть пункт:
WebKit on GitHub as a project (year 1 of a multi-year project)
Примерно месяц назад в рассылке для разработчиков WebKit появились подробности, а также появился отдельный канал, посвящённый миграции на GitHub в Slack вебкита.
Вообще, многие разработчики используют Git для разработки WebKit довольно давно, а вся работа с патчами и Bugzilla обеспечивается скриптами, которые лежат в репозитории. GitHub был выбран за самое активное коммьюнити, и там имеют аккаунт большинство разработчиков. Система ревью патчей также переедет на GitHub, а баг трекер Bugzilla будет заменён на GitHub issues.
Ожидается, что частичная миграция осуществится уже в ближайшие месяцы. Когда это случится, WebKit станет первым браузером, исходный код которого полностью доступен на GitHub.
П.С. Все результаты певого дня 79й встречи TC39 опубликованы выше.
В конце 2019 года были опубликованы планы WebKit на 2020 год. Среди прочего, там есть пункт:
WebKit on GitHub as a project (year 1 of a multi-year project)
Примерно месяц назад в рассылке для разработчиков WebKit появились подробности, а также появился отдельный канал, посвящённый миграции на GitHub в Slack вебкита.
Вообще, многие разработчики используют Git для разработки WebKit довольно давно, а вся работа с патчами и Bugzilla обеспечивается скриптами, которые лежат в репозитории. GitHub был выбран за самое активное коммьюнити, и там имеют аккаунт большинство разработчиков. Система ревью патчей также переедет на GitHub, а баг трекер Bugzilla будет заменён на GitHub issues.
Ожидается, что частичная миграция осуществится уже в ближайшие месяцы. Когда это случится, WebKit станет первым браузером, исходный код которого полностью доступен на GitHub.
П.С. Все результаты певого дня 79й встречи TC39 опубликованы выше.
Новые фичи Safari 14
В блоге WebKit вышел обзор новых фич в браузере Safari 14 для macOS Big Sur, iPadOS 14, iOS 14 и watchOS 7. Довольно скромный и покрывающий лишь малую часть нововведений, но содержит ссылки на другие статьи в блоге, страницы документации и видео.
https://webkit.org/blog/11340/new-webkit-features-in-safari-14/
В блоге WebKit вышел обзор новых фич в браузере Safari 14 для macOS Big Sur, iPadOS 14, iOS 14 и watchOS 7. Довольно скромный и покрывающий лишь малую часть нововведений, но содержит ссылки на другие статьи в блоге, страницы документации и видео.
https://webkit.org/blog/11340/new-webkit-features-in-safari-14/
WebKit
New WebKit Features in Safari 14
With the release of Safari 14 for macOS Big Sur, iPadOS 14, iOS 14, and watchOS 7, WebKit brings significant improvements to performance and privacy along with a host of new features for web developers.
Многих мог мучать вопрос как правильно замещать контент DOM узла: удалять через
Метод впервые появился в Firefox 78 еще в июне, и вот сейчас подтянулись остальные браузеры: Safari 14 (☝️) и последние версии Chrome, Edge и Opera.
PS на can I use пока показывает, что в Safari нет поддержки, но провено в 14.0.1 – работает
innerHTML=""
или по одному узлу, вставлять новые узлы по одному или через DocumentFragment?.. Способов несколько, но у каждого свои минусы. И вот, после трехлетнего обсуждения в спецификацию DOM в марте добавили новый метод replaceChildren(), который делает то что надо 👌Метод впервые появился в Firefox 78 еще в июне, и вот сейчас подтянулись остальные браузеры: Safari 14 (☝️) и последние версии Chrome, Edge и Opera.
PS на can I use пока показывает, что в Safari нет поддержки, но провено в 14.0.1 – работает
Создание современных нативных модулей для Node.js в 2020
В статье рассказывается об N-API, разработка которого началась в конце 2016, чтобы заменить устаревший NAN. Для сборки поддерживается CMake.js и вообще там очень много всего классного.
https://nodejs.medium.com/building-modern-native-add-ons-for-node-js-in-2020-cd3992c68e0
В статье рассказывается об N-API, разработка которого началась в конце 2016, чтобы заменить устаревший NAN. Для сборки поддерживается CMake.js и вообще там очень много всего классного.
https://nodejs.medium.com/building-modern-native-add-ons-for-node-js-in-2020-cd3992c68e0
Medium
Building Modern Native Add-ons for Node.js in 2020
This post was contributed by Chengzhong Wu (@legendecas), Gabriel Schulhof (@gabrielschulhof) Jim Schlight (@jimschlight), Kevin Eady…
В ноябре 2020 Python впервые обогнал Java в индексе TIOBE
TIOBE — известный индекс популярности языков программирования. Он существует около 20 лет, и всё это время языки C и Java занимали первое и второе место, иногда сменяя друг друга. В этом месяце Python впервые за всю историю существования индекса вырвался на второе место.
TIOBE — известный индекс популярности языков программирования. Он существует около 20 лет, и всё это время языки C и Java занимали первое и второе место, иногда сменяя друг друга. В этом месяце Python впервые за всю историю существования индекса вырвался на второе место.
Второй день 79й встречи #TC39
Через час начнётся второй день ноябрьской встречи. Сегодня должно быть поинтереснее — обновления по некоторым пропозалам и представление некоторых из них к продвижению, а также другие технические и организационные темы. Результаты обсуждений и слайды будут добавляться к этому посту.
Отчёт по первому дню встречи можно почитать тут.
———
Default constructors and spread operations (PR, по которому необходим консенсус)
(ссылка)
Достигнут консенсус.
.item() rename + revisit inclusion on String (stage 3 обновление)
(слайды)
Напомню, что были обнаружены проблемы веб совместимости. На обсуждение фичи не хватило отведенного времени.
Standardized Debug (stage 1 -> stage 2)
(слайды позже)
Консенсус для перехода на stage 2 не достигнут. Чемпиона попросили проработать документацию и мотивационную часть в ней.
Import Assertions (stage 3 обновление)
(слайды)
Есть определённые открытые проблемы, но они в процессе обсуждения и решения. Для дальнейшего продвижения необходим ещё один host hook (для кэширования), и для этого был достигнут консенсус.
Grouped Accessors and Auto-Accessors (-> stage 1)
(слайды)
Консенсус не достигнут. Обсуждения продолжатся позже.
Realms (stage 2 -> stage 3)
(слайды)
Консенсус не достигнут. Обсуждение продолжится на следующих встречах TC39
Через час начнётся второй день ноябрьской встречи. Сегодня должно быть поинтереснее — обновления по некоторым пропозалам и представление некоторых из них к продвижению, а также другие технические и организационные темы. Результаты обсуждений и слайды будут добавляться к этому посту.
Отчёт по первому дню встречи можно почитать тут.
———
Default constructors and spread operations (PR, по которому необходим консенсус)
(ссылка)
Достигнут консенсус.
.item() rename + revisit inclusion on String (stage 3 обновление)
(слайды)
Напомню, что были обнаружены проблемы веб совместимости. На обсуждение фичи не хватило отведенного времени.
Standardized Debug (stage 1 -> stage 2)
(слайды позже)
Консенсус для перехода на stage 2 не достигнут. Чемпиона попросили проработать документацию и мотивационную часть в ней.
Import Assertions (stage 3 обновление)
(слайды)
Есть определённые открытые проблемы, но они в процессе обсуждения и решения. Для дальнейшего продвижения необходим ещё один host hook (для кэширования), и для этого был достигнут консенсус.
Grouped Accessors and Auto-Accessors (-> stage 1)
(слайды)
Консенсус не достигнут. Обсуждения продолжатся позже.
Realms (stage 2 -> stage 3)
(слайды)
Консенсус не достигнут. Обсуждение продолжится на следующих встречах TC39
Все результаты второго дня TC39 выше ^
Сегодня также ожидаются релизы Firefox 83 и Chrome 87.
Что интересно, параллельно с выходом Firefox 83 и Firefox 84 Beta, Firefox Nightly переключится на ветку 85, в которой Flash будет выключен по умолчанию, и Mozilla советует обратиться за дальнейшей поддержкой Flash к HARMAN, которые по соглашению с Adobe, оказывается будут продолжать поддержку и предоставлять обновления безопасности для Flash и Air до конца 2023 года, а может быть и позже.
upd: только что Mozilla еще и новость об этом опубликовала вот тут.
Сегодня также ожидаются релизы Firefox 83 и Chrome 87.
Что интересно, параллельно с выходом Firefox 83 и Firefox 84 Beta, Firefox Nightly переключится на ветку 85, в которой Flash будет выключен по умолчанию, и Mozilla советует обратиться за дальнейшей поддержкой Flash к HARMAN, которые по соглашению с Adobe, оказывается будут продолжать поддержку и предоставлять обновления безопасности для Flash и Air до конца 2023 года, а может быть и позже.
upd: только что Mozilla еще и новость об этом опубликовала вот тут.
Вышел Firefox 83
В нём:
- улучшения DevTools
- CSS conic gradients (которые уже давно реализованы в Chrome и Safari)
- WebRenderer теперь работает на Windows 7 и 8, а также на macOS 10.12-10.15
- pinch to zoom на десктопах
- включён новый JIT-компилятор Warp
Ещё больше инфы:
- Релизные записи для разработчиков
- Релизные записи для конечных пользователей
В нём:
- улучшения DevTools
- CSS conic gradients (которые уже давно реализованы в Chrome и Safari)
- WebRenderer теперь работает на Windows 7 и 8, а также на macOS 10.12-10.15
- pinch to zoom на десктопах
- включён новый JIT-компилятор Warp
Ещё больше инфы:
- Релизные записи для разработчиков
- Релизные записи для конечных пользователей
Mozilla Hacks – the Web developer blog
Firefox 83 is upon us
In this release we’ve got a few nice additions: Conical CSS gradients, overflow debugging in the Developer Tools, enabling of WebRender.
Вышел Chrome 87
Из нового:
- управление веб камерами
- HTTP range requests теперь работают в Service Worker
- новый origin trial: Font access API для использования шрифтов, установленных на компьютере
- стримы теперь могут быть переданы в
- разные улучшения CSS
Ещё:
- What's new in Chrome DevTools (87)
- Chrome 87 deprecations & removals
- What's new in JavaScript in Chrome 87
- Chromium source repository change list
Из нового:
- управление веб камерами
- HTTP range requests теперь работают в Service Worker
- новый origin trial: Font access API для использования шрифтов, установленных на компьютере
- стримы теперь могут быть переданы в
postMessage
- разные улучшения CSS
Ещё:
- What's new in Chrome DevTools (87)
- Chrome 87 deprecations & removals
- What's new in JavaScript in Chrome 87
- Chromium source repository change list
Chrome for Developers
New in Chrome 87 | Blog | Chrome for Developers
Chrome 87 is rolling out now! You can now control pan, tilt, and zoom on webcams that support it, range requests and service workers don't require as many workarounds, the font access API starts it's origin trial, and plenty more. Let's dive in and see what's…
Проект Servo переходит в Linux Foundation
https://blog.servo.org/2020/11/17/servo-home/
Ранее в августе команда, работавшая в Mozilla над Servo, была полностью ликвидирована.
https://blog.servo.org/2020/11/17/servo-home/
Ранее в августе команда, работавшая в Mozilla над Servo, была полностью ликвидирована.