Blog

Blog from Feb 24, 2009

JRuby 1.2.0RC1 Released

The JRuby community is pleased to announce the release of JRuby 1.2.0RC1

Homepage: http://www.jruby.org/
Download: http://dist.codehaus.org/jruby/

JRuby 1.2.0RC1 has fixed many many compatibility issues and continued to
improve general performance.  Due to popular demand we have a new versioning
system.  1.x.y was our old number system where x was the major release and y
was the minor release.  Our new system just chops off the vestigial '1.' from
the front.  1.3, 1.4, ..., 1.x will just be minor releases of our current
major release.

***Please try your apps against 1.2.0RC1 ASAP and report problems***

Highlights:
- Improved Ruby 1.9 support (via --1.9)
  - Compiler now works
  - Almost all of the missing 1.9 methods have been added
- New experimental --fast flag which does more aggressive optimizations
- Large scale compiler and runtime cleanup and performance audit
- Parsing is 3-6x faster now.
- Preliminary android support (Ruboto)
- Rails pathname issue fixed on Windows
- Major bug triage since last release
- 1052 revisions since 1.1.6
- 232 bugs fixed since 1.1.6

Key       Summary
JRUBY-414        Serialization of wrapped Java objects could be handled as user-marshalled data by Marshal
JRUBY-551     JRUBY-549
bfts test_file_test failures
JRUBY-750     defineAlias reports original name and not aliased one in stack traces
JRUBY-852     jirb exits on ESC followed by any arrow key followed by return
JRUBY-1079     IO.sysopen not defined
JRUBY-1201     TCPSocket.new(dest_adrr, dest_port, src_addr, src_port) missing from JRuby
JRUBY-1235     DRb hangs when transferring Ruby objects created in Java
JRUBY-1401     Pathname#realpath fails for Windows drive letters
JRUBY-1470     FileTest methods only work with string arguments
JRUBY-1555     DST bug in second form of Time.local
JRUBY-1576     multi-byte character encoding probrem
JRUBY-1606     File.expand_path does not work as expected
JRUBY-1639     Exception when stopping WEBrick running the new rails application
JRUBY-1803     Support Ruby 1.9 M17N strings
JRUBY-1853     define_method methods do not display the correct stack trace, may not be using frame safely
JRUBY-1854     def is almost 3x slower in JRuby
JRUBY-1855     EOF handling in case of reading program from standard input
JRUBY-1872     next statement should return the argument passed, not nil
JRUBY-1884     handling of file close while reading differs from mri
JRUBY-1950     -i flag not supported
JRUBY-2003     rexml pretty printing wrap() error
JRUBY-2040     new samples/jnlp dir: includes both unsigned and signed examples that work in Java 1.5 and 1.6
JRUBY-2108     IOWaitLibrary ready? returns nil when ready
JRUBY-2120     Wrong stacktraces from exceptions about wrong number of arguments
JRUBY-2131     Select with nil arrays should throw an exception
JRUBY-2139     jruby.compile.frameless=true cause "Superclass method 'initialize' disabled."
JRUBY-2168     test_io (test_copy_dev_null) fails under WinXP
JRUBY-2170     Very unverbose message when problem with native library exists
JRUBY-2174     Method#to_proc.call invocations much slower than normal Method#call invocations
JRUBY-2180     break performance is slower than MRI, sometimes slower than interpreted
JRUBY-2211     SNMP Requests does not timeout properly
JRUBY-2252     Kernel#exec should not raise SystemExit
JRUBY-2262     Java toString() mapping to invoke(... to_s ...).toString() doesn
JRUBY-2264     Include Nailgun in release binary packages
JRUBY-2285     Regression: rubyspec run with -V option breaks JRuby
JRUBY-2288     UDP locking problems when receiving from multiple senders on same port
JRUBY-2296     convertToRuby does not work if to_s does not return a String (but for example nil)
JRUBY-2305     File output cuts off at a certain point?
JRUBY-2307     DRb from MRI server to JRuby client fails with long messages
JRUBY-2326     Invalid cast during parsing of recursive.rb in facelets-2.3.0 (org.jruby.ast.YieldNode cannot be cast to org.jruby.ast.BlockAcceptingNode)
JRUBY-2328     Overriding require causes eval to give wrong _FILE_ in certain circumstances
JRUBY-2333     usage of unexistant variable in REXML::SourceFactory
JRUBY-2346     Nailgun does not compile under HP-UX
JRUBY-2353     Process.kill breaks up JRuby, while works in MRI on Windows
JRUBY-2369     'ant spec' failures on on MacOS
JRUBY-2389     java.util.ConcurrentModificationException
JRUBY-2410     Multiple assignment could be made faster by not returning unused array
JRUBY-2424     running with -rprofile with multithreaded test causes NPE
JRUBY-2426     JRuby trunk does not build with IBM JVM 1.5
JRUBY-2435     Aliasing eval and other "special" methods should display a warning
JRUBY-2455        "jruby" script failed to find JRUBY_HOME leads to class not found
JRUBY-2484     unicode symbol not supported as in MRI
JRUBY-2504     JAR URLs are inconsistently supported by APIs that access the filesystem
JRUBY-2506     Marshal/IO.eof bug
JRUBY-2518     Dir["some glob"] doesn't work for files inside a jar
JRUBY-2521     Compilation Warning for Sun proprietary API using
JRUBY-2522     Can not execute JRuby 1.1.1 "ant test" with IBM JDK
JRUBY-2542     DATA.flock causes ClassCastException
JRUBY-2545     Recursively locking on a mutex results in deadlock
JRUBY-2548     JRuby conversion of String to Java String is arcane
JRUBY-2557     NPE when yielding method
JRUBY-2603     Couple of new rubyspec failures for URI library
JRUBY-2655     TCPSocket.new('localhost', 2001) connects on the wrong interface
JRUBY-2661     specs hang under Apple Java 5
JRUBY-2672     BasicSocket#close_read and #close_write not working
JRUBY-2675     jirb + jline do not work in cygwin
JRUBY-2699     If user's PATH contains '.' and 'jruby' resolves to './jruby', JRUBY_HOME is incorrectly set to '.', leading to 'NoClassDefFoundError'
JRUBY-2727     ActiveScaffold 1.1.1 fails with JRuby 1.1.2, probable path problem
JRUBY-2732     org.jruby.util.RubyInputStream is unused
JRUBY-2757     Compiled argument processing and arity checking are too large, too much bytecode
JRUBY-2759     Time Zone "MET" maps to Asia/Tehran
JRUBY-2761     Thread#wakeup fails when sleep is called with a parameter
JRUBY-2772     Zlib::Deflate doesn't appear to deflate
JRUBY-2782     "No such file or directory (IOError)" when JAR file named in java.class.path but not active filesystem
JRUBY-2788     Make Time.now monotonically increasing
JRUBY-2794     Failure in String#crypt specs, Mac OS X, Soylatte
JRUBY-2796     Missing constant in Process::Constants on Mac OS X (darwin)
JRUBY-2797     File.expand_path rubyspec failure on Mac OS X, Soylatte
JRUBY-2802     JRuby wrapped Java objects formerly exposed readers for non-public fields
JRUBY-2804     IO.popen of 'yes' process hangs on close
JRUBY-2815     System triggered from inside of tracing behaves oddly
JRUBY-2817     File.chown works with 64bit JDK, but raises NotImplementedError on 32 bit JDK
JRUBY-2820     Most Etc methods behave diferently on Windows under x32 and x64 JVMs
JRUBY-2826     Array#pack('w') is broken (exceptions and wrong results)
JRUBY-2830     String#unpack with 'w' is completely unimplemented
JRUBY-2845     -S switch breaks if you have directory in pwd matching name of file in bin/PATH
JRUBY-2846     gem generate_index broken
JRUBY-2849     CCE using proc{} in AR callbacks
JRUBY-2855     Classpath search order is not respected by require when classpath includes both jars and directories
JRUBY-2858     test_file.rb::test_opening_readonly_file_for_write_raises_eacces() fails with "IOError: Permission denied" on FreeBSD 7.0 amd64 + java 1.6.0_07
JRUBY-2861     Cannot call super inside a method that overrides a protected method on Java base class
JRUBY-2868     ThreadService.getRubyThreadFromThread supports only one non-rubynative thread at a time.
JRUBY-2896     jruby -S picks up script from local directory
JRUBY-2898     Exception trying to use BSF (java.lang.NoClassDefFoundError: org/apache/bsf/util/BSFEngineImp)
JRUBY-2901     JRuby does not support options in shebang line
JRUBY-2917     Missing peephole optimizations in parser, compiler
JRUBY-2921     Newly overridden methods are not called if the old superclass method has already been called
JRUBY-2933     Ruby runtimes are pinned to memory due to ChannelStream
JRUBY-2941     popen IO lockup with multiple threads
JRUBY-2950     Net::IMAP#authenticate stalls / blocks in recent versions of JRuby
JRUBY-2951        repeated popen call may throw NULL pointer exception
JRUBY-2970     Timeout.rb is not working in special cases (Thread may block whole application).
JRUBY-2974     multi-byte exception message turned into garbled characters when Java Exception nested NativeException.
JRUBY-2979     File#getc fails on illegal seek when reading from /dev/ttyS0 on Linux
JRUBY-2981     alias_method_chain pattern is extremely show on jruby
JRUBY-2982     Unicode regular expressions by UTF-8 don't work
JRUBY-2988     jirb does not echo characters to the terminal after suspend and resume in the shell
JRUBY-2997     Dir[] results in NPE depending on permissions
JRUBY-2999     Regression: Inheriting method with same name from two Java interfaces causes Java classloader error
JRUBY-3000     integration issues with Java classes containing inner classes
JRUBY-3003     ArrayStoreException in compiler when calling Array.fill
JRUBY-3005     Stomp gem hangs in Stomp::Client#subscribe
JRUBY-3007     Message method value of Exception is missing in Java when exception raised in ruby
JRUBY-3011     java classes with non-public constructors are incorrectly instantiated
JRUBY-3017     DRb "premature header" error on JRuby client
JRUBY-3035     Get Rails tests running in a CI server somewhere before 1.1.6 release, to ensure no future breakages
JRUBY-3038     Unable to insert YAML into t.text field (behavior different from Ruby 1.8.6)
JRUBY-3054     Thread#status is "run" when thread is blocking on condition variable
JRUBY-3055     permission javax.management.MBeanServerPermission "createMBeanServer";
JRUBY-3061     NKF(unsupported Q encode stream)
JRUBY-3065     New public LoadService#findFileToLoad method
JRUBY-3071     Illegal seek error trying to read() from pipe
JRUBY-3073     JRuby script engine does not load on IBM JDK
JRUBY-3076     RubyUDPSocket.send tries to do inet address lookup, pauses too long for inet6 failure
JRUBY-3077     Update ruby_test tests and incorporate changes into build
JRUBY-3085     Add constant caching for Colon2 and Colon3 (specific module and Object cases)
JRUBY-3088     "RStone" port of PyStone is slower on JRuby than 1.9
JRUBY-3089     Digest::Base stores in memory all bytes passed to the digest, causing OutOfMemoryError
JRUBY-3103     Compiler closures use two different binding mechanisms, need better construction and caching logic
JRUBY-3109     Update stdlib to an appropriate 1.8.6 patchlevel
JRUBY-3116     ArrayIndexOutOfBoundsException in tmail
JRUBY-3120     Regression: error serializing array of objects with custom to_yaml def to yaml
JRUBY-3125     Some Socket constants not supported.
JRUBY-3127     Inconsistent DynamicScope instances in evalScriptlet
JRUBY-3128     Different jruby behaviour that ruby 1.8.6/1.8.7/1.9 when running file that is named as one of required file.
JRUBY-3142     Dir.pwd correctly displays dirs with unicode characters in them
JRUBY-3146     Time#_dump RubySpec failures
JRUBY-3147     Time#_load RubySpec failures
JRUBY-3148     Array#fill spec failures
JRUBY-3152     Process.times returns invalid values
JRUBY-3158     Wrong ruby methods called on object of same class from Java code.
JRUBY-3160     REXML returns error for add_attribute
JRUBY-3174     FFI MemoryPointer#get_string(0, x) gets confused by null byte in the buffer
JRUBY-3175     Cloning java byte array returns incorrect object
JRUBY-3177     ConcurrentModificationException
JRUBY-3178     http spec tests fail when webrick starts on address 0.0.0.0
JRUBY-3179     JRuby can't handle do/end blocks within String-inlined expressions
JRUBY-3180     Class in default package can't be reopened under Java namespace
JRUBY-3187     JRuby command line scripts do not work with spaces in the path
JRUBY-3190     method `module_eval' for main:Object should be undefined?
JRUBY-3204        IO.read and IO.readlines do not take a block
JRUBY-3207     super error message is inaccurate when superclass doesn't implement method.
JRUBY-3208     ant task api-docs runs out of memory, patch included
JRUBY-3211     builder library is slower in JRuby than in MRI
JRUBY-3214     load and require don't work correctly for .class files
JRUBY-3217     Memory Leak with Adopted Threads
JRUBY-3218     Import is sometimes confused by unquoted class name
JRUBY-3221     Rubinius -bad instanceof tests in RubiniusMachine for attempt at fast path evaluation
JRUBY-3224     Array#to_java with java object reference doesn't carry over object identity
JRUBY-3226     Including more than one java interface stops Test::Unit execution
JRUBY-3232     Zlib::GzipReader.each_line yields compressed data
JRUBY-3233     JRuby with Rails 2.2.2 unable to instantiate a java class
JRUBY-3234     Difference in require behaviour with MRI with ".rb" suffix
JRUBY-3238     Jruby 1.1.7 still leaking weakreferences
JRUBY-3242     Performance degradation on write operations
JRUBY-3244     [PATCH] Support atime updates via utime
JRUBY-3248     jruby can't load file produced with jrubyc
JRUBY-3250     test_java_pkcs7.rb - Problem coercing Bignum into class java.math.BigInteger
JRUBY-3251     ConcurrencyError bug when installing Merb on JRuby
JRUBY-3253     Lack of default jruby.home in embedded usage causes NPE
JRUBY-3254     Make JRuby's Time#local behave more like MRI
JRUBY-3255     jruby -S script/server fails in Rails application
JRUBY-3257     RaiseException#printStrackTrace doesn't deal well with nil messages
JRUBY-3262     JRuby 1.1.6 regression: ClassFormatError if Ruby superclass of Ruby class implements super-interface of Java interface
JRUBY-3267     patch attached to update eclipse .classpath to refer to bytelist-1.0.1.jar
JRUBY-3269     SystemStackError with YAML.dump
JRUBY-3270     using activerecord 'to_xml' method crashes JRuby (and debugger)
JRUBY-3274     Many new Array#pack failures in updated RubySpecs
JRUBY-3275     New ARGF spec failures
JRUBY-3276     New IO#readpartial and IO#seek spec failures
JRUBY-3277     Constant lookup should omit topmost lexical scope; not bail out on first Object-hosting lexical scope
JRUBY-3280     patch attached to update eclipse .classpath to add new jars in build_lib/
JRUBY-3287     Add public RubyInstanceConfig#setCompatVersion
JRUBY-3289     ArgumentError: dump format error() when unmarshalling Rails session and EOFError when unmarshalling hash with containing value of type ActionController::Flash::FlashHash
JRUBY-3290     Float range to restrictive in FFI code
JRUBY-3296     Etc.getpwuid should raise TypeError if invalid type
JRUBY-3298     Kernel.srand calls #to_i on number
JRUBY-3303     [1.9] splat of array at front of assignment broken (same for other grammatical constructs)
JRUBY-3305     Fixnums & Floats should be coerced to the narrowest java.lang.Number when passed to a java method that expects Object
JRUBY-3307     tempfile.rb sucks in JRuby
JRUBY-3308     Deadlock between RubyModule.includeModule() and RubyClass.invalidateCacheDescendants()
JRUBY-3310     Race condition in JRuby when Active Support is overriding Kernel.require
JRUBY-3314     Pull in final 1.9.1 stdlib when released
JRUBY-3316     Group expression class path fails to parse
JRUBY-3317     require "tempfile"; Dir.tmpdir fails
JRUBY-3318     If 'jruby' executable is a relative symlink, JRuby won't start
JRUBY-3324     Error in string encoding conversion
JRUBY-3328     Incorrect behavior for case/when when true or false are the first conditions
JRUBY-3329     Major divergence in threading behaviour between Ruby 1.8.6 and JRuby 1.1.6
JRUBY-3331     to_f near Float::MAX
JRUBY-3332        ConcurrentModificationException In Application Startup
JRUBY-3339     java.lang.ArrayIndexOutOfBoundsException in RubyArray.java
JRUBY-3340     String#unpack('m') fails with ArrayIndexOutOfBoundsException
JRUBY-3351     Tempfile defaults to a directory that does not exist on Windows
JRUBY-3360     Pure-Java tempfile does not use a #make_tmpname callback
JRUBY-3361     Compiled case/when blows up with arrays as when clauses
JRUBY-3362     attr_accessor, attr_reader, attr_writer, and attr not obeying visibility
JRUBY-3363     OutOfMemoryError when using soap4r on jruby 1.1.6
JRUBY-3365     Objects with custom to_yaml methods break collection to_yaml
JRUBY-3366     Faulty marshalling error blows up in ActiveSupport
JRUBY-3367     Dir.glob processes nested braces incorrectly
JRUBY-3372     [PATCH] FFI: passing nil for a declared string parameter blows up
JRUBY-3373     [PATCH] FFI: assigning Struct to a pointer fails
JRUBY-3374     [PATCH] FFI::ManagedStruct instantiated objects are of the wrong class
JRUBY-3375     'attr' implementation is incompatible with MRI 1.9.1 behavior
JRUBY-3377     Need FFI platform files generated for x86_64 darwin
JRUBY-3386     Array#eql? rubyspec failure
JRUBY-3387     Array#== rubyspec failure
JRUBY-3390     RubySpec: Numeric#coerce calls #to_f to convert other if self responds to #to_f
JRUBY-3392     RubySpec: Thread.stop resets Thread.critical to false
JRUBY-3397     defined? CONST is not following proper constant lookup rules
JRUBY-3398     Attributes defined from Java tried to use current frame for visibility
JRUBY-3405     popen breaks input channel for IRB
JRUBY-3407     FFI Stack Level Too Deep on Library.send(:method, args)
JRUBY-3408     FFI non-string args for methods are turned into strings anyway
JRUBY-3410     Add -y flag to debug the parser
JRUBY-3411     JRuby does not build or run on AIX due to exceptions in org.jruby.ext.ffi.Platform
JRUBY-3420     [PATCH] Added basic_word_break_characters method to Readline
JRUBY-3432     String#hash needs to be made encoding-aware
JRUBY-3436     [PATCH] FFI should allow passing nil as a callback parameter
JRUBY-3437     pid-returning methods should make a best effort to get a real pid
JRUBY-3439     super in top level go boom