Skip to content
Browse files
Remove native bits of delegate lib.
We implemented portions of the delegate library as a JRuby ext,
in order to improve performance and avoid the heavy method_missing
logic that used to be in the pure-Ruby version. However, over the
years, the delegate library has improved and no longer has the
same performance characteristics as it did in 1.8 and earlier. In
addition, there have been functionality changes to the pure-Ruby
code that we would have to maintain in the extension.

Therefore, we have opted to return to just the pure-Ruby delegate
library. We will reexamine performance and work with ruby-core to
improve the pure-Ruby version before we consider returning to the
native version.

Fixes #1370.
  • Loading branch information
headius committed Jan 6, 2015
1 parent bb78f8b commit 2201765
Show file tree
Hide file tree
Showing 3 changed files with 0 additions and 142 deletions.
@@ -1718,7 +1718,6 @@ private void initBuiltins() {
addLazyBuiltin("io/wait.jar", "io/wait", "");
addLazyBuiltin("etc.jar", "etc", "org.jruby.ext.etc.EtcLibrary");
addLazyBuiltin("weakref.rb", "weakref", "org.jruby.ext.weakref.WeakRefLibrary");
addLazyBuiltin("native_delegate.jar", "native_delegate", "org.jruby.ext.delegate.NativeDelegateLibrary");
addLazyBuiltin("timeout.rb", "timeout", "org.jruby.ext.timeout.Timeout");
addLazyBuiltin("socket.jar", "socket", "org.jruby.ext.socket.SocketLibrary");
addLazyBuiltin("rbconfig.rb", "rbconfig", "org.jruby.ext.rbconfig.RbConfigLibrary");

This file was deleted.

@@ -415,5 +415,3 @@ def __setobj__(obj) # :nodoc:
return klass

require 'native_delegate.jar'

0 comments on commit 2201765

Please sign in to comment.