Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

v1.4.10

Version 1.4.10 (2015-06-26)
News:

* Fixed checking the return value of malloc() in case allocation fails.

* The C++ abort, bug, warn methods use the logger facility.

* Internal locking is improved.

* Rubinius::Metrics performance counters are now only counters and not gauges
  because counters preserve their characteristics under sampling.

* Rubinius::Metrics FileEmitter writes performance counters to a specified
  file every -Xsystem.metrics.interval milliseconds.

* Object#equal? is used for Symbol#==.

* The young generation garbage collector size and lifetime auto-tuning is
  removed. The size can be set with -Xgc.young_bytes, which defaults to 40mb.
  The lifetime can be set with -Xgc.young_lifetime, which defaults to 2.

* Comparable#== uses a recursion guard instead of rescuing SystemStackError.

* Marshal#load compatibility is improved for an instance of a Hash that has
  been extended.

* Bundler is updated to 1.10.5.

Changelog:

* Updated Bundler to 1.10.5. (Brian Shirai)
* Added Marshal#load spec for extended Array. (Brian Shirai)
* Fixed Marshal#construct_hash to handle edge case of extended Hash (sshao)
* added edge-case Marshal#load spec for extended Hashes containing user-marshaled objects (sshao)
* Added spec for Comparable#<=> with #<=> calling super. (Benoit Daloze)
* Added spec for Comparable#<=> without #<=> defined. (Benoit Daloze)
* Changed Comparable#== to use a recursion guard. (Benoit Daloze)
* Added a couple more machine metrics. (Brian Shirai)
* A few more JIT metrics. (Brian Shirai)
* Rewrote Rubinius::Metrics. (Brian Shirai)
* Fixed Marshal#construct_hash to handle edge case of extended Hash (sshao)
* added edge-case Marshal#load spec for extended Hashes containing user-marshaled objects (sshao)
* Removed young generation auto-tuning. (Brian Shirai)
* Use BasicObject#equal? for Symbol#==. (Benoit Daloze)
* Added OnStack for backtrace / Location Array. (Brian Shirai)
* Fix for GCC's idiotic warn unused-result. (Brian Shirai)
* Revert "Switched StatsD to counter." (Brian Shirai)
* Fixed parsing StatsD config . (Brian Shirai)
* Added Metrics FileEmitter. (Brian Shirai)
* Fixed parsing config values with '.'. (Brian Shirai)
* Switched StatsD to counter. (Brian Shirai)
* Converted Metrics to only counters. (Brian Shirai)
* Added typedef for InternalThreadList. (Brian Shirai)
* Fixed return value for Rubinius::Mirror::Range#step_float_iterations_size. (Kevin Menard)
* Fixed locking for Thread#critical= lock. (Brian Shirai)
* More locking fixes. (Brian Shirai)
* Emit abort, bug, warn content with logger. (Brian Shirai)
* Added log of exit status. (Brian Shirai)
* Fixed latent SEGVs from malloc() returning NULL. (Brian Shirai)
* Fixed latent SEGVs from malloc() returning NULL. (Brian Shirai)
* Updated bundler to 1.10.4. (Brian Shirai)

Read release notes

v1.4.9

Version 1.4.9 (2015-06-16)
News:

* Thread synchronization accessing an internal data structure is improved.

* Trapped signal procs are processed on a dedicated thread rather than being
  interleaved with a program threads.

* Array#zip compatibility is improved.

* The C-API prototype for rb_ary_entry is fixed.

* Marshal correctly unmarshals an object that was a Bignum on 32bit and is a
  Fixnum on 64bit.

* Rubinius::Thunk#value accessor is added.

* Struct#each_pair compatibility is improved.

* Pre-installed gems are updated:
  - bundler 1.9.9 -> 1.10.4
  - json 1.8.2 -> 1.8.3
  - rb-readline 0.5.2 -> 0.5.3
  - rubysl-base64 1.0.0 -> 1.0.1
  - rubysl-digest 1.0.1 -> 1.2.0

* RubyGems is updated to 2.4.8. See CVE-2015-3900.

Changelog:

* Updated gems_list.txt. (Brian Shirai)
* Removed SYNC_TL and other threading fixes. (Brian Shirai)
* Fix some sharing specs for Kernel#{send|__send__|public_send} (Kenichi Kamiya)
* Fix some sharing specs for Marshal.#{load|restore} (Kenichi Kamiya)
* Fix some sharing specs for Hash#{store|[]=} (Kenichi Kamiya)
* Fix some sharing specs for Enumerable#{collect_concat|flat_map} (Kenichi Kamiya)
* Fix some sharing specs for Dir.{exist?|exists?} (Kenichi Kamiya)
* Fix some sharing specs for Array#{slice|[]} (Kenichi Kamiya)
* Fix some sharing specs for Array#{inspect|to_s} (Kenichi Kamiya)
* Delegate Proc#source_location to Method#source_location when the proc was created from a method (Rui Serra)
* Updated pre-installed gems. (Brian Shirai)
* Update LICENSE year range to 2015. (Joe Eli McIlvain)
* Fixed broken SignalException spec. (Brian Shirai)
* Reworked signal handling. Closes #3418. (Brian Shirai)
* Fix Array#zip for enumerator arguments. Fixes #3436 (Kenichi Kamiya)
* Add Array#zip specs for enumerator arguments (Kenichi Kamiya)
* Updated rubygems to 2.4.8. Closes #3435 (Brian Shirai)
* Unspecify OSX image (Tamir Duberstein)
* Add some capi hash functions (Tamir Duberstein)
* Correct rb_ary_entry declaration (Tamir Duberstein)
* Fix OSX build to use llvm35 (Tamir Duberstein)
* fixed construct_bignum to always add object to lookup table (sshao)
* Added Bignum specs for unmarshaling 32-bit Bignums on 64-bit platforms (sshao)
* Initialize FinalizeObject::kind to a known value. (Joe Eli McIlvain)
* Add specs for Rubinius::Thunk#value accessors. (Joe Eli McIlvain)
* Add Rubinius::Thunk#value accessors. (Joe Eli McIlvain)
* Fix Struct#each_pair for block variable (Kenichi Kamiya)
* Add a Struct#each_pair spec to check block variable (Kenichi Kamiya)
* Fix a matcher of Struct#each_pair spec (Kenichi Kamiya)
* Use before in Struct#each_pair specs (Kenichi Kamiya)
* Fixed copy-paste error in libsodium build. (Brian Shirai)

Read release notes

v2.5.7

Version 2.5.7 (2015-06-16)
News:

* Thread synchronization accessing an internal data structure is improved.

* The C-API defines macros for HAVE_RB_HASH_DUP and HAVE_RB_HASH_FREEZE.

* Bundler is updated to 1.10.4.

Changelog:

* Updated bundler to 1.10.4. (Brian Shirai)
* Removed SYNC_TL and other threading fixes. (Brian Shirai)
* Announces new capi hash functions. (Filipe Dias)
* Fix some sharing specs for Kernel#{send|__send__|public_send} (Kenichi Kamiya)
* Fix some sharing specs for Marshal.#{load|restore} (Kenichi Kamiya)
* Fix some sharing specs for Hash#{store|[]=} (Kenichi Kamiya)
* Fix some sharing specs for Enumerable#{collect_concat|flat_map} (Kenichi Kamiya)
* Fix some sharing specs for Dir.{exist?|exists?} (Kenichi Kamiya)
* Fix some sharing specs for Array#{slice|[]} (Kenichi Kamiya)
* Fix some sharing specs for Array#{inspect|to_s} (Kenichi Kamiya)
* Delegate Proc#source_location to Method#source_location when the proc was created from a method (Rui Serra)

Read release notes

v2.5.6

Version 2.5.6 (2015-06-12)
News:

* Trapped signal procs are processed on a dedicated thread rather than being
  interleaved with a program threads.

* Array#zip compatibility is improved.

* The C-API provides rb_hash_dup and rb_hash_freeze.

* The C-API prototype for rb_ary_entry is fixed.

* Marshal correctly unmarshals an object that was a Bignum on 32bit and is a
  Fixnum on 64bit.

* Rubinius::Thunk#value accessor is added.

* Enumerable#each_cons and Enumerator#size compatibility is improved.

* Enumerator::Lazy compatibility is improved.

* Struct#each_pair compatibility is improved.

* Proc#curry compatibility is improved.

* Regexp.new compatibility is improved.

* Method#== compatibility is improved.

* All threads are not forced to checkpoint when checking if the garbage
  collector should run.

* Thread#stop? access to internal state is synchronized.

* Unmanaged resources are finalized immediately.

* ThreadGroup implementation is improved.

* Pre-installed gems are updated:
  - daedalus-core 0.3.0 -> 0.5.0
  - json 1.8.2 -> 1.8.3
  - rb-readline 0.5.2 -> 0.5.3
  - rubysl-digest 2.0.7 -> 2.0.8
  - bundler 1.9.8 -> 1.10.3

* RubyGems is updated to 2.4.8. See CVE-2015-3900.

Changelog:

* Updated pre-installed gems. (Brian Shirai)
* Update LICENSE year range to 2015. (Joe Eli McIlvain)
* Fixed broken SignalException spec. (Brian Shirai)
* Reworked signal handling. Closes #3418. (Brian Shirai)
* Fix Array#zip for enumerator arguments. Fixes #3436 (Kenichi Kamiya)
* Add Array#zip specs for enumerator arguments (Kenichi Kamiya)
* Updated rubygems to 2.4.8. Closes #3435 (Brian Shirai)
* Unspecify OSX image (Tamir Duberstein)
* Add some capi hash functions (Tamir Duberstein)
* Correct rb_ary_entry declaration (Tamir Duberstein)
* Fix OSX build to use llvm35 (Tamir Duberstein)
* fixed construct_bignum to always add object to lookup table (sshao)
* Added Bignum specs for unmarshaling 32-bit Bignums on 64-bit platforms (sshao)
* Initialize FinalizeObject::kind to a known value. (Joe Eli McIlvain)
* Add specs for Rubinius::Thunk#value accessors. (Joe Eli McIlvain)
* Add Rubinius::Thunk#value accessors. (Joe Eli McIlvain)
* Fix Enumerable#each_cons for Enumerator#size with larger argument (Kenichi Kamiya)
* Add an Enumerable#each_cons spec for Enumerator#size (Kenichi Kamiya)
* Fix Enumerator#size for callable Non-Proc size (Kenichi Kamiya)
* Add an Enumerator#size spec for callable Non-Proc size (Kenichi Kamiya)
* Fix Enumerator::Lazy#take with 0 argument (Kenichi Kamiya)
* Add Enumerator::Lazy#take specs with 0 argument (Kenichi Kamiya)
* Fix stop iteration point of Enumerator::Lazy#take (Kenichi Kamiya)
* Fix Enumerator::Lazy#take to switch size with Infinity (Kenichi Kamiya)
* Add an Enumerator::Lazy#take spec to switch size with Infinity (Kenichi Kamiya)
* Fix Struct#each_pair for block variable (Kenichi Kamiya)
* Add a Struct#each_pair spec to check block variable (Kenichi Kamiya)
* Fix a matcher of Struct#each_pair spec (Kenichi Kamiya)
* Use before in Struct#each_pair specs (Kenichi Kamiya)
* Fixed copy-paste error in libsodium build. (Brian Shirai)
* add 2.2 branch to ci (Benny Klotz)
* Added mirror for Proc.__from_block__. (Brian Shirai)
* Use Module#thunk_method in Proc#curry. (Brian Shirai)
* Added mirror for Proc#curry. Improves #3406. (Brian Shirai)
* Fix a __GNUC__ check to work with GCC 5 (Jan Alexander Steffens (heftig))
* Build libsodium. (Brian Shirai)
* Vendored libsodium 1.0.3. (Brian Shirai)
* Reintroduce TypeError raising for Regexp.new (Benny Klotz)
* Reintroduce Number arg specs for Regexp.new (Benny Klotz)
* use already defined methods from the fixture class (Benny Klotz)
* Fix Method#== (Benny Klotz)
* implement specs for comparing a method defined via define_method and a method defined via def (Benny Klotz)
* ported over jruby's fix for Proc#curry, this closes #2951 (Benny Klotz)
* Updated .gitignore. (Brian Shirai)
* Updated daedalus and rubysl-digest. Closes #3312. (Brian Shirai)
* Check for pending GC request without STW. (Brian Shirai)
* Platform-specific gettid. Closes #3404, #3405. (Brian Shirai)
* Updated daedalus-core to 0.5.0. (Brian Shirai)
* Use sychronized check for sleep in Thread#stop?. (Brian Shirai)
* Updated daedalus-core to 0.4.0. (Brian Shirai)
* Clean up a small bit of SharedState cruft. (Brian Shirai)
* Match only v2.x tags. (Brian Shirai)
* Quotes inline code/shell elements (Ben Lovell)
* Wraps CONTRIBUTING at 80 columns (Ben Lovell)
* Finalize unmanaged resources immediately. (Brian Shirai)
* Cleaned up ThreadGroup. (Brian Shirai)
* Clean bundler environment before running Homebrew during configuration (Michał Matyas)

Read release notes

v1.4.8

Version 1.4.8 (2015-06-09)
News:

* Marshal correctly unmarshals an object that was a Bignum on 32bit and is a
  Fixnum on 64bit.

* Regexp.new compatibility is improved.

* Thread#pid is added. It returns a process-unique number for each Thread
  instance.

* All threads are not forced to checkpoint when checking if the garbage
  collector should run.

* Pre-installed gems are updated:
  - json 1.8.2 -> 1.8.3
  - rb-readline 0.5.2 -> 0.5.3
  - rubysl-base64 1.0.0 -> 1.0.1
  - rubysl-digest 1.0.1 -> 1.2.0
  - bundler 1.9.9 -> 1.10.3

Changelog:

* Updated gems_list.txt. (Brian Shirai)
* fixed construct_bignum to always add object to lookup table (sshao)
* Added Bignum specs for unmarshaling 32-bit Bignums on 64-bit platforms (sshao)
* removed ruby_version_is 1.8 guard for bignum in dump_spec (sshao)
* add missing macports? and macports_llvm_config methods to configure (sshao)
* Fixed copy-paste error in libsodium build. (Brian Shirai)
* add 2.2 branch to ci (Benny Klotz)
* Fix a __GNUC__ check to work with GCC 5 (Jan Alexander Steffens (heftig))
* Build libsodium. (Brian Shirai)
* Vendored libsodium 1.0.3. (Brian Shirai)
* Reintroduce TypeError raising for Regexp.new (Benny Klotz)
* Reintroduce Number arg specs for Regexp.new (Benny Klotz)
* use already defined methods from the fixture class (Benny Klotz)
* Fix Method#== (Benny Klotz)
* implement specs for comparing a method defined via define_method and a method defined via def (Benny Klotz)
* Updated .gitignore. (Brian Shirai)
* Updated daedalus and rubysl-digest. Closes #3312. (Brian Shirai)
* Check for pending GC request without STW. (Brian Shirai)
* Platform-specific gettid. Closes #3404, #3405. (Brian Shirai)
* Clean bundler environment before running Homebrew during configuration (Michał Matyas)

Read release notes

v1.4.7

Version 1.4.7 (2015-05-20)
News:

* Array#concat performance is improved.

* Struct performance is improved.

* A deadlock with synchronous JIT compiled is fixed.

* The Console connection mechanism is reworked to avoid littering the file
  system with temporary files when the process is killed.

* The std{in, out, err} file descriptors cannot be closed. If Rubinius is
  exec'd from a process that has closed these file descriptors, new file
  descriptors pointing to temporary files are opened.

* C-API functions and macros are added to support current MRI openssl C-ext.

* System resource finalization does not set up C-API native method mechanisms
  when it is not needed.

* A deadlock updating the internal Metrics data structures is fixed.

* The stack size for internal threads is lowered where appropriate.

* The C-API provides rb_struct_s_members.

* Array#concat is fixed when the array being added to has a shifted start
  index.

* The -Xjit.profile option emits profiling instrumentation in methods compiled
  by the JIT. Also, the JIT is not disabled during profiling when this option
  is specified.

* Thread#pid returns the PID of the thread on Linux and some platform-specific
  integer value on OS X.

* Bundler is updated to 1.9.9.

Changelog:

* Updated bundler to 1.9.9. (Brian Shirai)
* Updated gems_list.txt. (Brian Shirai)
* Updated daedalus-core to 0.5.0. (Brian Shirai)
* Use sychronized check for sleep in Thread#stop?. (Brian Shirai)
* Updated daedalus-core to 0.4.0. (Brian Shirai)
* Clean up a small bit of SharedState cruft. (Brian Shirai)
* Match only v1.x tags. (Brian Shirai)
* Match only v2.x tags. (Brian Shirai)
* Quotes inline code/shell elements (Ben Lovell)
* Wraps CONTRIBUTING at 80 columns (Ben Lovell)
* Finalize unmanaged resources immediately. (Brian Shirai)
* Cleaned up ThreadGroup. (Brian Shirai)
* Updated bundler to 1.9.8. (Brian Shirai)
* Use rubysl-digest 2.0.7 (Yorick Peterse)
* Added RbConfig::CONFIG['THREAD_MODEL'] (Yorick Peterse)
* Added Thread#pid. Closes #3365. (Brian Shirai)
* Removed timeout from Process.detach specs. (Brian Shirai)
* Updated rubinius-profiler. (Brian Shirai)
* Don't disable the JIT if -Xjit.profile. (Brian Shirai)
* Fixed -Xjit.profile. Closes #3212. (Brian Shirai)
* Fixed Array::concat, again. (Brian Shirai)
* Added spec for Array#concat with shifted start. (Brian Shirai)
* Added rb_struct_s_members() (Yorick Peterse)
* Added stdarg.h include to ruby.h. (Brian Shirai)
* Update bundler to 1.9.7. (Brian Shirai)
* Updated rubysl-openssl to 2.3.0. (Brian Shirai)
* Added rb_absint_size. (Brian Shirai)
* Added rb_vsprintf. (Brian Shirai)
* Added C-API specs for rb_vsprintf. (Brian Shirai)
* Added rb_{alloc,free}_tmp_buffer. (Brian Shirai)
* Added C-API specs for rb_{alloc,free}_tmp_buffer. (Brian Shirai)
* Fixed Array#concat. (Brian Shirai)
* Fixed deadlock in Metrics. Possibly related to #3366. (Brian Shirai)
* Disable OS X on Travis awaiting LLVM 3.6 support. (Brian Shirai)
* Simplified node, process info logging format. (Brian Shirai)
* Set stack size for internal threads. (Brian Shirai)
* Introduce unmanaged finalizer kind. (Brian Shirai)
* Added RHASH_SET_IFNONE/rb_hash_set_ifnone (Yorick Peterse)
* Alias rb_funcallv to rb_funcall2 (Yorick Peterse)
* Added macro RSTRING_GETMEM (Yorick Peterse)
* Added rb_sym2str() (Yorick Peterse)
* Added rb_hash_lookup2() (Yorick Peterse)
* Imported ALLOCV macros from MRI (Yorick Peterse)
* Imported ZALLOC/ZALLOC_N from MRI (Yorick Peterse)
* Imported PRI* macros from MRI (Yorick Peterse)
* Fixed Thread#join(timeout). Closes #3390. (Brian Shirai)
* Don't allow closing std{in, out, err}. (Brian Shirai)
* Fill in standard IO file descriptors on startup. (Brian Shirai)
* Reworked Console connection mechanism. (Brian Shirai)
* Fixed deadlock with synchronous JIT. (Brian Shirai)
* Don't allow closing std{in, out, err}. (Brian Shirai)
* Fill in standard IO file descriptors on startup. (Brian Shirai)
* Switch config to .rbxconfig. (Brian Shirai)
* Updated daedalus-core. (Brian Shirai)
* Don't call looping Module#constants from loop in Type.include_modules_from. (Joe Eli McIlvain)
* Better fix for optimized specialization for Struct. (Joe Eli McIlvain)
* Fix optimized specialization for Struct. (Joe Eli McIlvain)
* Improved Array#sample. (Brian Shirai)
* In Array::concat, avoid creating a tuple if the current is large enough. (Joe Eli McIlvain)
* In Array::concat, use Tuple::create_dirty instead of create. (Joe Eli McIlvain)
* Add specs for cases where timezone used was changed. (Filipe Dias)
* Include configuration.hpp from builtin/jit.cpp. Patch by @ff2000. (Joe Eli McIlvain)
* Add guard around reference to RBX_LLVM_VERSION. Patch by @ff2000. (Joe Eli McIlvain)
* Expose logger::write to Ruby. (Brian Shirai)
* Fixed testing Symbol is a valid constant. (Brian Shirai)
* Fix Module::find_method for prepended modules. (Joe Eli McIlvain)
* Add some specs for JIT'd call sites (one failing). (Joe Eli McIlvain)
* Fix method aliasing with prepended modules. (Joe Eli McIlvain)
* Add failing spec for prepended module method aliasing. (Joe Eli McIlvain)
* Fix Module#public_instance_method for prepended modules. (Joe Eli McIlvain)
* Fix Module#instance_method for prepended modules. (Joe Eli McIlvain)
* Use consistent style in prepend specs. (Joe Eli McIlvain)
* Add specs for prepended module method ownership (one failing). (Joe Eli McIlvain)
* Added Rubinius.primitive :variable_scope_allocate. (Joe Eli McIlvain)
* Ruby spec for multibyte constant names (Yorick Peterse)
* Fix detecting of constants with Unicode (Yorick Peterse)
* Updated gems_list.txt. (Brian Shirai)
* Mark RuntimeData correctly. (Brian Shirai)

Read release notes

v2.5.5

Version 2.5.5 (2015-05-15)
News:

* The C-API provides rb_struct_s_members.

* Array#concat is fixed when the array being added to has a shifted start
  index.

* The -Xjit.profile option emits profiling instrumentation in methods compiled
  by the JIT. Also, the JIT is not disabled during profiling when this option
  is specified.

* Thread#pid returns the PID of the thread on Linux and some platform-specific
  integer value on OS X.

* The rubysl-digest gem is updated to 2.0.7.

* Bundler is updated to 1.9.8.

Changelog:

* Updated bundler to 1.9.8. (Brian Shirai)
* Use rubysl-digest 2.0.7 (Yorick Peterse)
* Added RbConfig::CONFIG['THREAD_MODEL'] (Yorick Peterse)
* Added Thread#pid. Closes #3365. (Brian Shirai)
* Removed timeout from Process.detach specs. (Brian Shirai)
* Updated rubinius-profiler. (Brian Shirai)
* Don't disable the JIT if -Xjit.profile. (Brian Shirai)
* Fixed -Xjit.profile. Closes #3212. (Brian Shirai)
* Fixed Array::concat, again. (Brian Shirai)
* Added spec for Array#concat with shifted start. (Brian Shirai)
* Added rb_struct_s_members() (Yorick Peterse)

Read release notes

v2.5.4

Version 2.5.4 (2015-05-13)
News:

* Module#prepend compatibility has been improved.

* Checking if a Symbol is a valid constant is fixed.

* Array#concat and Array#sample performance is improved.

* Struct performance is improved.

* A deadlock with synchronous JIT compiled is fixed.

* The Console connection mechanism is reworked to avoid littering the file
  system with temporary files when the process is killed.

* The std{in, out, err} file descriptors cannot be closed. If Rubinius is
  exec'd from a process that has closed these file descriptors, new file
  descriptors pointing to temporary files are opened.

* C-API functions and macros are added to support current MRI openssl C-ext.

* System resource finalization does not set up C-API native method mechanisms
  when it is not needed.

* A deadlock updating the internal Metrics data structures is fixed.

* The stack size for internal threads is lowered where appropriate.

* The rubysl-openssl version is updated to 2.3.0.

* Bundler is updated to 1.9.7.

Changelog:

* Added stdarg.h include to ruby.h. (Brian Shirai)
* Update bundler to 1.9.7. (Brian Shirai)
* Updated rubysl-openssl to 2.3.0. (Brian Shirai)
* Added rb_absint_size. (Brian Shirai)
* Added rb_vsprintf. (Brian Shirai)
* Added C-API specs for rb_vsprintf. (Brian Shirai)
* Added rb_{alloc,free}_tmp_buffer. (Brian Shirai)
* Added C-API specs for rb_{alloc,free}_tmp_buffer. (Brian Shirai)
* Fixed Array#concat. (Brian Shirai)
* Fixed deadlock in Metrics. Possibly related to #3366. (Brian Shirai)
* Disable OS X on Travis awaiting LLVM 3.6 support. (Brian Shirai)
* Simplified node, process info logging format. (Brian Shirai)
* Set stack size for internal threads. (Brian Shirai)
* Introduce unmanaged finalizer kind. (Brian Shirai)
* Added RHASH_SET_IFNONE/rb_hash_set_ifnone (Yorick Peterse)
* Alias rb_funcallv to rb_funcall2 (Yorick Peterse)
* Added macro RSTRING_GETMEM (Yorick Peterse)
* Added rb_sym2str() (Yorick Peterse)
* Added rb_hash_lookup2() (Yorick Peterse)
* Imported ALLOCV macros from MRI (Yorick Peterse)
* Imported ZALLOC/ZALLOC_N from MRI (Yorick Peterse)
* Imported PRI* macros from MRI (Yorick Peterse)
* Fixed Thread#join(timeout). Closes #3390. (Brian Shirai)
* Don't allow closing std{in, out, err}. (Brian Shirai)
* Fill in standard IO file descriptors on startup. (Brian Shirai)
* Reworked Console connection mechanism. (Brian Shirai)
* Fixed deadlock with synchronous JIT. (Brian Shirai)
* Switch config to .rbxconfig. (Brian Shirai)
* Updated daedalus-core. (Brian Shirai)
* Don't call looping Module#constants from loop in Type.include_modules_from. (Joe Eli McIlvain)
* Better fix for optimized specialization for Struct. (Joe Eli McIlvain)
* Fix optimized specialization for Struct. (Joe Eli McIlvain)
* Improved Array#sample. (Brian Shirai)
* Merge pull request #3386 from fmfdias/add_specs_for_special_timezone_changes (Jesse Cooke)
* In Array::concat, avoid creating a tuple if the current is large enough. (Joe Eli McIlvain)
* In Array::concat, use Tuple::create_dirty instead of create. (Joe Eli McIlvain)
* Add specs for cases where timezone used was changed. (Filipe Dias)
* Include configuration.hpp from builtin/jit.cpp. Patch by @ff2000. (Joe Eli McIlvain)
* Add guard around reference to RBX_LLVM_VERSION. Patch by @ff2000. (Joe Eli McIlvain)
* Expose logger::write to Ruby. (Brian Shirai)
* Fixed testing Symbol is a valid constant. (Brian Shirai)
* Fix Module::find_method for prepended modules. (Joe Eli McIlvain)
* Add some specs for JIT'd call sites (one failing). (Joe Eli McIlvain)
* Fix method aliasing with prepended modules. (Joe Eli McIlvain)
* Add failing spec for prepended module method aliasing. (Joe Eli McIlvain)
* Fix Module#public_instance_method for prepended modules. (Joe Eli McIlvain)
* Fix Module#instance_method for prepended modules. (Joe Eli McIlvain)
* Use consistent style in prepend specs. (Joe Eli McIlvain)
* Add specs for prepended module method ownership (one failing). (Joe Eli McIlvain)
* Added Rubinius.primitive :variable_scope_allocate. (Joe Eli McIlvain)
* Ruby spec for multibyte constant names (Yorick Peterse)
* Fix detecting of constants with Unicode (Yorick Peterse)

Read release notes

v2.5.3

Version 2.5.3 (2015-04-28)
News:

* The default log file location is changed to $TMPDIR or /tmp. The default
name is changed to $program_name-$user.log, where $program name is the
configured executable name and $user is the user running the process. The
default permissions are changed to 0644.

* Logging output now includes system and process information, for example, the
user executing the process, the JIT status, version and commit hash, etc.

* The internal thread infrastructure has been improved around fork(), exec()
and shutdown.

* The process will abort if resources are not available for spawning internal
threads.

* Thread#join has been reworked to use a thread-specific condition variable
and mutex.

* An unconditional (non-level specific) logging method has been added.

* Logging has been added for the command line arguments, fork child PID, and
exec arguments.

* Immediate JIT requests are synchronized.

* Calls to Autoload#resolve are synchronized.

* Various compatibility improvements to Enumerable, Enumerator, and String.

* RubyGems is updated to 2.4.6.

* Bundler is updated to 1.9.4.

Changelog:

* Forking from multiple threads is synchronized. (Brian Shirai)
* Kernel#inspect does not dispatch to Kernel#to_s. (Brian Shirai)
* The process state is re-initialized after fork(). (Brian Shirai)
* ConstantTable storage is created lazily. (Brian Shirai)
* Thread::Backtrace::Location#path compatibility is improved. (Yorick Peterse)
* InternalThread infrastructure is rewritten. (Brian Shirai)
* Added RUBY_ENGINE_VERSION. (Brian Shirai)
* JIT compiler thread coordination is improved. (Brian Shirai)
* Enumerator#each_slice, #each_with_index are improved. (Brandon Fish)
* Lazy enumerator compatibility is improved. (Yorick Peterse)
* Marshal support is improved. (Sophia Shao)
* Enumerable#size, #each_cons, #each_slide is improved. (Filipe Dias)
* Enumerator#size is improved. (Filipe Dias)
* String#sub, #sub! is improved. (Filipe Dias)
* Rubinius::Mirror.subject= is improved. (thedarkone, Filipe Dias)
* Proc#curry is improved. (Rui Serra)
* Default log location and permissions are changed. (Brian Shirai)
* Process user name is added to fatal log output. (Brian Shirai)
* FS-API paths are changed. (Brian Shirai)
* InternalThread::shutdown is improved. (Brian Shirai)
* Rubinius::Console request processing is improved. (Brian Shirai)
* Runinius::Console input/output is updated ofter fork(). (Brian Shirai)
* The rubysl-fcntl gem is updated to 1.0.2. (Sophia Shao)
* Rubinius vm_global_serial primitive is added. (Joe Eli McIlvain)
* Thread#join is reworked to use mutex and condition variable. (Brian Shirai)
* Unconditional log function logger::write is added. (Brian Shirai)
* RubyGems is updated to 2.4.6. (Brian Shirai)
* Logging is added for fork, exec, spawn, and backtick. (Brian Shirai)
* Immediate JIT requests are synchronized. (Brian Shirai)
* Object#inspect is not used in Kernel#method. (Yorick Peterse)
* Machine and process info is logged on startup. (Brian Shirai)
* Calls to Autoload#resolve are synchronized. (Brian Shirai)
* Process aborts if resources are not available for internal threads. (Brian Shirai)
* Bundler is updated to 1.9.4. (Brian Shirai)

Read release notes

v1.4.6

Version 1.4.6 (2015-04-28)
News:

* JIT runtime data is processed by the garbage collector correctly.

Changelog:

* Mark RuntimeData correctly. (Brian Shirai)

Read release notes

Something went wrong with that request. Please try again.