rubygems expects runtime.getJRubyHome() to be canonical
-------------------------------------------------------
Key: JRUBY-1087
URL: http://jira.codehaus.org/browse/JRUBY-1087
Project: JRuby
Issue Type: Bug
Components: Core Classes/Modules
Affects Versions: JRuby 1.0.0RC2
Environment: Windows
Reporter: Thomas E Enebo
Assignee: Thomas E Enebo
Priority: Blocker
Fix For: JRuby 1.0.0RC3
jruby.home (accessed in Java by getJRubyHome) is expected to be canonical when
it populates all the $:/loadpath entries when the system comes up. Software
like rubygems basically assumes this or one of its path operations break.
Rubygems manipulation of $: is pretty fragile in that it expects
config::Config[sitelibdir] to be an exact match with an element in $:. So:
{noformat}
sitelibdir=c:/foo/bar
$: => ["c:/foo/bar/../bar"]
or
$: => ["C:/foo/bar"]
or
$: => ["/foo/bar"] <= Assumes system drive is 'C'
{noformat}
none of the above will work. Perhaps it is a burden which JRuby/MRI needs to
bear to guarantee sitelibdir and same $: element are identical.
The other option was to update LoadService.addPath to make sure all entries
coming in were canonical. This semed like it would be more confusing than
making original path canonical.
Another option is to actually use rbconfig values to populate $:. This might
be the best solution, but I want a release out today.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe from this list please visit:
http://xircles.codehaus.org/manage_email