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

Reply via email to