#68
· 2025-02-13
· HTML, CSS, JavaScript, Web Api, compatibility
Interop 2025 is a cross-browser effort to improve the interoperability of the web — to reach a state where each technology works exactly the same in every browser.
In mid 2024, a scope reduction was discussed at the meetings of TC39.
Apparently, some implementors have reservations about the proposal's size and complexity.
As a result, some parts of the proposal were removed and may be added in future proposals instead.
But now, finally, it looks like we may soon see Temporal within browsers and other JavaScript engines.
Until recently, implementors were not allowed to ship Temporal implementations without hiding them behind a flag.
But that restriction was removed from Temporal's README in January.
And in the July meeting of TC39, it was noted that Temporal implementations may ship unflagged.
Even better, the work-in-progress implementations of Temporal in SpiderMonkey (Firefox), V8 (Chrome), and JavaScriptCore (Safari) already pass many of the required feature tests.
The meeting of Ecma TC39 in June 2024 discussed the Temporal proposal that has been in the works for a long time by now.
Unfortunately, the discussion was not about being able to publish it soon. Instead, a scope reduction was proposed.
Apparently, implementors (Google, Apple, Mozilla) have reservations about the proposal's scope size and complexity.
Further information and the exact discussions that took place presumably were not publicly available so far. But now, there is an open PR to add these to the usual repository that contains TC39 meeting notes.
Conclusion: The committee reached consensus that the Temporal proposal is apparently too big. Some parts of it need to be stripped for now and may be reconsidered in follow-up proposals.
Specifically, the following parts will be removed from the current proposal:
Temporal.Calendar
user calendars
Temporal.TimeZone
user time zones
getISOFields() methods
withPlainDate() methods
PlainTime’s toPlainDateTime and toZonedDateTime methods
epochSeconds properties
epochMicroseconds properties
Instant.fromEpochSeconds
Instant.fromEpochMicroseconds
PlainDateTime and ZonedDateTime’s toPlainYearMonth and toPlainMonthDay methods
Instant’s toZonedDateTime method
Now.zonedDateTime
Now.plainDateTime
Now.plainDate
relativeTo option from Duration.add.
Let's hope that at least the subset of Temporal can be published as a standard soon. Ideally with ECMAScript 2025.
Vertical centering with CSS has been easy for a couple of years now. Both flexible box layout and grid layout support it. Just use them together with the align-content property.
div {
display: grid; /* or flex */align-content: center;
}
And it is about to become even simpler. The specification of the align-content property was not limited to flexbox and grid layout, but it also included block containers. No browser supported that so far, though. But that is about to change as Firefox 125, Safari 17.4, and Chrome 123 (will) support it. Supporting browsers will vertically center even without defining a display property.