Intent to Prototype: Temporal in ECMA262

278 views
Skip to first unread message

Frank Tang

unread,
Jun 24, 2021, 12:23:53 PM6/24/21
to blink-dev, Frank Yung-Fong Tang, Nebojša Ćirić, Shane Carr, Luke Swartz, Adam Klein, Jakob Kummerow, Shu-yu Guo

Contact emails

ft...@chromium.orgs...@chromium.org

Explainer

https://tc39.es/proposal-temporal/docs/
https://tc39.es/proposal-temporal/

Specification

https://tc39.es/proposal-temporal/

Summary

Temporal API https://github.com/tc39/proposal-temporal in ECMA262 is a new API that provides standard objects and functions for working with dates and times. Date has been a long-standing pain point in ECMAScript. This proposes Temporal, a global Object that acts as a top-level namespace (like Math), that brings a modern date/time API to the ECMAScript language. For a detailed breakdown of motivations, see: https://maggiepint.com/2017/04/09/fixing-javascript-date-getting-started/



Blink component

Blink>JavaScript>API

Motivation

Date has been a long-standing pain point in ECMAScript. This proposes Temporal, a global Object that acts as a top-level namespace (like Math), that brings a modern date/time API to the ECMAScript language. For a detailed breakdown of motivations, see: Fixing JavaScript Date https://maggiepint.com/2017/04/09/fixing-javascript-date-getting-started/



Initial public proposal

https://github.com/tc39/proposal-temporal

Search tags

datetimeTemporal

TAG review

None

TAG review status

Pending

Risks



Interoperability and Compatibility

None



Gecko: No signal

WebKit: No signal

Web developers: No signals


Is this feature fully tested by web-platform-tests?

No

Flag name

None

Tracking bug

https://bugs.chromium.org/p/v8/issues/detail?id=11544

Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5668291307634688

This intent message was generated by Chrome Platform Status.

Jeffrey Yasskin

unread,
Jun 24, 2021, 5:31:18 PM6/24/21
to Frank Tang, blink-dev, Frank Yung-Fong Tang, Nebojša Ćirić, Shane Carr, Luke Swartz, Adam Klein, Jakob Kummerow, Shu-yu Guo
Temporal is Stage 3, which https://mozilla.github.io/standards-positions/#tc39-stage-3 says are all Worth Prototyping.

Also: Yay for getting Temporal!

Jeffrey

--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOcELL8JGNERj3zjL-ae%3D-vQu8S-B8gxXX913uruN62wLQdFGw%40mail.gmail.com.

Mathias Bynens

unread,
Jun 25, 2021, 4:39:14 AM6/25/21
to Frank Tang, blink-dev, Frank Yung-Fong Tang, Nebojša Ćirić, Shane Carr, Luke Swartz, Adam Klein, Jakob Kummerow, Shu-yu Guo
Really excited to see this!

As a point of order, ECMAScript and Intl features aren't generally covered through WPT, but rather through Test262. Should ChromeStatus and the Intent* templates be updated accordingly?

The Test262 tracking issue for Temporal coverage is here: https://github.com/tc39/test262/issues/3002



Flag name

None

Tracking bug

https://bugs.chromium.org/p/v8/issues/detail?id=11544

Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5668291307634688

This intent message was generated by Chrome Platform Status.

--

Mike West

unread,
Jun 29, 2021, 4:09:12 AM6/29/21
to Frank Tang, blink-dev, Frank Yung-Fong Tang, Nebojša Ćirić, Shane Carr, Luke Swartz, Adam Klein, Jakob Kummerow, Shu-yu Guo, Mathias Bynens
Hey folks!

The specification notes that web browsers limit the granularity of `SystemUTCEpochNanoseconds()` to mitigate side-channel attacks (https://tc39.es/proposal-temporal/#sec-temporal-systemutcepochnanoseconds). Can you elaborate on those constraints? Ideally, they'd match the restrictions we placed on `DOMHighResTimeStamp` (5 microseconds for cross-origin isolated environments, 100 microseconds everywhere else

-mike


Anne van Kesteren

unread,
Jul 20, 2021, 11:59:01 AM7/20/21
to Mike West, Frank Tang, blink-dev, Frank Yung-Fong Tang, Nebojša Ćirić, Shane Carr, Luke Swartz, Adam Klein, Jakob Kummerow, Shu-yu Guo, Mathias Bynens
On Tue, Jun 29, 2021 at 10:09 AM Mike West <mk...@chromium.org> wrote:
> The specification notes that web browsers limit the granularity of `SystemUTCEpochNanoseconds()` to mitigate side-channel attacks (https://tc39.es/proposal-temporal/#sec-temporal-systemutcepochnanoseconds). Can you elaborate on those constraints? Ideally, they'd match the restrictions we placed on `DOMHighResTimeStamp` (5 microseconds for cross-origin isolated environments, 100 microseconds everywhere else)

I filed https://github.com/tc39/proposal-temporal/issues/1654 to keep
track of this.
Reply all
Reply to author
Forward
0 new messages