Release Notes - JRuby (please use github issues at http://bugs.jruby.org) - Version JRuby 1.2 - HTML format

Sub-task

Bug

  • [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-1345] - Files added to a module via Kernel.autoload are not automatically loaded if the class they contain is extended
  • [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-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-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-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-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-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-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-2794] - Failure in String#crypt specs, Mac OS X, Soylatte
  • [JRUBY-2795] - Process.setpriority failure in rubyspecs on 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-2831] - methods created via define_method are private but should be public
  • [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-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-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-3199] - IllegalArgumentException in X509V3CertificateGenerator when executing Hoe's rake gem running on SoyLatte JDK
  • [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-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-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-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-3304] - Wrong Time.now after VMware suspension
  • [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-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-3370] - Need Constantine release for JRuby 1.2
  • [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-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-3402] - extract command still tries to run but fails; remove entirely or fix
  • [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-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
  • [JRUBY-3444] - Multi-line string interpolation parses under MRI but gives a parse error on JRuby
  • [JRUBY-3445] - Open Struct objects seem to rely on the message frozen? to determine if they are frozen.
  • [JRUBY-3447] - Rails console gets stuck on "quit"
  • [JRUBY-3448] - UNIXSocket file descriptor leak
  • [JRUBY-3449] - jruby-complete-1.2RC1.jar seems to break FFI
  • [JRUBY-3450] - Problem with jitting ruby block in JRuby 1.2 RC1
  • [JRUBY-3452] - gem install fails for Linux x86_64
  • [JRUBY-3455] - 1.2RC1 case - when clause evaluation does not short-circuit
  • [JRUBY-3456] - rails command causes project to be created in the wrong directory
  • [JRUBY-3457] - ast script is not making it into the dist packages
  • [JRUBY-3460] - java.lang.ClassCastException: org.jruby.RubyObject building jruby-rack
  • [JRUBY-3464] - 1.2.0 RC1 fails on Solaris x86_64
  • [JRUBY-3465] - FFI not passing string parameters correctly
  • [JRUBY-3466] - NPE at org.jruby.runtime.callsite.RespondToCallSite.isCacheInvalid
  • [JRUBY-3467] - bug with *one* extra space on shebang with jruby-1.2rc1
  • [JRUBY-3469] - JRuby 1.2.0RC1 problem with spaces in path on Windows
  • [JRUBY-3476] - #java_class is lost (returns nil) after singleton created
  • [JRUBY-3479] - Compilation error when mixing case statement with multiple conditions and exception handler (affects Rinda)
  • [JRUBY-3482] - Bug when getting name of the module
  • [JRUBY-3491] - NullPointerException when calling #arity on Klass.method(:new)
  • [JRUBY-3492] - wrong # args when calling super without args in subclass of Enumerable::Enumerator
  • [JRUBY-5190] - BigDecimal#to_f always returns 0.0 for large precisions
  • [JRUBY-5191] - BigDecimal#to_f always returns 0.0 for large precisions

Improvement

  • [JRUBY-2410] - Multiple assignment could be made faster by not returning unused array
  • [JRUBY-2732] - org.jruby.util.RubyInputStream is unused
  • [JRUBY-2788] - Make Time.now monotonically increasing
  • [JRUBY-3055] - permission javax.management.MBeanServerPermission "createMBeanServer";
  • [JRUBY-3065] - New public LoadService#findFileToLoad method
  • [JRUBY-3085] - Add constant caching for Colon2 and Colon3 (specific module and Object cases)
  • [JRUBY-3244] - [PATCH] Support atime updates via utime
  • [JRUBY-3254] - Make JRuby's Time#local behave more like MRI
  • [JRUBY-3305] - Fixnums & Floats should be coerced to the narrowest java.lang.Number when passed to a java method that expects Object
  • [JRUBY-3420] - [PATCH] Added basic_word_break_characters method to Readline

New Feature

  • [JRUBY-414] - Serialization of wrapped Java objects could be handled as user-marshalled data by Marshal
  • [JRUBY-1803] - Support Ruby 1.9 M17N strings
  • [JRUBY-2040] - new samples/jnlp dir: includes both unsigned and signed examples that work in Java 1.5 and 1.6
  • [JRUBY-3287] - Add public RubyInstanceConfig#setCompatVersion
  • [JRUBY-3314] - Pull in final 1.9.1 stdlib when released

Task

  • [JRUBY-3376] - Need FFI platform files generated for x86_64 linux
  • [JRUBY-3377] - Need FFI platform files generated for x86_64 darwin
  • [JRUBY-3378] - JRuby needs a new release of JFFI

Wish

  • [JRUBY-2262] - Java toString() mapping to invoke(... to_s ...).toString() doesn
  • [JRUBY-3061] - NKF(unsupported Q encode stream)

Edit/Copy Release Notes

The text area below allows the project release notes to be edited and copied to another document.