SpiderNode

2016 - 2019
dead
702 commits landed on mozilla's spidernode in the first three months of 2017 and then the graph went flat. it was node.js rebuilt on spidermonkey, the javascript engine inside firefox, using a shim that impersonated v8's api well enough for node's c++ to compile against it. the reason it existed was positron, mozilla's electron-compatible runtime, which needed a node half. positron was shelved. the repository stayed open for another nineteen months before somebody archived it on 19 june 2019.

~ the goodbye ~

Two repositories went up under the mozilla organization on GitHub on 8 April 2016, seven minutes apart. One was positron. The other was spidernode, and its description never changed: Node.js on top of SpiderMonkey. SpiderMonkey is the JavaScript engine in Firefox. Node.js is welded to V8, the engine in Chrome, not loosely but through a C++ API that hundreds of native modules are written against. Swapping the engine underneath means answering that API with something else.

The answer was SpiderShim, a layer that implemented V8's API on top of SpiderMonkey's so Node's existing C++ would compile and link without knowing the difference. The approach was lifted from Microsoft, who had done the same thing in node-chakracore to run Node on Chakra, the engine in Edge. The README said so plainly and said it shared no code with it beyond the build system integration. Myk Melez's name is on most of the commits.

The activity tells the story without commentary. 14 commits in December 2016, then 140 in January 2017, 350 in February, 212 in March. Then 24 in April, 13 in May, 6 in June, 2 in July, 1 in August. Three in November 2017 and that is the last real work. Two commits in April 2019 swapped in a standard code of conduct, a housekeeping pass run across Mozilla's whole GitHub estate. On 18 June 2019 the README got one more line at the top saying the project had been archived, and the archive flag went on the day after. 566 stars, 40 forks.

~ the chronicle ~

Born8 April 2016, when the repository opened
Peak702 commits between January and March 2017
Killed19 June 2019, archived
Lifespan3 years, 2 months
Made byMozilla
Killed byPositron being shelved

~ what it was for ~

Positron was the point. It was Mozilla's experimental Electron-compatible runtime built on Gecko, and Electron by 2016 had quietly won the desktop: Slack, Discord, VS Code and everything that came after were each shipping their own copy of Chromium to your laptop. Mozilla's argument was the one it always makes, that a single engine owning a layer is bad for the layer, applied this time to the thing people were shipping instead of browsers. An Electron clone on Gecko needs a Node that runs on Gecko's engine. That was SpiderNode.

The argument was correct and it did not matter, because the people who would have switched were already shipping Electron apps with a working build and no reason to touch any of it. Node has run on V8 everywhere I have ever seen it, and every alternative engine ended the same way. Microsoft's node-chakracore, the project the shim trick came from, is archived too, last pushed in December 2019 with 1,911 stars on it.

~ the long silence ~

Nineteen months separate the last real commit and the archive flag, and that gap is the part worth looking at. For a year and a half this was a public Mozilla repository with hundreds of stars, an open issue tracker and a README written in the present tense, describing a thing nobody was working on. Somebody landing on it in 2018 had no way to tell. The two commits that finally touched it were about a code of conduct file, not about the code.

What the README still says, under the archive note, is better than any summary of it: the port is in the very early stages, and a lot of work remains to be done before Node works. Under Current status it reports that Node can now be successfully built on top of SpiderMonkey and the very basics seem to work. That text was accurate the day it was written in 2016 and was never updated, so the project was archived while its own front page was still saying it did not run yet.

~ leave a rose ~

an anonymous tribute. one rose per visitor per day.

@}-->-- ... roses left here

~ leave a wreath ~

a rose fades by morning. a wreath stays on this grave for good, with your name on it.

paid once through stripe. payments are handled by OÜ Lakeview, the small company that keeps rip.so running. the money pays for the hosting and the nightly digging. adopt it and the headstone reads "maintained in memory by" you. the groundskeeper plants new wreaths at the next tending, usually within a day.

» one email a week: new graves and the anniversaries of the dead. subscribe

~ leave a note ~

visitors before you have left these graveside notes. anonymous welcome.

other software: Adobe Photoshop Fix, Google Native Client, Namesys, FrontPage Express

also died in 2015-2019: CastleVille, Bukuma!, TmBox

« previous  ·  random  ·  next »