Telegram Web Link
⚡️ WeakRefs отправляются на stage 4, также от них отделяется CleanupSome, которому присваивается stage 2!
В Firefox 79 (выйдет 28 июля) собираются снова включить SharedArrayBuffer по умолчанию. Ранее поддержка SAB была выключена во всех браузерах в начале 2018 из-за уязвимости и Spectre. Для использования SAB в Firefox потребуется добавить заголовки COOP и COEP.
В Svelte реализовали одну из самых долгожданных фич — поддержку TypeScript.

https://svelte.dev/blog/svelte-and-typescript
Результаты второго дня июльской встречи #TC39. Результаты первого дня здесь.

Пропозал: Promise.any & AggregateError (stage 3 -> stage 4)
Слайды: https://docs.google.com/presentation/d/1PcfPP5nLVG8w5OosQt5PWwOmFUPuD5pg1rgGaF1JVis

Несказанно счастлив переходу этого пропозала на stage 4, т.к. я один из авторов и мной написана значительная часть текста спецификации.


Нормативное изменение: Strictness check for object's SetMutableBinding
Слайды: https://docs.google.com/presentation/d/1O_YdntfiZMTsxX_2FPk1YZypEy1vncL3X1NCg-vmC1E

Поведение, которое Вы никогда бы не обнаружили, потому что так не надо писать код. В любом случае, оно исправлено.


Пропозал: Intl.ListFormat (stage 3 -> stage 4)
Слайды: https://docs.google.com/presentation/d/13gxxnt-JMuWXJhzwuU2jtBRZ8RGJgJ0Y8RsIvHEQU7k/edit#slide=id.p

Пропозал для локалезависимого отображения списков переходит на stage 4.


Пропозал: Intl.DateTimeFormat dateStyle/timeStyle (stage 3 -> stage 4)
Слайды: https://docs.google.com/presentation/d/1USMb1b_1zDMAlw3Aw5k9DpqZsZ3NS_q9gOyhRCQc-qg

Локалезависимое форматирование времени и даты также переходит на stage 4


Нормативное изменение: Fix Function.toString for builtins

Не достигло консенсуса, обсуждение продолжится в четверг (если хватит времени)


Пропозал: WeakRefs (stage 3 -> stage 4)
Слайды: https://docs.google.com/presentation/d/1NYhEELzOnhJGU7inKz0r0TrEa0h33krr1nEb3X_ze5w

Слабые ссылки переходят на stage 4, а CleanupSome ответвляется в отдельный stage 2 пропзал.


Пропозал: Logical Assignment (stage 3 -> stage 4)
Слайды: https://docs.google.com/presentation/d/1rq448C-mzxWzBs6RTInczGTjs4xv5gQenDJY1fGogX0

Берёт stage 4.


Пропозал: Decorators (stage 2 обновление)
Слайды: <позже>

Тут всё сложно. Чемпионы выявили ограничения, которые не позволяют удовлетворить всем требованиям к декораторам. Были представлены эти ограничения, комитет в процессе поиска наиболее удачного решения.


Пропозал: Numeric Separator (stage 3 -> stage 4)
Слайды: https://docs.google.com/presentation/d/1rLT5m3d0yk2KMlka4KZKf2uz9oITdpfr6evAV_jaKcc

Наконец-то решены последние спорные вопросы, и пропозал (уже очень давно реализованный во всех браузерах) попадает на stage 4.


Пропозал: Slice notation (stage 1 -> stage 2)
Слайды: https://docs.google.com/presentation/d/1EBpiGuYn2ChDvcd67fpz6gGY14kO8VCuAKOhFMxOqEQ

Остаётся на stage 1. Некоторые делегаты не одобрили текущую версию предложения.


Пропозал: Temporal (stage 2 обновление)
Слайды: https://pipobscure.dev/slides/temporal-2020-07/

Ну тут всё хорошо. Общими усилиями (в том числе и вашими, дорогие читательи!) собирается нужный фидбек. Думаю, есть все шансы увидеть пропозал на stage 3 уже в этом году.


Пропозал: Import Conditions (stage 2 -> stage 3)
Слайды: https://docs.google.com/presentation/d/18THsm_ZAog70m0ZlEokRCfyrarMiA1yr6YDAvFXjVNU

Пропозал пока что не переходит на stage 3, но в целом, больших проблем нет. Ждём на stage 3 на следующих встречах TC39.


Пропозал: Intl.Segmenter (stage 2 -> stage 3)
Слайды: https://docs.google.com/presentation/d/1LOOt4WPvQdOK3banHkz1V8sdl8Z-7Z9jXBRRS9Ek8-M

Stage 3 взят.


Пропозал: Iterator Helpers (stage 2 обновление)
Слайды: https://docs.google.com/presentation/d/1YNLzi_ENRtxp5bjhXMUplQ0VIQBUFLyucbNFt_oaNgQ

В Firefox уже есть тестовая рабочая имплементация (можне даже найти её под флагом в about:config 😉). Были определены ревьюеры для stage 3.


Пропозал: .item() (stage 1 -> stage 2)
Слайды: https://docs.google.com/presentation/d/1N-oXRRKDA7patBA4HIYkzN67j1pbyOxuDZoYRvPFmuA

Stage 2 взят, определены ревьюеры для stage 3.
Вебня pinned «Результаты второго дня июльской встречи #TC39. Результаты первого дня здесь. Пропозал: Promise.any & AggregateError (stage 3 -> stage 4) Слайды: https://docs.google.com/presentation/d/1PcfPP5nLVG8w5OosQt5PWwOmFUPuD5pg1rgGaF1JVis Несказанно счастлив переходу…»
Итоги третьего дня июльской встречи #TC39. Смотрите также результаты первого и второго дня.

Пропозал: Ergonomic brand checks for private fields (stage 2 -> stage 3)

Консенсус на продвижение не был достигнут. Некоторые делегаты высказались за то, чтобы приватные поля сначала попали на стейдж 4.


Пропозал: Upsert (stage 2 обновление)
Слайды: https://docs.google.com/presentation/d/16PtTpuvkTFycaaqkk5XGZRPLNwzUrzBuN9y7VSrGX9k/edit#slide=id.p

Изначально чемпион собирался запрашивать у комитета продвижене на stage 3, но отказался от этого до презентации. Также выявлены новые проблемы. Консенсус не был достигнут.


Пропозал: Number.range (stage 1 -> stage 2)
Слайды: https://docs.google.com/presentation/d/116FDDK2klJoEL8s2Q7UXiDApC681N-Q9SwpC0toAzTU/edit#slide=id.p

Обсуждения не вложились в отведённое время, консенсус не достигнут.


Пропозал: await operations (-> stage 1)
Слайды: https://docs.google.com/presentation/d/116FDDK2klJoEL8s2Q7UXiDApC681N-Q9SwpC0toAzTU/edit#slide=id.g89f56b0333_1_40

Переходит на stage 1.


Пропозал: Array.prototype.unique() (-> stage 1)
Слайды: https://docs.google.com/presentation/d/116FDDK2klJoEL8s2Q7UXiDApC681N-Q9SwpC0toAzTU/edit#slide=id.g89f56b0333_1_150

Переходит на stage 1, но, кажется, имя метода придётся поменять из-за mootools.


Пропозал: Record and Tuple (stage 1 -> stage 2)
Слайды: https://button.dev/talks/record-and-tuple-tc39-july-2020.pdf

Переходит на stage 2! Выбраны ревьюеры для stage 3.


Пропозал: Symbols as WeakMap keys (stage 1 -> stage 2)
Слайды: https://docs.google.com/presentation/d/1AofgrikRJp4vTc_tqlchDk4DU9p4eqZdyxnlrFEYsvc/edit#slide=id.p

Обсуждения не вложились в отведённое время, а также было решено проработать мотивационную часть пропозала.


Пропозал: JSON.parse source text access (stage 1 -> stage 2)
Слайды: https://docs.google.com/presentation/d/1MGJhUvrWl4dE4otjUm8jXDrhaZLh9g7dnasnfK-VyZg/edit?usp=sharing

Stage 2 взят! Выбраны ревьюеры для stage 3.


Пропозал: Arbitrary Module Namespace Identifiers (stage 0 -> stage 1)

Было решено сделать нормативное изменение вместо пропозала на следующих встречах комитета.


Нормативное изменение: Host hooks for Job callbacks
Слайды: https://docs.google.com/presentation/d/19S97ZqhibJABqzeP5ZU6Flk6TVgWzXuvJWFbNTTfpWs/edit?usp=sharing

Продолжение обсуждений с первого дня. Консенсус достигнут.


Нормативное изменение: Function toString for builtins

Продолжение обсуждений с первого дня. Консенсус достигнут.
Вебня pinned «Итоги третьего дня июльской встречи #TC39. Смотрите также результаты первого и второго дня. Пропозал: Ergonomic brand checks for private fields (stage 2 -> stage 3) Консенсус на продвижение не был достигнут. Некоторые делегаты высказались за то, чтобы приватные…»
requestVideoFrameCallback — аналог requestAnimationFrame, но для видео. Пока что добавлен только в браузеры на основе Chromium 83+.

https://web.dev/requestvideoframecallback-rvfc/

С черновиком спецификации Web Platform Incubation Community Group можно ознакомиться вот тут: https://wicg.github.io/video-rvfc/
В Chrome 85 (выйдет 25 августа) помимо прочего появятся две новых фичи под origin trial:
- WebHID API — позволяет использовать различные устройства управления вроде геймпадов через драйвера операционной системы
- потоковые Fetch запросы — возможность отправить запрос еще до того, как будет полностью доступно тело запроса, что полезно, например, для отправки данных, постепенно генерируемых на клиенте (аудио, видео, вводимые данные)
2025/07/09 19:15:17
Back to Top
HTML Embed Code: