therubyrhino/History.md

169 lines
6.0 KiB
Markdown

## jar-1.7.6 2015-04-29
* updated to Mozilla's Rhino 1.7R5 release from 2015-04-15, notes:
https://github.com/mozilla/rhino/releases/tag/Rhino1_7_6_RELEASE
## jar-1.7.5 2015-04-29
* updated to Mozilla's Rhino 1.7R5 release from 2015-01-29, notes:
https://github.com/mozilla/rhino/releases/tag/Rhino1_7R5_RELEASE
## 2.0.3 2014-02-20
* minor fix for time_to_js when scope not set (#27)
* Jar path now avoids using a glob, which doesn't work inside a jar (#26)
* use Rhino.warn explicitly otherwise it's a Kernel.warn
## 2.0.2 2012-12-05
* handle Rhino's 64K code generation (method) limit on the fly (#23)
* correct explicit Ruby equality == and eql? (JRuby 1.7.1 compat)
* allow to set javascript version programatically - globally also allow
reading it from system properties by default
* allow to set optimization level globally also allow reading it from
system properties by default
* make sure Ruby function wrapper has (Ruby) #call semantics just like
JavaScript functions exposed into the Ruby side
* function's return value should be converted to Ruby (Ruby #call style)
## 2.0.1 2012-08-24
* JSError improvement to preserve nested Ruby error message
* jar-1.7.4 regression fix e.g when loading less (#25)
* error.message should be a String value (1.9.3 compat)
## jar-1.7.4 2012-08-02
* updated to new Mozilla Rhino 1.7R4 release, notes:
https://developer.mozilla.org/en/New_in_Rhino_1.7R4
## 2.0.0 2012-08-02
This release is functionally the same as therubyrhino-1.73.5 as long
as the therubyrhino_jar-1.7.3 gem dependency is used along with it.
* new versioning scheme - old scheme used for the jar gem
* moved out the rhino.jar into a separate therubyrhino_jar gem
## jar-1.7.3 2012-08-02
* therubyrhino_jar gem packaged with Mozilla Rhino 1.7R3
## 1.73.5 2012-07-25
* #to_s functionName typo fix for org.mozilla.javascript.ScriptStackElement
* make sure thrown values are correctly raised from inside JS functions
* a better #inspect for native rhino objects
* correct JavaScript error handling for Function#apply
## 1.73.4 2012-05-21
* allow rhino.jar path overrides with Rhino::JAR_PATH
* 'correct' JSError#inspect - show thrown value
* fix JSError#javascript_backtrace to be an array and add it on top of the
(ruby) backtrace
* make sure JSError#cause always points to native rhino cause (#19)
* avoid using instance variables with 'native' JS::Context (JRuby 1.7 warnings)
## 1.73.3 2012-04-23
RedJS 0.4 compatible
* allow try-catch-ing ScriptError (besides StandardError) in JS
* support for yield in JS property access via the [], []= methods
* refactor access implementations to classes + introduce a shared base
* missing explicit require 'rhino/version'
* Ruby StandardError wrapping so they can be try-catched as JS "error" values
* Rhino::Context.new is expected to yield when block passed
## 1.73.2 2012-04-11
RedJS 0.2.1 compatible
* improve JSError#message + add JSError#value to reflect throw JS value
* correctly convert hashes nested within arrays to_javascript (#12)
* full jruby --1.9 compatibility
* Context.default_factory - no longer use a new factory per context
* restrictable limits now require Contex.new(:restrictable => true)
* added Context#timeout_limit (to complete instruction_limit)
## 1.73.1 2011-11-28
NOTE: this is a "major" code update from 1.73.0 with some incompatibilities
although keeping the bits backward compatible as much as possible :
* add a JS:Function#apply to be used for calling functions from Ruby
* add a JS:Function#bind usable with JS functions from Ruby
* JS:Function#call should work similar to Method/Proc#call
* customizable scriptable access module for resolving Ruby properties from JS
with TRR compatible Ruby::DefaultAccess and a custom Ruby::AttributeAccess
* implement JavaScript function style argument filling/slicing (for Ruby)
* delegate to hash like method []/[]= when wrapped subject supports them
* introduce Ruby::Constructor JS wrapper for Ruby classes
* hande int JavaScript property resolution
* make sure Time -> Date conversion happens as well
* deprecate JavascriptError use JSError instead with a javascript_backtrace fix
* avoid using Rhino::To.javascript instead use Rhino.to_javascript etc.
* NativeObject/NativeFunction got removed to avoid wrapping - instead Rhino's
"native" Java classes are customized using JRuby's Java integration
* support for setting JS version via Context.version
* Rhino::J gets deprecated it's now know as Rhino::JS
## 1.73.0 2011-11-28
* upgrade to rhino-1.7R3
* cache objects passed to context - same object passed twice ends up the same
* properly map ruby Time objects to javascript Date
* jruby --1.9 improvements
## 1.72.8 2011-06-26
* fix passing of options hash to ruby.
## 1.72.6 2009-11-30
* 2 major enhancements:
* evaluate an IO object such as a file or an socket input stream
* load javascript sources directly into the context with the file system
## 1.72.5 2009-11-12
* 2 major enhancements:
* evaluate javascript with a ruby object as it's scope using Context#open(:with => object)
* add eval_js() method to Object to evaluate in the context of that object
## 1.72.4 2009-11-12
* 3 major enhancements:
* automatically wrap/unwrap ruby and javascript arrays
* automatically convert ruby method objects and Proc objects into javascript functions
* Make functions defined in javascript callable from ruby
## 1.72.3 2009-11-11
* 4 major enhancements:
* greatly simplified interface to context by unifying context and scope
* remove Context#open_std()
* remove Context#standard
* remove Context#init_standard_objects
## 1.72.2 2009-11-10
* 1 major enhancement:
* ability to limit the instruction count for a context
## 1.72.1 2009-11-09
* 4 major enhancements:
* easily manipulate javascript objects from ruby (NativeObject)
* make NativeObject Enumerable
* to_h and to_json for NativeObject
* embed ruby instances and call methods from javascript
## 1.72.0 2009-09-24
* 2 major enhancements:
* evaluate javascript in jruby
* embed callable ruby objects in javascript