From: Steven Parkes on
johnson version 2.0.0.pre2 has been released!

* <http://github.com/jbarnette/johnson>
* <http://groups.google.com/group/johnson-talk>

Johnson wraps JavaScript in a loving Ruby embrace. It embeds the Mozilla SpiderMonkey JavaScript runtime as a C extension.

The 2.0.0 prerelese series include TraceMonkey, the evolution of SpiderMonkey, which includes among other things a trace-based JIT compiler for JavaScript. In current prereleases the JIT is enabled for 320bit builds and disabled for 64-bit builds (as they are in the Mozilla builds).

This prerelease includes TraceMonkey from the Firefox 3.6 build branch and fixes all known issues with split global support, adds support for multiple normal global objects, and fixes a few bugs.

Since it's a pre-release, you need to give gem the --prerelease flag to install it, i.e.,

gem install johnson --prerelease

The prerelease code is in the unstable branch of the git repo.

Changes:

2.0.0.pre2 / 2010-02-23

• Raise NoMemoryError as appropriate; acccept a size parameter or env variable for runtime size
• pull latest 1.9.2 SM
• Allow ruby code to create new gobal objects and add preliminary seal support
• Clear parent and prototype on new globals
• Cooperate with StackDeck’s new backtrace-manipulating ways.
• remove thread ref to context (allows collection)
• Remove the old spidermonkey extension.
• Fix include guard for base TM header [Quin Hoxie]