Skip to content

Commit 538cc6f

Browse files
dminormgaudet
authored andcommitted
Add blog post about shipping temporal
1 parent 53eaba2 commit 538cc6f

1 file changed

Lines changed: 45 additions & 0 deletions

File tree

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
---
2+
layout: post
3+
title: "Shipping Temporal"
4+
date: 2025-04-18 12:00:00 -0600
5+
author: Daniel Minor
6+
---
7+
8+
The [Temporal proposal](https://github.com/tc39/proposal-temporal) provides a
9+
replacement for `Date`, a long standing pain-point in the JavaScript language.
10+
This [blog post](https://maggiepint.com/2017/04/09/fixing-javascript-date-getting-started/)
11+
describes some of the history and motivation behind the proposal. The
12+
Temporal API itself is well docmented on
13+
[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Temporal).
14+
15+
Temporal reached Stage 3 of the [TC39 process](https://tc39.es/process-document/) in March 2021.
16+
Reaching Stage 3 means that the specification is considered complete, and that the proposal is
17+
ready for implementation.
18+
19+
SpiderMonkey began our implementation that same month, with the initial work
20+
tracked in [Bug 1519167](https://bugzilla.mozilla.org/show_bug.cgi?id=1519167).
21+
Incredibly, our implementation was not developed by Mozilla employees, but was contributed
22+
entirely by a single volunteer, André Bargull. That initial bug consisted of 99 patches, but
23+
the work did not stop there, as the specification continued to evolve as problems were found
24+
during implementation. Beyond contributing to SpiderMonkey, André filed close to
25+
[200 issues](https://github.com/tc39/proposal-temporal/issues?q=is%3Aissue%20state%3Aclosed%20author%3Aanba)
26+
against the specification. [Bug 1840374](https://bugzilla.mozilla.org/show_bug.cgi?id=1840374)
27+
is just one example of the massive amount of work required to keep up to date with the
28+
specification.
29+
30+
As of Firefox 139, we've enabled our Temporal implementation by default, making
31+
us the first browser to ship it. Sometimes it can seem like the ideas
32+
of open source, community, and volunteer contributors are a thing of the past,
33+
but the example of Temporal shows that volunteers can still have a meaningful impact
34+
both on Firefox and on the JavaScript language as a whole.
35+
36+
## Interested in contributing?
37+
38+
Not every proposal is as large as Temporal, and we welcome contributions of
39+
all shapes and sizes. If you're interested in contributing to SpiderMonkey,
40+
please have a look at our
41+
[mentored bugs](https://bugzilla.mozilla.org/buglist.cgi?query_format=advanced&emailbug_mentor2=1&emailtype2=regexp&resolution=---&email2=.*&component=JavaScript%20Engine&component=JavaScript%20Engine%3A%20JIT&component=JavaScript%3A%20GC&component=JavaScript%3A%20Internationalization%20API&component=JavaScript%3A%20Standard%20Library&list_id=17451567&classification=Client%20Software&classification=Developer%20Infrastructure&classification=Components&classification=Server%20Software&classification=Other&product=Core).
42+
You don't have to be an expert :). If your interests are more on the specification side,
43+
you can also check out how to
44+
[contribute to TC39](https://github.com/tc39/ecma262/blob/HEAD/CONTRIBUTING.md).
45+

0 commit comments

Comments
 (0)