Latest news
The JRuby community is pleased to announce the release of JRuby 1.1.4!
Homepage: http://www.jruby.org/
Download: http://dist.codehaus.org/jruby/
JRuby 1.1.4 is the fourth point release of JRuby 1.1. The fixes in this
release are primarily obvious compatibility problems and performance
enhancements. Our goal is to put out point releases more frequently for
the next several months (about 3-4 weeks a release). We want a more
rapid release cycle to better address issues brought up by users of JRuby.
Highlights:
- Massive refactoring of Java integration layer
- 2-20x speed up of most features (calls, construction, arrays)
- Many long-standing Ruby/Java interaction bugs fixed
- Existing features made more consistent, reliable
- Closures can be passed as interface to static methods, constructors
- Java exceptions can be raised/rescued directly from Ruby
- Massive memory efficiency improvements (a lot less GC)
- Beginning of Ruby 1.9 support (enabled with --1.9 flag)
- Native complex/rational
- Additional efficiency, performance work in the interpreter
- Memory leak under --manage repaired
- FFI subsystem for calling C libraries
- syslog module from Rubinius is working and included
- win32 API support started
- Thread pooling improved (at least one production user now)
- Array concurrent-access improvements
- 72 issues resolved since JRuby 1.1.3
Issues fixed:
JRUBY-231 Provide attr_reader, attr_writer, and attr_accessor for JavaBean style getters & setters
JRUBY-1183 New closure conversion should prefer methods with convertable args over those without
JRUBY-1300 Masquerading of native Java exceptions
JRUBY-1326 Error invoking overloaded Java constructor
JRUBY-1562 Declaration of certain method name (setJavaObject(Xxx x)) will throw an exception using BSF
JRUBY-1615 Raising java exceptions from ruby causes TypeError
JRUBY-1707 Unable to raise Java exceptions of derived types
JRUBY-1735 Java Integration wraps to much
JRUBY-1839 closure conversion fails for blocks
JRUBY-1964 Determine what test/specs are needed to be written in order to refactor java integration post 1.1
JRUBY-1976 Working with JavaMethods doesn't work.
JRUBY-2136 $VERBOSE = true; require 'tmpdir' gives non-fatal Java exception
JRUBY-2192 YAML parser does not appear to deserialize object types.
JRUBY-2204 Syslog module is not available for JRuby
JRUBY-2236 NPE in isDuckTypeConvertible
JRUBY-2287 Storing ruby objects in java classes instances
JRUBY-2377 Wrong line numbers for ArgumentError for Java calls
JRUBY-2429 Cannot Catch Core Java Exceptions From JRuby Internals in Ruby Code
JRUBY-2439 Trying to subclass a Java class from a signed .jar will crash on you.
JRUBY-2449 Implement closure convention for static java methods
JRUBY-2561 JavaField.set_value(foo, nil) breaks
JRUBY-2673 Java exceptions do not return the wrapped exception when getStackTrace is called
JRUBY-2680 When JIT Compiler compiles the append_features in the ruby\site_ruby\1.8\builtin\javasupport\proxy\interface.rb the compiled code slows down by a factor of 10
JRUBY-2741 OSGify jruby.jar in the release jruby distribution
JRUBY-2749 Make RaiseException show the exception message and the Ruby stack trace
JRUBY-2803 Bad performance calling Java classes
JRUBY-2823 Can't reference Java's constants that start with a lower case character
JRUBY-2828 Rational#% differs from MRI when argument is negative
JRUBY-2843 Issues with BasicSocket#close_read
JRUBY-2847 A non-existant jar + dir on the load path causes require to error
JRUBY-2850 In some cases, reopened Java objects cannot find methods on Ruby objects subclassed from Java
JRUBY-2854 AST offset error for StrNode and DStrNode
JRUBY-2857 Coercion error with public member variables
JRUBY-2863 Nested Interfaces can't find the correct method when Java calls Ruby
JRUBY-2865 Can't extend a class in default package
JRUBY-2867 Wrong overloaded Java method called when both int and float signatures exist
JRUBY-2869 IO.select fails to block with nil timeout
JRUBY-2870 [REGRESSION] Converting a Ruby array to a Java array (of Object references) broken
JRUBY-2872 JSpinner cannot accept Fixnum for it's value
JRUBY-2873 FFI needs a way to specify call convention
JRUBY-2874 TCPSocket#new and TCPServer#new crash JRuby when the specified port is out of range (negative or bigger than 65k)
JRUBY-2879 net/ftp library is broken if mathn is also loaded
JRUBY-2880 Regression: 17 new RubySpec failures and 3 unit tests falirues caused by r7327 (Array changes)
JRUBY-2881 JAVA_HOME with () breaks JRuby on windows
JRUBY-2882 Incorrect subclass for constructor arg throws internal JRuby error
JRUBY-2886 Extending a final Java class should be rescuable as a normal Ruby exception type
JRUBY-2890 UDPSocket.recvfrom should block until something is available
JRUBY-2891 UDPSocket.bind throws a Java Error when already bound on Java 5
JRUBY-2892 JRuby releases use random copies of joni svn HEAD
JRUBY-2893 mspec runs need to pass properties through -T argument for compilation, etc
JRUBY-2894 When spec runs fail, Ant is not terminating with a failure message
JRUBY-2899 Using JavaEmbedUtils.rubyToJava causes problems when passing RubyObject-derived parameters back in to Ruby code
JRUBY-2903 Allow implementing Java interfaces with underscored method names
JRUBY-2905 NoMethodError does not give a useful message when thrown in BSF
JRUBY-2906 IOError message is garbled when java.io.IOException message is multi-byte character.
JRUBY-2907 method_missing invocation paths end up boxing arguments twice, among other inefficiencies
JRUBY-2910 Object#send is not specific-arity
JRUBY-2915 Exception construction performance is poor
JRUBY-2918 jruby 1.1.3 + activescaffold 1.1.1 generating RJS error
JRUBY-2919 Time.-(Time) does not include microseconds and is off by 10
JRUBY-2923 Eliminate (unknown) from trace elements
JRUBY-2924 JMX support added leaks memory like crazy
JRUBY-2927 Calling interface method on specific instance from Java doesn't work.
JRUBY-2928 Same issue with hashCode and toString for Interfaces.
JRUBY-2929 Java Integration with regards to arrays of classes are broken
JRUBY-2931 Templater error causes merb-gen (0.9.4 and trunk) to fail on JRuby 1.1.3
JRUBY-2932 Move static soft reference timezone cache to be runtime-specific cache to remove complexity of dealing with soft references
JRUBY-2938 Calling JavaUtil.convertJavaToUsableRubyObject throws AssertionError
JRUBY-2943 Memory leak in closure coercion
JRUBY-2944 Java caller gets null when calling a method on a Ruby object implementing an interface method declared to return Object[], and the Ruby object returns an array of Ruby objects subclass of Hash converted with #to_java
JRUBY-2946 New invokers attempt to access argument list of non-overloaded methods with incorrect arity
JRUBY-2947 Multidimensional array conversion broke in recent Java integration refactoring
The JRuby community is pleased to announce the release of JRuby 1.1.3!
Homepage: http://www.jruby.org/
Download: http://dist.codehaus.org/jruby/
JRuby 1.1.3 is the third point release of JRuby 1.1. The fixes in this
release are primarily obvious compatibility problems and performance
enhancements. Our goal is to put out point releases more frequently for
the next several months (about 3-4 weeks a release). We want a more
rapid release cycle to better address issues brought up by users of JRuby.
Highlights:
- RubyGems 1.2
- Greatly improved interpreter performance
- jrubyc compiler usability improvements and bug fixes
- Reduced memory usage and object churn
- Dozens of IO-related and core class RubySpec fixes + reduced memory for IO
- ThreadGroup fixes to resolve Mongrel "dead thread" issues
- New options/properties for tweaking JIT, thread pooling, and more
- Block invocation performance improvements
- Much faster Time performance
- Much better support for --debug
- Mentioning that context classloader fix would be nice
(since it quite user visible, and many users seen/asked for it).
JRUBY-2495
- 82 issues resolved since JRuby 1.1.2
Issues fixed:
JRUBY-2495 Requiring and using a Java library that ends up using a Thread Context classloader doesn't work.
JRUBY-2582 Strip out gem cruft dring ant dist
JRUBY-2584 Comparable#== behavior differs from MRI
JRUBY-2585 Hash.[] should call to_hash if only one argument is provided
JRUBY-2590 [1.8.7] SecureRandom crashes, fails new rubyspecs
JRUBY-2592 Two JRuby crashes on Readline::HISTORY rubyspecs
JRUBY-2598 Rubygems installs non-functioning BAT files on Windows
JRUBY-2601 New default for jruby.jit.threshold property is not reflected in the --properties listing on jruby command line ref. JRUBY-2514
JRUBY-2605 Kernel.eval with yield behaves differently than MRI 1.8.6/1.8.7, causes some libraries failures with JRuby
JRUBY-2607 Gather all JRuby RubyGems changes out of RubyGems libs and into a single monkey-patching file
JRUBY-2614 StringIO#readlines("") hangs JRuby
JRUBY-2615 IO.popen doesn't allow shell commands to access STDIN
JRUBY-2617 gem install appears to be bulk updating every time.
JRUBY-2623 Rubyspec failures for StringIO's #close, #close_write, #close_read and #<<
JRUBY-2624 Object#initialize_copy should always be private
JRUBY-2625 IO#read_nonblock is broken
JRUBY-2628 StringIO's methods (new and truncate) should raise appropriate exceptions
JRUBY-2629 StringIO#<< and various read methods crash ruby if invoked on only-allocated object
JRUBY-2630 direct loading .class files fails with an IO Error
JRUBY-2631 jruby's select() doesn't properly handle objects that implement to_io
JRUBY-2632 IO#readpartial doesn't handle unget char
JRUBY-2633 Kernel#select with non-array argument crashes JRuby
JRUBY-2635 IO#readpartial crashes when negative argument is specified
JRUBY-2636 IO#readpartial doesn't honor maxlength parameter and always returns the whole buffer content
JRUBY-2637 Channelstram should null the buffer in close()
JRUBY-2638 StringIO#initialize_copy is not implemented
JRUBY-2644 TCPServer#close doesn't interrupt any pending #accept's
JRUBY-2646 NullPointerException when trying to invoke method whose arity is three and that is given a block.
JRUBY-2650 Block construction/instantiation is slower in compiled than interpreted
JRUBY-2652 NativeException does not have a direct accessor for the wrapped exception
JRUBY-2653 test_threaded_nonlocal_return test sometimes fail with an apparent threading issue
JRUBY-2659 Stringio#ungetc crashes JRuby in some cases
JRUBY-2660 More than 30 rubyspec failures for StringIO
JRUBY-2662 Tag or fix remaining OS X spec failures
JRUBY-2664 --debug option on Windows is broken
JRUBY-2667 Plenty of new StringScanner failures for JRuby
JRUBY-2669 StringScanner#peek crashes JRuby in some situations
JRUBY-2671 NullPointerException when converting an Array of Ruby that includes an instance of java primitive class.
JRUBY-2677 Problem in Process Command Line Arguments
JRUBY-2679 Selectively Disable JIT Compiler using command line options
JRUBY-2681 Multiple IO#readlines rubyspec failures
JRUBY-2683 Regexp#to_s behaves differently than MRI 1.8 or MRI 1.9
JRUBY-2684 gem management requires too much memory
JRUBY-2687 Socket.for_fd generates ArgumentError when running EventMachine gem (pure_ruby version)
JRUBY-2692 Bigdecimal#add never uses the precision arg, fails new rubyspec tests
JRUBY-2693 PROGRAM_NAME is not available in the modules included via -r command line option
JRUBY-2694 [1.8.7] Ability to specify suffix/extension for Tempfile
JRUBY-2695 Exception in the thread is not printed when Thread.abort_on_exception is set to true
JRUBY-2696 Kernel.raise should print the one-line exception info to $stderr in DEBUG mode
JRUBY-2698 Time.new inconsitencies
JRUBY-2699 If user's PATH contains '.' and 'jruby' resolves to './jruby', JRUBY_HOME is incorrectly set to '.', leading to 'NoClassDefFoundError'
JRUBY-2704 Upgrade rubygems to version 1.2
JRUBY-2707 JRuby does not load AOT compiler escaped name
JRUBY-2709 Interpreter crashes on a new rubyspecs for rescue
JRUBY-2710 CGI#out fails new rubypecs, prints results to original stdout rather than to the redefined one
JRUBY-2711 RubyArray keeps references to unreachable RubyObjects after clear, reject!, delete and delete_at
JRUBY-2713 AOT Compiler should default to no prefix
JRUBY-2714 Major performance slowdown when loading AOT compiled file
JRUBY-2717 Dir[..] does not accept more than two arguments
JRUBY-2719 Mongrel can't handle heavy load, fills up with threads and starts dropping connections
JRUBY-2721 ThreadGroup should not ever hold on to dead threads in its list
JRUBY-2722 Interpreter passes absolute path to the EventHook for 'require'ed files
JRUBY-2723 Interpreter passes wrong position on 'return' event
JRUBY-2728 Deadlock in Thread#exit when being joined from outside
JRUBY-2729 Kernel#caller should not cut off at eval like backtraces do
JRUBY-2730 Multiply-binding JRubyMethods with meta=true are not processed correctly by AnnotationBinder
JRUBY-2731 Significant speedup of Time methods (up to 300%-400% in some cases)
JRUBY-2733 StringIO#each_byte doesn't update pos, fails new Rubyspecs
JRUBY-2735 String#% should use to_ary to convert the argument to Array
JRUBY-2738 TCPServer#peeraddr on crashes JRuby
JRUBY-2742 Major code duplication in BAT files
JRUBY-2751 Array#fill should return self instead of raising an error when length is negative
JRUBY-2753 c-return passes different 'file' then c-call for load and require
JRUBY-2769 I/O Error (sysseek for buffered IO) when using reliable-message library
JRUBY-2770 IO#sysseek after IO#sysread raises IOError
JRUBY-2773 Crashes when using Enumerator#to_enum with Threadify#threadify
JRUBY-2779 Race condition in IO
JRUBY-2781 Can't compile Build 7142
JRUBY-2786 Lots of JRuby crashes on ARGF methods
JRUBY-2789 IO#read crashes JRuby when pos is bigger than the file length
JRUBY-2809 Not all at_exit blocks are being executed.
JRUBY-2814 release jna-posix and update jruby afterwards
