I believe spawn should behave like popen, in that it never launches the command in-process. No need to set that precedent now and worry about it later.
Note that this, like most IO methods, still ignores encoding options.
Android was producing "null" for unmatching $ group variables in replaceAll, botching our conversion from camelCase to snake_case. Fixed by manually walking the matches and only replacing from groups that matched.
…omplete pom file.
* "jruby" artifact provides all bundled jars * "jruby" artifact calls jar-dist instead of jar, to rewrite ASM * "jruby-base" is a new artifact that provides only ASM (but includes rewritten ASM), and other deps are scoped "runtime" * "jruby-complete" provides all bundled jars and rewrites ASM * build.xml includes jruby-base target for building a base jar
away from recording lexical information to recording semantic information. Moved away from 'compile-time' resolution of Ruby constants because Module.remove_const and set_const makes such resolutions potentially incorrect.
…th current class and ancestor class in a C extension Native methods should use "impl class" as frame class, just like other methods.
… be observed by child classes too.
We were unloading all drivers given to us by DriverManager, which included drivers loaded by *parent* classloaders. We should only unload drivers loaded by the JRubyClassLoader.
…by1.9 mode Array#join under 1.9 mode tries to coerce non-strings using to_str. NoMethodError is ignored, but in our case we ignored it and left $! set. This prevented Miniunit from running tests.
…lInstr will be needed to deal with split calls
…able length in ManyVarsDynamicScope is checked after this change.
…st method IR instr