October 28, 2004

State of the Resurrection

Just posted a message to the NJS development list talking about the current status of the project:

OK, I've been very delinquent in composing this email. For that I sincerely apologize.

First, I should mention about my situation... persistant rumors on the mailing list about my demise are vastly exaggerated. I have had problems with a pair of epilepsy induced car crashes (ironically, the only two times I've had a seizure), but things are well under the control of medication on that front. I did loose my job back in January, and had either been so depressed I was sleeping 12 hours a day and playing an MMORPG the other 12, or busy hunting for a job. But now that I have found productive employment again, things are able to start heating up on the NJS front.

Probably the biggest thing is that I went crazy at my domain registrar and picked up njs-javascript.org. Redirects from everything important to their new locations are in place; everything should be transparent. In conjunction with this, now is the time to bid adieu to Sourceforge. They're a great site and all, but their recent fiasco with CVS services shown me that outsourcing bites.

Also, the move away from Sourceforge is conditioned by the fact that I've fallen in love with Subversion. It makes things simple and means I don't have to muck about with mapping CVS users to a cvs account; the web server already does that. Add in mod_macro, and management becomes uber-simple. I've written up info on how to access the NJS repo at http://www.njs-javascript.org/svn.html. If you happen to be a died-in-the-wool CVS fanatic, fear not; we're going to be keeping the anonymous CVS access and mirroring changes as they show up in SVN.

Since we're throwing the baby out with the bathwater, lists will end up moving to lists.njs-javascript.org. Since I can't get list preferences from SF (and I have asked about this), I will simply do a bulk add of everyone on one of the SF lists to their new equivalent on lists.njs-javascript.org. This means that if you had changed something in your subscription, you'll have to do it again once the first-of-the-month password reminder comes from Mailman.

Now that we have infrastructure covered, its time we got to the meat and potatoes: the code. As far as I can see, the following points need to be addressed before Resurrection can go live, if you'll pardon the pun:

* General Fixes: Small things, really. Convience functions to throw exceptions easily from builtin code. Separation of default and ECMA environments. Memory management fixes. Most of these are in BugZilla at http://bugs.njs-javascript.org with a target milestone of "Resurrection".

* Regular Expression Engine: Verify the test suite and weed out incorrect cases on Mozilla JS engines (SpiderMonkey and Rhino) and Microsoft JScript engine. Fix test failures from revamped suite. Write glue to allow engine use from VM (RegExp object).

* Convert Builtins to JIG: Finish converting builtins to jig.

* Documentation: My writing sucks. Must steal documentation about the JavaScript language from somewhere. Must document newly written tools such as jig and jigdoc. And must add jigdoc comments to the default builtins in order to be able to add them to the main manual.

* And anything else I may have forgotten about.

As for granting commit rights to the repository, I'm all for it. Just speak up (letting me know what area you'd like to work on - mainly for contributors information on the webpage), and I will grant them. After letting this thing languish for more than five years, I know I can't do it all (as much as I would like to be omnipotent, it just ain't gonna happen until I can learn to impersonate Linus). If there turns out to be enough interest, I will probably institute a lieutenant type subsystem "ownership" policy.

Hopefully, it won't be so long the next time I have to write one of these...if not, just give me a swift kick, and I'll come a' flying.


Posted by bbassett at October 28, 2004 07:27 PM