Version 0.9.5.
Parser demo: place the output in a read-only textarea.

This improves the demo parser to handle large JSON output.

http://code.google.com/p/esprima/issues/detail?id=91
Future reserved word should throw a different exception.

Patch by Yusuke Suzuki <utatane.tea@gmail.com>.

http://code.google.com/p/esprima/issues/detail?id=93
Ensure that for in has a single variable declaration.

Patch by Yusuke Suzuki <utatane.tea@gmail.com>.

http://code.google.com/p/esprima/issues/detail?id=94
Fallback if CodeMirror does not work properly.

Unfortunately we have to use User Agent detection to blacklist the
non-working browsers.

http://code.google.com/p/esprima/issues/detail?id=95
Non-native JSON for older browsers.

This also makes Safari 3 to pass all the tests and demos.

http://code.google.com/p/esprima/issues/detail?id=87
Ensure Opera 9.64 passes the unit tests.

Workaround a non-standard toString() on the exception object, which
produces false positive during the excepted vs actual checks.

http://code.google.com/p/esprima/issues/detail?id=96
Fix JSON implementation to work with Opera 9.

See http://my.opera.com/community/forums/topic.dml?id=215757.
Unicode literals cause problems if they are used within regular
expression literals.

http://code.google.com/p/esprima/issues/detail?id=87
Fix trailing commas.

Trailing commas in object literal break older browsers, e.g. Opera 9.

http://code.google.com/p/esprima/issues/detail?id=5
Expand the browser support to include Firefox 2, Safari 3 and Opera 9.

http://code.google.com/p/esprima/issues/detail?id=87
http://code.google.com/p/esprima/issues/detail?id=96
Any version of Chrome will pass the tests.

http://code.google.com/p/esprima/issues/detail?id=87
Unbreak Safari 4 in the compatibility tests.

Only add the assert() function in the top-level object.
This overcomes Safari 4 weirdness of its JSON.stringify, which
includes 'assert' in the resulting string.

http://code.google.com/p/esprima/issues/detail?id=86
Support Internet Explorer <= 7.

Due to performance reason, the tokenizer can't use charAt() and must use
string indexing instead. Since string indexing is not support on IE <=7,
convert the input code into an array of character.

http://code.google.com/p/esprima/issues/detail?id=22
Use XHR to load the data for the benchmarks suite.

While at that, the Run button to trigger the benchmarks is also added.

An external library, https://github.com/ilinsky/xmlhttprequest, is used
for cross-browser XML Http Request object.

http://code.google.com/p/esprima/issues/detail?id=39
http://code.google.com/p/esprima/issues/detail?id=23
Use XHR to load the data for the speed comparison tests.

Just like in the previous commit but now it is done to the comparison
test page as well.

http://code.google.com/p/esprima/issues/detail?id=39
http://code.google.com/p/esprima/issues/detail?id=23
Clean up DOM text handling in the speed test pages.

http://code.google.com/p/esprima/issues/detail?id=102
Fix potential exception when parsing function construct.

When parsing the following code (with range:true):
  '(function(){})'

the post-parsing traversal function tries to handle the null object,
which then fails miserably.

The solution is to guard the traversal properly against null.

http://code.google.com/p/esprima/issues/detail?id=99
Update CodeMirror to version 2.2.

http://code.google.com/p/esprima/issues/detail?id=103
New example: regular expression collector.

http://code.google.com/p/esprima/issues/detail?id=104
Add jQuery Mobile to the benchmarks suite.

http://code.google.com/p/esprima/issues/detail?id=101