Blog from January, 2008

The JRuby community is pleased to announce the release of JRuby 1.1 RC 1


JRuby 1.1RC1 is the first release candidate of JRuby 1.1.  JRuby 1.1
represents a concerted focus on speed and refinement.  Ruby code can
completely compile in an Ahead Of Time (AOT) or Just In Time (JIT) mode;
yielding a faster Ruby!  It also uses less memory than our previous releases.

We need people to download JRuby 1.1RC1 and give us feedback.  Test your
applications and help us make JRuby 1.1 a great release.

- 143 issues resolved since JRuby 1.1b1
- Landing of Java port of Oniguruma (Joni)
- Most Posix methods supported (e.g. stat, kill, getuid)
- Latest Rubygems 1.0.1, RSpec 1.1.1, and Rake 0.8.1 gems
- Updated standard library to be Ruby 1.8.6 compatible

A huge round of thanks goes to Marcin Mielzynski for porting Oniguruma. 
Porting Oniguruma to Java (resulting in a sub-project called Joni)  was a
tremendous amount of work and it turned out great.  We also want to
acknowledge Vladimir Sizikov for the large number of Rubyspecs failure fixes
during this development cycle.  He has been tenacious in getting patches to
us on a daily basis.

Issues fixed since 1.1 beta 1:

JRUBY-15  :  Implement File::Stat.ino and
JRUBY-1052: Rubinius binding_spec failures
JRUBY-1058: Rubinius core/file_spec failures
JRUBY-1061: Rubinius core/kernel_spec failures
JRUBY-1226: JRuby does not work in Web Start because it does not set the ProtectionDomain of Java proxy classes when it creates them
JRUBY-1366: Names when compiling scripts are mangld in some cases
JRUBY-1404: Unstable behavior with ARes in Rails 2.0 PRE1
JRUBY-1415: Proc#to_s should display the position info for the block
JRUBY-1438: Create JNA-based implementations of fstat/lstat
JRUBY-1453: All IO operations in JRuby need to mirror MRI's heavy use of select for all operations
JRUBY-1458: ARGF.rewind blows up (and it shouldnt)
JRUBY-1461: require './NonExistantRequiredFile' causes StringIndexOutOfBoundException instead of LoadError
JRUBY-1462: test_trace_func crashes interpreter
JRUBY-1464: java.lang.ArrayIndexOutOfBoundsException - Exception in thread "Ruby Thread24338914"
JRUBY-1487: weakref.rb could (should?) be implemented in Java
JRUBY-1488: Add ant tasks for running JRuby, and for profiling and debugging code within NetBeans
JRUBY-1497::undefined method for Thread:class. for compiled Jruby classes
JRUBY-1503: disabled objectspace causes failures in Net/HTTP
JRUBY-1506: Blocking Java calls don't work with timeout
JRUBY-1508: Dir#[] and Dir#glob incompatibilities
JRUBY-1515: Compiler is failing to compile files with nonstandard paths
JRUBY-1522: Retry argument evaluation incompatibility
JRUBY-1528: ant Javadoc error when using target create-apidocs
JRUBY-1541: The warinig message is not displayed when useless use of a quote symbol.
JRUBY-1580: Pathname#unlink complains "<file> is not a directory"
JRUBY-1592: Math.Asinh is wrong with negative arguments
JRUBY-1620: needs to be implemented
JRUBY-1621: rss/maker doesn't compile
JRUBY-1622: File.expand_path cannot resolve a relative change to a path inside a jar
JRUBY-1636: JSON_PURE with the new Joni regex fails with array in a Hash, I guess
JRUBY-1641: Cannot run unsigned in Web Start due to accessing system properties
JRUBY-1660: JRuby is 10x slower than MRI on Time objects creation
JRUBY-1666: JRuby needs a test target that attempts to compile all stdlib files, to confirm compiler is at least that complete and not blowing up
JRUBY-1672: JRuby File.rename() behavior different from Ruby, causes log rotation issue
JRUBY-1673: We need to KILL MethodCache.
JRUBY-1680: nailgun slows way down when
JRUBY-1683: attr_reader, attr_writer, and attr_accessor should have arity 0
JRUBY-1684: Numerous StringIO spec test failures
JRUBY-1689: Tempfile class random behavior and "Bad file descriptor (Errno::EBADF)" exception
JRUBY-1695: JRuby in applet fails due Boolean.getProperty security permission
JRUBY-1706: [PATCH] Bad format for "frozen" error messages
JRUBY-1715: Incompatible behavior for ||= in Hashes
JRUBY-1719: String#capitalize! handles frozen empty string incompatibly
JRUBY-1721: String#slice and #[] on tainted string might incorrectly return untainted string
JRUBY-1722: String#<=> doesn't handle non-string arguments, but in MRI it does
JRUBY-1723: String#initialize and String#replace on frozen strings behave incompatibly with MRI
JRUBY-1726: String#inpect and String#dump behavior is different from Ruby
JRUBY-1730: String#slice! and String#[]= with negative ranges behave differently than Ruby
JRUBY-1732: String#rindex works incorrectly with FixNum parameters
JRUBY-1733: String conversions with 0dNNN and 0oNNN formats are incorrect
JRUBY-1734: Memory leak in trap()
JRUBY-1737: String#% can't handle some string arguments with underscores
JRUBY-1738: Kernel.sprintf with argument of some non-standard type doesn't invoke to_int on it
JRUBY-1740: Usage text says ObjectSpace is both enabled and disabled by default
JRUBY-1741: joda-time does not marshal months correctly
JRUBY-1742: String#% with %s and %p handles tainted status of ar
JRUBY-1743: =begin and =end should not be case insensitive
JRUBY-1744: END { } in method should generate a warning and not an error
JRUBY-1745: String#slice! can't handle Float and non-standard numerics as arguments
JRUBY-1746: Various String methods handle tainted flag incorrectly
JRUBY-1748: String#unpack with Z* pattern is incorrect
JRUBY-1750: String#succ! behaves differently from Ruby 1.8 which is also different from MRI 1.9
JRUBY-1751: retroweaver tasks should use verify option
JRUBY-1752: String#* returns incorrect class when used with String subclasses
JRUBY-1754: Regression in specified Time behavior with Joda Time changes
JRUBY-1757: String#dump and String#crypt handle string subclasses incorrectly
JRUBY-1758: String#% incorrectly handles null bytes right after '%' in the pattern
JRUBY-1759: JRubyFileStat gives an NPE for the root directory
JRUBY-1760: Joda Time error installing rails with RubyGems 1.0.0
JRUBY-1762: IRBApplet fails to start due to various security restrictions
JRUBY-1764: unsafe allocation of module and symbol ids
JRUBY-1765: YAML cannot load string with hash symbol
JRUBY-1766: Yaml.load returns obects of different type compared to MRI
JRUBY-1768: RubyGems 1.0.0 hack may be due to yaml_initialize not getting called
JRUBY-1771: gem install mongrel broken
JRUBY-1774: String#% with 'g/G/e/E' patterns produces incorrect output different from MRI
JRUBY-1777: WebStart sample should be provided
JRUBY-1778: Regression: String#match after String#gsub (and vice versa) with the same string work incorrectly
JRUBY-1779: String#unpack with Q pattern is incorrect
JRUBY-1780: String#unpack with X pattern is incorrect
JRUBY-1781: test_higher_javasupport threading test fails periodically
JRUBY-1782: error running sample/jirb.jnlp with signed version of jruby-complete.jar
JRUBY-1785: Failure in test_glob_inside_jar_file
JRUBY-1786: yaml_initialize is not called
JRUBY-1806: String#inspect works incorrectly when KCODE is set
JRUBY-1807: Lots of spec failures for Time
JRUBY-1809: IRBConsole doesn't fully exit the VM when its window is closed
JRUBY-1811: Kernel#` (backtick) should call to_str on the passed string
JRUBY-1812: Kernel#load should accept a second "wrap" parameter that wraps the load in a new anonymous toplevel self
JRUBY-1813: Object#methods should return only singleton methods when passed false
JRUBY-1814: Object#singleton_methods should only return singleton class methods and module methods included into singleton
JRUBY-1815: FileTest#identical? is not implemented
JRUBY-1816: Native File Stat mode comparisons + filetype is borked
JRUBY-1817: native filestat isReadablehave small logic error

JRUBY-1818: Method and UnboundMethod inspect/to_s not quite right

JRUBY-1819: Kernel#require should try to to_str coerce the provided object

JRUBY-1820: Dir.mkdir does not honor mode bits
JRUBY-1823: Proc arity failures for lambdas with a single argument receiving 0 or >1 argument
JRUBY-1824: module_eval should coerce to string
JRUBY-1825: UnboundMethod.clone ends up becoming a Method
JRUBY-1826: UnboundMethod/Method.== fails for some Rubinius specs
JRUBY-1827: Range failures in ruby specs: step and each must have "succ" defined on begin (if not an integral type), each must use spaceship for comparisons
JRUBY-1828: Module.<=> should return nil when other is not a module
JRUBY-1829: eval + friends do not honor line number argument
JRUBY-1830: with block should return last value/returned value of block
JRUBY-1831: ObjectSpace spec test fails from time to time
JRUBY-1832: StringIO spec failures: reopen should truncate actual string, reset mode flags
JRUBY-1833: Time should roll over too-high hours to days and too-high days to months
JRUBY-1834: String#unpack with "m" pattern is incorrect
JRUBY-1835: should return the existing proc associated with a block if one has already been created
JRUBY-1836: AIOOB in String#each spec running with +C
JRUBY-1840: Complex default args that define methods not defining in correct class
JRUBY-1841: throw that bubbles all the way to the top of a non-main thread should result in a ThreadError instead of a NameError
JRUBY-1842: Modifications to $LOADED_FEATURES should be reflected in require behavior
JRUBY-1843: Implement File::readlink
JRUBY-1844: Fix all Dir.glob issues in current Rubinius spec
JRUBY-1845: Implement Kernel::fork (for experimental purposes only)
JRUBY-1848: Bignum#[] should not throw exceptions even when the argument is very big
JRUBY-1849: $defout and $deferr are not changed when $stdout and $stderr modified
JRUBY-1850: UnsatisfiedLinkError with 'mkdir' while running gem
JRUBY-1851: Exception raised while attempting to retrieve a plain text document from a https service.
JRUBY-1857: how to get mac address, gem uuidtools 1.0.2 not working
JRUBY-1858: JRuby reports wrong position in stack trace
JRUBY-1862: Missing constants in Errno
JRUBY-1863: String#% should raise ArgumentError or print a warning when $DEBUG or $VERBOSE are set
JRUBY-1866: [PATCH] RubyGC singleton methods
JRUBY-1867: Module#autoload must validate arguments
JRUBY-1868: Signal.list must list all (short) signal names and their values in a hash
JRUBY-1869: JRuby must be compatible with Ruby 1.8.6 instead of 1.8.5
JRUBY-1870: Object#extend should extend in order from last arg to first
JRUBY-1871: Kernel#proc should raise argument error when no block present
JRUBY-1873: Kernel#exec should raise a SystemCallError if cmd cannot execute
JRUBY-1874: HttpOutput flush doesn't send headers
JRUBY-1875: Integer overflow in Array#fill
JRUBY-1876: Array#initialize should not modify frozen array
JRUBY-1877: Marshalling of Gem::Specification broken under Rubygems 1.0
JRUBY-1878: Failing to send mails to msmtp mail server using IO.popen. For instance impossible to send mails to GMail using msmtp. This is a regression.
JRUBY-1880: Kernel#trap sometimes throws Java-base exception
JRUBY-1881: support stdlib yaml/store
JRUBY-1883: RubySignal should be modified to not try to load Sun-specific Signal classes when they are not present
JRUBY-1885: Reopen of a filename after close should succeed
JRUBY-1898: YAML loading incorrectly returns the same instances for strings
JRUBY-1914: Class file has wrong version 50.0 on Maven repository