JavaScript движок XS для интернета вещей недавно обновился до версии 9.0.0 и получил поддержку таких фич как:
- Class Fields
- Private Methods
- Static Class Features
- Numeric separators
- Dynamic Import
- Import Metadata
- globalThis
- String.prototype.matchAll
- Promise.allSettled
- Hashbang Grammar
Также в XS появилась экспериментальная поддержка SES (stage 1) для возможности дать ранний фидбек по пропозалу.
- Class Fields
- Private Methods
- Static Class Features
- Numeric separators
- Dynamic Import
- Import Metadata
- globalThis
- String.prototype.matchAll
- Promise.allSettled
- Hashbang Grammar
Также в XS появилась экспериментальная поддержка SES (stage 1) для возможности дать ранний фидбек по пропозалу.
Moddable Tech
XS: Secure, Private JavaScript for Embedded IoT
The latest release of our XS JavaScript engine puts in place fundamental new capabilities to advance Moddable's mission of safely opening IoT products to third party software. These new capabilities are implementations of proposals on track for standardization…
Рабочая группа CSS обновила Candidate Recommendations спецификаций CSS Writing Modes Level 3 и CSS Writing Modes Level 4. Эти документы описывают CSS поддержку для различных интернациональных режимов написания, включая LTR, RTL, вертикальное написание.
Вышел Chrome 76, в котором добавилось очень много всего, например, v8 7.6, в котором добавили:
- улучшения JSON.parse
- значительные улучшения frozen/sealed массивов
- улучшения обработки unicode строк
- Promise.allSettled, который попал в ES2020
- улучшенную поддержку BigInt, который вот-вот также попадеь в ES2020
- улучшения Intl.DateTimeFormat
- улучшения JSON.parse
- значительные улучшения frozen/sealed массивов
- улучшения обработки unicode строк
- Promise.allSettled, который попал в ES2020
- улучшенную поддержку BigInt, который вот-вот также попадеь в ES2020
- улучшения Intl.DateTimeFormat
GitHub
GitHub - tc39/proposal-promise-allSettled: ECMAScript Proposal, specs, and reference implementation for Promise.allSettled
ECMAScript Proposal, specs, and reference implementation for Promise.allSettled - tc39/proposal-promise-allSettled
Также вышел Electron 6.0.0, который содержит в себе Chrome 76.0.3809.88, Node.js 12.4.0. Подробнее в блоге Electron. Поддержка Electron 3.x.x с этого момента прекращается.
Из других улучшений Chrome 76:
- добавлен медиа запрос prefers-color-scheme
- прогрессивные веб приложения (PWA) теперь можно устанавливать прямо из адресной строки omnibox
- blob’ы теперь можно удобнее считывать новыми методами
- асинхронный буфер обмена теперь поддерживает изображения
Улучшения DevTools:
- автодополнение CSS по значениям свойств
- улучшения вкладки Networking
- импорт / экспорт HAR, а также он теперь содержит сообщения WebSockets
- текущие показатели использования памяти на вкладке Memory
- порт зарегистрированного ServiceWorker на вкладке Application
- поддержка Background Fetch и Background Sync на вкладке Application
- Puppeteer для Firefox
https://developers.google.com/web/updates/2019/07/nic76
https://developers.google.com/web/updates/2019/05/devtools
Список изменений на chromestatus: https://www.chromestatus.com/features#milestone%3D76
- добавлен медиа запрос prefers-color-scheme
- прогрессивные веб приложения (PWA) теперь можно устанавливать прямо из адресной строки omnibox
- blob’ы теперь можно удобнее считывать новыми методами
text(), arrayBuffer() и stream()- асинхронный буфер обмена теперь поддерживает изображения
Улучшения DevTools:
- автодополнение CSS по значениям свойств
- улучшения вкладки Networking
- импорт / экспорт HAR, а также он теперь содержит сообщения WebSockets
- текущие показатели использования памяти на вкладке Memory
- порт зарегистрированного ServiceWorker на вкладке Application
- поддержка Background Fetch и Background Sync на вкладке Application
- Puppeteer для Firefox
https://developers.google.com/web/updates/2019/07/nic76
https://developers.google.com/web/updates/2019/05/devtools
Список изменений на chromestatus: https://www.chromestatus.com/features#milestone%3D76
Chrome Developers
New in Chrome 76 - Chrome Developers
Chrome 76 is rolling out now! It adds support for the prefers-color-scheme media query, bringing dark mode to websites. An install button in the omnibox to make installation of Progressive Web Apps on desktop easier. A way to prevent the mini-infobar from…
Сегодня этому каналу исполнился ровно 1 год! Если Вам нравится то, о чем мы пишем, то рассказывайте о нас коллегам и друзьям — это будет лучшим подарком. Спасибо за то, что читаете нас!
Текст спецификации для предложения Promise.any (stage 2), над которым я работаю, практически готов. Осталось дописать недостающие часть спеки для
AggregateError, и можно готовиться к stage 3.GitHub
GitHub - tc39/proposal-promise-any: ECMAScript proposal: Promise.any
ECMAScript proposal: Promise.any. Contribute to tc39/proposal-promise-any development by creating an account on GitHub.
Доклад Luke Wagner о #WebAssembly пропозале WebIDL bindings (phase 1), который позволит оптимизировать вызовы из WebAssembly в существующие Web API, а также любые другие окружения, которые используют WebIDL.
Vimeo
WebAssembly: status, WebIDL Bindings, and roadmap
Luke Wager, from Mozilla, gives an overview of WebAssembly at the W3C Workshop on Web Games held on 27-28 June 2019 in Seattle, USA, and details the WebIDL Bindings…
Вебня
Текст спецификации для предложения Promise.any (stage 2), над которым я работаю, практически готов. Осталось дописать недостающие часть спеки для AggregateError, и можно готовиться к stage 3.
А тем временем Axel Rauschmayer написал продвинутое руководство по остальным промис комбинаторам: Promise.all, Promise.race и Promise.allSettled (который станет частью ES2020).
Nullish Coalescing operator уже доступен под флагом в JavaScriptCore
https://trac.webkit.org/changeset/247819/webkit
https://trac.webkit.org/changeset/247819/webkit
17 августа (суббота) вместе с Avito делаем SPA meetup, пятый, юбилейный. Программа огонь: доклады от Avito, Яндекс, Mail.ru, ВКонтакте и Тинькофф плюс панельная сессия!
Спеши, торопись — бесплатно, но нужна регистрация, количество мест ограничено. Детали и первая партия билетов:
https://moscow-spa.timepad.ru/event/1028283/?utm_refcode=89abd647a5ac8c21b563f3340ae956884c2209
Вторая партия билетов будет 12 августа в 12:00.
Спеши, торопись — бесплатно, но нужна регистрация, количество мест ограничено. Детали и первая партия билетов:
https://moscow-spa.timepad.ru/event/1028283/?utm_refcode=89abd647a5ac8c21b563f3340ae956884c2209
Вторая партия билетов будет 12 августа в 12:00.
moscow-spa.timepad.ru
SPA Meetup #5 / События на TimePad.ru
17 августа приглашаем на пятый SPA митап. Митап ориентирован на опытных фронтенд-разрабочиков. В программе доклады от Mail.ru, Яндекс, ВКонтакте, Тинькофф и Avito, а также панельная сессия. Ведущий — Рома Дворнов.
Хороший эпизод подкаста TalkScript о приватных свойствах в ECMAScript и о том, как это повлияет на TypeScript.
https://www.sitepen.com/blog/episode-38-private-vs-private-adding-es-private-to-typescript/
https://www.sitepen.com/blog/episode-38-private-vs-private-adding-es-private-to-typescript/
TalkScript.FM
Episode 38: #private vs private: Adding ES private to TypeScript | TalkScript.FM
This week we'll be talking about the ECMAScript #private field proposal and how its implementation affects TypeScript—which already has a type of private field that uses the private keyword.
GitHub добавляет поддержку CI/CD в GitHub Actions. Это позволит организовать сборку, тестирование, публикацию и т.д. на любое событие (даже собственные) в рамках GitHub без дополнительных сервисов.
Нововведение запущено в режиме бета-тестирование и станет общедоступным 13 ноября. Для open source проектов будет бесплатно, для приватных стоимость будет определяться исходя из затраченных на выполнение шагов минут.
https://github.blog/2019-08-08-github-actions-now-supports-ci-cd/
Нововведение запущено в режиме бета-тестирование и станет общедоступным 13 ноября. Для open source проектов будет бесплатно, для приватных стоимость будет определяться исходя из затраченных на выполнение шагов минут.
https://github.blog/2019-08-08-github-actions-now-supports-ci-cd/
The GitHub Blog
GitHub Actions now supports CI/CD, free for public repositories
GitHub Actions now includes built-in CI/CD. Easily automate how you build, test, and deploy your projects on any platform, including Linux, macOS, and Windows.
В репозитории V8 создана ветка версии 7.7, в которой:
- произведены некоторые улучшения производительности за счет ленивого выделения памяти для хранения информации о типах (нужны для последующих спекулятивных оптимизаций)
- фоновая компиляция WebAssembly теперь быстрее на многоядерных ЦПУ
- рефакторинг стек трейсов, позволивший на 30% ускорить их сериализацию
- поддержка Intl.NumberFormat Unified API (stage 3)
Подробнее в блоге V8: https://v8.dev/blog/v8-release-77
- произведены некоторые улучшения производительности за счет ленивого выделения памяти для хранения информации о типах (нужны для последующих спекулятивных оптимизаций)
- фоновая компиляция WebAssembly теперь быстрее на многоядерных ЦПУ
- рефакторинг стек трейсов, позволивший на 30% ускорить их сериализацию
- поддержка Intl.NumberFormat Unified API (stage 3)
Подробнее в блоге V8: https://v8.dev/blog/v8-release-77
GitHub
GitHub - tc39/proposal-unified-intl-numberformat: Adds localized formatting of measurement units, compact decimals, and more number…
Adds localized formatting of measurement units, compact decimals, and more number features - tc39/proposal-unified-intl-numberformat
Если вы (или ваши пользователи) сталкивались с ситуацией, когда из-за обновления/добавления контента клик приходился не по тому элементу (например, кнопке) из-за того, что всё сдвинулось (особо печальный случай в этом видео) – есть хорошая новость! В настоящий момент в Chrome в стадии Origin Trial (в том числе за флагом) находится Layout Instability API, который позволяет определить стабильность положения элемента: когда элемент смещается, для него высчитывается т.н. layout shift score, по которому можно судить насколько стоит доверять действию пользователя с этим элементом. Это, например, может использоваться для принятия решения, что пользователь кликнул по верному элементу. API входит в группу Performance API, поэтому для получения уведомлений используется PerformanceObserver.
Примеры и подробности: https://web.dev/layout-instability-api/
Примеры и подробности: https://web.dev/layout-instability-api/
Вышел релиз кандидат TypeScript 3.6, в котором улучшена поддержка генераторов, Array Spread, промисов, юникода, поддержка import.iss.oneta (stage 3) и другое.
TypeScript
Announcing TypeScript 3.6 RC
Today we’re happy to announce the availability of the release candidate of TypeScript 3.6. This release candidate is intended to be fairly close to the full release, and will stabilize for the next few weeks leading up to our official release.
Аксель Раушмайер о предложении Nullish Coalescing operator (stage 3). К написаному в статье стоит добавить, что новый оператор также правильно работает с устаревшим методом
https://2ality.com/2019/08/nullish-coalescing.html
document.all.https://2ality.com/2019/08/nullish-coalescing.html
GitHub
GitHub - tc39/proposal-nullish-coalescing: Nullish coalescing proposal x ?? y
Nullish coalescing proposal x ?? y. Contribute to tc39/proposal-nullish-coalescing development by creating an account on GitHub.
Выпущена первая бета новой версии браузера Edge. Стабильный релиз планируется в начале 2020. Несколькими месяцами позже новая версия браузера должна заменить старый Edge на Windows 10.
https://www.cnet.com/news/microsoft-wants-you-to-beta-test-its-chrome-derived-edge-browser/
https://www.cnet.com/news/microsoft-wants-you-to-beta-test-its-chrome-derived-edge-browser/
CNET
Microsoft wants you to beta-test its Chrome-derived Edge browser
Why bother? Privacy and productivity, says Windows leader Joe Belfiore. The overhauled browser should be ready for a full release by early 2020.
Недавно побывали вместе с Сергеем Фроловым в гостях у подкаста “Сделайте мне красиво”, где обсудили конференции, 10х девелоперов и немного WebAssembly.
https://soundcloud.com/begebot/ep23
https://soundcloud.com/begebot/ep23
SoundCloud
Ламповые конференции,10х разраб и WebAssembly
Как результат вчерашней видеовстречи WebAssembly Community Group, появился новый #WebAssembly пропозал Interface Types (который также поглотил пропозал WebIDL Bindings), который позволит добавить простой и эффективный интероп между wasm модулями и различными рантаймами. Подробнее в статье от Лин Кларк из Mozilla.
https://hacks.mozilla.org/2019/08/webassembly-interface-types/
https://hacks.mozilla.org/2019/08/webassembly-interface-types/
GitHub
interface-types/proposals/interface-types/Explainer.md at main · WebAssembly/interface-types
Contribute to WebAssembly/interface-types development by creating an account on GitHub.