Logical Assignment Operators (stage 3) только что приехали в Firefox 79 Nightly.
https://bugzilla.mozilla.org/show_bug.cgi?id=1639591
https://bugzilla.mozilla.org/show_bug.cgi?id=1639591
GitHub
GitHub - tc39/proposal-logical-assignment: A proposal to combine Logical Operators and Assignment Expressions
A proposal to combine Logical Operators and Assignment Expressions - tc39/proposal-logical-assignment
Вебня
В репозитории дизайн документов #WebAssembly обсуждается новый пропозал — Await. Предполагается, что он поможет упростить работу с асинхронными задачами на хосте, а также уменьшит накладные расходы (например, Asyncify из Emscripten увеличивает итоговый размер…
Кажется пропозал Await для #WebAssembly заморожен.
GitHub
Proposal: Await · Issue #1345 · WebAssembly/design
@RReverser and I would like to propose a new proposal for WebAssembly: Await. The motivation for the proposal is to help "synchronous" code compiled to WebAssembly, that does some...
⚡️ Старый новый (не опечатка) пропозал Async Context не смог взять stage 1
GitHub
GitHub - tc39/proposal-async-context: Async Context for JavaScript
Async Context for JavaScript. Contribute to tc39/proposal-async-context development by creating an account on GitHub.
⚡️ Intl Enumeration API переходит на stage 1
На этом третий день июньской встречи #TC39 окончен. Завтра будет заключительный четвёртый.
На этом третий день июньской встречи #TC39 окончен. Завтра будет заключительный четвёртый.
GitHub
FrankYFTang/proposal-intl-enumeration
Return supported values of options, such as timeZone, calendars, numberingSystems, currencies, units - FrankYFTang/proposal-intl-enumeration
Не знаю есть ещё ли люди, которые верят, что Google не трекает их в приватном режиме в Chrome, но на всякий случай поделюсь очередным иском к этой компании.
https://www.reuters.com/article/us-alphabet-google-privacy-lawsuit/google-faces-5-billion-lawsuit-in-u-s-for-tracking-private-internet-use-idUSKBN23933H
Если же Вы пользуетесь Chromium и думаете, что защищены, то это опять же не так. Самые лучшие варианты действительно приватно использовать Chromium — это Ungoogled Chromium или Brave.
https://www.reuters.com/article/us-alphabet-google-privacy-lawsuit/google-faces-5-billion-lawsuit-in-u-s-for-tracking-private-internet-use-idUSKBN23933H
Если же Вы пользуетесь Chromium и думаете, что защищены, то это опять же не так. Самые лучшие варианты действительно приватно использовать Chromium — это Ungoogled Chromium или Brave.
Reuters
Google faces $5 billion lawsuit in U.S. for tracking 'private' internet use
(Reuters) - Google was sued on Tuesday in a proposed class action accusing the internet search company of illegally invading the privacy of millions of users by pervasively tracking their internet use through browsers set in “private” mode.
Eric Lawrence (PM Edge из Microsoft) собрал свои статьи про CORS в одном посте.
https://textslashplain.com/2020/06/03/same-origin-policy-cors/
https://textslashplain.com/2020/06/03/same-origin-policy-cors/
text/plain
Same Origin Policy & CORS
I wrote some blog posts back in my IEBlog days and they keep getting lost. So I’m linking them here. I’ll probably add some more new content here in the future. Explaining Same-Origin-P…
Axel Rauschmayer написал короткую статью о высших типах в TypeScript — any и unknown.
https://2ality.com/2020/06/any-unknown-typescript.html#example%3A-json.parse()
https://2ality.com/2020/06/any-unknown-typescript.html#example%3A-json.parse()
Результаты третьего дня июньской встречи #TC39 (первый день здесь, второй здесь)
Пропозал: Module attributes (stage 1 -> stage 2)
Слайды: https://docs.google.com/presentation/d/1MOVBh0gw7-tqEx-maEvS2HsgwXd5X5pcwL80V67xCIg
Мнения разделились, и некоторые делегаты посчитали, что атрибуты позволят инструментам разделить экосистему, также был поднят вопрос ограничения против расширяемости атрибутов. Остаётся на stage 1.
Пропозал: Built In Modules (stage 1 обновление)
Слайды: https://github.com/msaboff/tc39/blob/master/Built%20In%20Modules%20TC39%20June%202020.pdf
Практически все предыдущие проблемы (такие как способ поллифиллить встроенные модули) были решены. Некоторые высказывают опасения насчет дихотомии глобальных неймспейсов и встроенных модулей. Чемпион собирается просить stage 2 для пропозала на ближайших встречах.
Пропозал: Deep Path Properties in Record Literals (stage 0 -> stage 1)
Слайды: https://button.dev/talks/deep-path-properties-tc39-june-2020.pdf
Было много обсуждений и остались некоторые сомнения, но пропозал смог взять stage 1. Из забавного: упомянули такой термин как monocle-mustache оператор aka “
Пропозал: Restrict subclassing support in built-in methods (stage 0 -> stage 1)
Слайды: https://docs.google.com/presentation/d/1vJeJFueDwrj8ebXFdGsEO1J_Q-DzfU01dLEGVd26A9o
Проблемная область очень сложная и является трепетной темой для имплементоров. Пропозал взял stage 1, но будет сложно идти дальше, это понимают и чемпионы.
Пропозал: Async Context (stage 0 -> stage 1)
Слайды: https://docs.google.com/presentation/d/1c9gZv0e_3kITQI7Wwo2Cap3WviudORclE2dWsX4SIJ8
На самом деле это воскрешённая и слегка изменённая версия старого пропозала Zones, который так и не смог сдвинуться со stage 0. Zones были отозваны чемпионом, т.к. тот прекратил своё участие в TC39. Новый пропозал пока тоже не смог взять stage 1, продвижение было заблокировано сразу несколькими делегатами.
Пропозал: Intl Enumeration API (stage 0 -> stage 1)
Слайды: https://docs.google.com/presentation/d/17bkiVWuYxhMc24If72d6oENK3G6G-irO2EB4EEQCgxU/edit?usp=sharing
Были высказаны некоторые опасения относительно проблемы отслеживания пользователя (fingerprinting) через это API, но пропозал взял stage 1.
Пропозал: Module attributes (stage 1 -> stage 2)
Слайды: https://docs.google.com/presentation/d/1MOVBh0gw7-tqEx-maEvS2HsgwXd5X5pcwL80V67xCIg
Мнения разделились, и некоторые делегаты посчитали, что атрибуты позволят инструментам разделить экосистему, также был поднят вопрос ограничения против расширяемости атрибутов. Остаётся на stage 1.
Пропозал: Built In Modules (stage 1 обновление)
Слайды: https://github.com/msaboff/tc39/blob/master/Built%20In%20Modules%20TC39%20June%202020.pdf
Практически все предыдущие проблемы (такие как способ поллифиллить встроенные модули) были решены. Некоторые высказывают опасения насчет дихотомии глобальных неймспейсов и встроенных модулей. Чемпион собирается просить stage 2 для пропозала на ближайших встречах.
Пропозал: Deep Path Properties in Record Literals (stage 0 -> stage 1)
Слайды: https://button.dev/talks/deep-path-properties-tc39-june-2020.pdf
Было много обсуждений и остались некоторые сомнения, но пропозал смог взять stage 1. Из забавного: упомянули такой термин как monocle-mustache оператор aka “
.{
“. По-моему забавно.Пропозал: Restrict subclassing support in built-in methods (stage 0 -> stage 1)
Слайды: https://docs.google.com/presentation/d/1vJeJFueDwrj8ebXFdGsEO1J_Q-DzfU01dLEGVd26A9o
Проблемная область очень сложная и является трепетной темой для имплементоров. Пропозал взял stage 1, но будет сложно идти дальше, это понимают и чемпионы.
Пропозал: Async Context (stage 0 -> stage 1)
Слайды: https://docs.google.com/presentation/d/1c9gZv0e_3kITQI7Wwo2Cap3WviudORclE2dWsX4SIJ8
На самом деле это воскрешённая и слегка изменённая версия старого пропозала Zones, который так и не смог сдвинуться со stage 0. Zones были отозваны чемпионом, т.к. тот прекратил своё участие в TC39. Новый пропозал пока тоже не смог взять stage 1, продвижение было заблокировано сразу несколькими делегатами.
Пропозал: Intl Enumeration API (stage 0 -> stage 1)
Слайды: https://docs.google.com/presentation/d/17bkiVWuYxhMc24If72d6oENK3G6G-irO2EB4EEQCgxU/edit?usp=sharing
Были высказаны некоторые опасения относительно проблемы отслеживания пользователя (fingerprinting) через это API, но пропозал взял stage 1.
⚡️ Новый пропозал Generic Comparison переходит на stage 1, но с условием, что это будет покрывать только массивы
GitHub
hemanth/proposal-generic-comparison
Proposal Generic Comparison . Contribute to hemanth/proposal-generic-comparison development by creating an account on GitHub.
⚡️ Новый пропозал .item() переходит на stage 1
GitHub
GitHub - tc39/proposal-relative-indexing-method: A TC39 proposal to add an .at() method to all the basic indexable classes (Array…
A TC39 proposal to add an .at() method to all the basic indexable classes (Array, String, TypedArray) - GitHub - tc39/proposal-relative-indexing-method: A TC39 proposal to add an .at() method to al...
Вебня
⚡️ Пропозал Module attributes не смог перейти на stage 2, но возможно к этой теме ещё вернутся завтра.
⚡️ Сегодня была вторая попытка для продвижения пропозала Module attributes (первая была вчера) иии stage 2 взят!
Инженеры, работающие над SpiderMonkey, написали о том, как они обновляли свой движок для регулярных выражений в коллаборации с командой V8.
https://hacks.mozilla.org/2020/06/a-new-regexp-engine-in-spidermonkey/
https://hacks.mozilla.org/2020/06/a-new-regexp-engine-in-spidermonkey/
Mozilla Hacks – the Web developer blog
A New RegExp Engine in SpiderMonkey
Regular expressions – commonly known as RegExps – are a powerful and heavily used tool for manipulating strings in JavaScript. This post describes how we updated the RegExp engine in ...
Исследователь безопасности Bhavuk Jain написал об обнаруженной им уязвимости нулевого дня в способе аутентификации Sign-in with Apple.
https://bhavukjain.com/blog/2020/05/30/zeroday-signin-with-apple/
https://bhavukjain.com/blog/2020/05/30/zeroday-signin-with-apple/
Результаты четвёртого дня июньской встречи #TC39 (первый день здесь, второй здесь, третий тут)
Пропозал: Realms (stage 2 обновление)
Слайды: https://docs.google.com/presentation/d/1TfVtfolisUrxAPflzm8wIhBBv_7ij3KLeqkfpdvpFiQ
Кажется наконец-то этот важный пропозал начинает уверенное движение к stage 3. Перед этим необходимо согласовать дизайн с рабочей группой HTML и W3C TAG.
Пропозал: Smart Unit Preferences in Intl.NumberFormat (stage 0 -> stage 1)
Слайды: https://bit.ly/intl-number-format-usage
Эта фича позволит использовать локализованные единицы измерения, например, километры для измерения расстояния в России и мили для США. Отдельно интересно, что докладчику был задан вопрос о том, как пользователь сможет переопределить единицы измерения. На этот вопрос ответил председатель TG2 Shane Carr, который, как оказалось, готовит черновик пропозала для пользовательских предпочтений. Интересно! Ну а smart unit preferences взяли stage.
Пропозал: Intl.Segmenter (stage 2 обновление)
Слайды: https://docs.google.com/presentation/d/1Pe9eVhgK93cgB3KCufTQvzqCjIYj3RRxJaOeNIbWN_A
Вообще этот пропозал собирался брать stage 3, но чемпион не успел заявить его на продвижений до дедлайна (10 дней до начала встречи TC39). Но кажется пропозал требует уточнения, и возможно не продвинулся бы в любом случае. Надеюсь, что скоро всё же увидим Intl.Segmenter на stage 3, потому что в своей работе не раз испытывал необходимость в таком API.
Пропозал: Generic Comparison (stage 0 -> stage 1)
Слайды: https://docs.google.com/presentation/d/1OO3QwtP4S0SOXGW9m4pdgG_CHo2eCz0sA6u3NXAgb9M/edit?usp=sharing
Переходит на stage 1, но с условием, что он будет покрывать только массивы
Пропозал: .item() (stage 0 -> stage 1)
Слайды: https://docs.google.com/presentation/d/1vRjhR1Vl9GeOeXno-s8DkQppeZFE3xx59Od91HG6db4/edit
Пропозал для того, чтобы брать элементы массива с конца, который все ждут много лет, переходит на stage 1.
Обсуждение: Incubation call chartering
Слайды: <отсутствуют>
Не так давно в рамках TC39 стали проводить отдельные созвоны, позволяющие решить какие-то важные вопросы по конкретным пропозалам или затрагивающие несколько пропозалов. Это должно позволить решать различные проблемы еще до встречи TC39. Созвоны проводятся в течение часа раз в две недели. к участию были приглашены чемпионы пропозалов, которые столкнулись с критикой или недопониманием и все заинтересованные делегаты и приглашенные эксперты.
Пропозал: Module attributes (stage 1 -> stage 2)
Слайды: https://docs.google.com/presentation/d/1MOVBh0gw7-tqEx-maEvS2HsgwXd5X5pcwL80V67xCIg/edit#slide=id.g8634fc5940_28_0
Короткая презентация о решении проблем, озвученных в третий день встречи (ограничение возможностей атрибутов) всё же привела к консенсусу и stage 2.
Обсуждение: Editorial Direction
Слайды: https://docs.google.com/presentation/d/14NsIoRhr-z7HvRG0laq_F2c4iNPHF-Ld17-Yibshdo0
Редакторы спецификации предложили уточнить использование терминологии относительно хоста и имплементации. Дискуссия остаётся открытой.
Пропозал: Realms (stage 2 обновление)
Слайды: https://docs.google.com/presentation/d/1TfVtfolisUrxAPflzm8wIhBBv_7ij3KLeqkfpdvpFiQ
Кажется наконец-то этот важный пропозал начинает уверенное движение к stage 3. Перед этим необходимо согласовать дизайн с рабочей группой HTML и W3C TAG.
Пропозал: Smart Unit Preferences in Intl.NumberFormat (stage 0 -> stage 1)
Слайды: https://bit.ly/intl-number-format-usage
Эта фича позволит использовать локализованные единицы измерения, например, километры для измерения расстояния в России и мили для США. Отдельно интересно, что докладчику был задан вопрос о том, как пользователь сможет переопределить единицы измерения. На этот вопрос ответил председатель TG2 Shane Carr, который, как оказалось, готовит черновик пропозала для пользовательских предпочтений. Интересно! Ну а smart unit preferences взяли stage.
Пропозал: Intl.Segmenter (stage 2 обновление)
Слайды: https://docs.google.com/presentation/d/1Pe9eVhgK93cgB3KCufTQvzqCjIYj3RRxJaOeNIbWN_A
Вообще этот пропозал собирался брать stage 3, но чемпион не успел заявить его на продвижений до дедлайна (10 дней до начала встречи TC39). Но кажется пропозал требует уточнения, и возможно не продвинулся бы в любом случае. Надеюсь, что скоро всё же увидим Intl.Segmenter на stage 3, потому что в своей работе не раз испытывал необходимость в таком API.
Пропозал: Generic Comparison (stage 0 -> stage 1)
Слайды: https://docs.google.com/presentation/d/1OO3QwtP4S0SOXGW9m4pdgG_CHo2eCz0sA6u3NXAgb9M/edit?usp=sharing
Переходит на stage 1, но с условием, что он будет покрывать только массивы
Пропозал: .item() (stage 0 -> stage 1)
Слайды: https://docs.google.com/presentation/d/1vRjhR1Vl9GeOeXno-s8DkQppeZFE3xx59Od91HG6db4/edit
Пропозал для того, чтобы брать элементы массива с конца, который все ждут много лет, переходит на stage 1.
Обсуждение: Incubation call chartering
Слайды: <отсутствуют>
Не так давно в рамках TC39 стали проводить отдельные созвоны, позволяющие решить какие-то важные вопросы по конкретным пропозалам или затрагивающие несколько пропозалов. Это должно позволить решать различные проблемы еще до встречи TC39. Созвоны проводятся в течение часа раз в две недели. к участию были приглашены чемпионы пропозалов, которые столкнулись с критикой или недопониманием и все заинтересованные делегаты и приглашенные эксперты.
Пропозал: Module attributes (stage 1 -> stage 2)
Слайды: https://docs.google.com/presentation/d/1MOVBh0gw7-tqEx-maEvS2HsgwXd5X5pcwL80V67xCIg/edit#slide=id.g8634fc5940_28_0
Короткая презентация о решении проблем, озвученных в третий день встречи (ограничение возможностей атрибутов) всё же привела к консенсусу и stage 2.
Обсуждение: Editorial Direction
Слайды: https://docs.google.com/presentation/d/14NsIoRhr-z7HvRG0laq_F2c4iNPHF-Ld17-Yibshdo0
Редакторы спецификации предложили уточнить использование терминологии относительно хоста и имплементации. Дискуссия остаётся открытой.