Hey, I'd like some help confirming that the modified jruby-complete
structure for http://jira.codehaus.org/browse/JRUBY-3892 does not
break other things like Rails and MonkeyBars and Rawr and other
embedding cases.

Basically the problem with that bug was that our load path looked for
Ruby stdlib in <jar>!META-INF/jruby.home/lib/ruby/1.8, but we put
stdlib at the *root* of the jar instead. This allows the classpath
loader to find those libraries, but not the normal load-path loader.
This in turn caused that load path entry to be useless.

The problem came to light because rdoc uses load path entries to scan
for generators, but since the only load paths available did not
actually contain stdlib. Since rdoc knows nothing about classpath
entries, it never found the generators and never worked correctly from
within the jar.

The modification was to remove the stdlib files at the root of the jar
and move them into their appropriate location under
META-INF/jruby.home/lib/ruby/1.8. This allows rdoc generation to work
with jruby-complete.jar, and appears to still work fine with stdlib,
since the files are still in the jar and the load-path loading finds
them correctly.

I also removed the load path entry for "lib/ruby/1.8" which was
originally added to help search the jar file for classloader entries;
but with the actual load path working correctly, I don't believe it's
necessary anymore.

My patch on the bug also adds a jar-complete-1.9 that includes the 1.9
stdlib instead. This could probably be cleaned up so it doesn't
duplicate so much code in build.xml.

So...for those of you already comfortable with JRuby master, just
update, apply the patch from JRUBY-3892, ant clean jar-complete, and
use that complete jar for things you usually do. Hopefully it will
work for everything :)

- Charlie

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to