Bugs item #25882, was opened at 2009-05-12 14:01
You can respond by visiting:
http://rubyforge.org/tracker/?func=detail&atid=575&aid=25882&group_id=126
Category: `gem install` command
Group: v1.3.x
Status: Open
Resolution: None
Priority: 3
Submitted By: Lars Christensen (larsch)
Assigned to: Nobody (None)
Summary: Handling of Windows paths broken in 1.3.3
Initial Comment:
Installing gems from local drives other than the current is broken on Windows.
RubyGems strips the drive letter (through using the URI class for something
which isn't an URI).
C:\> gem install p:\path\to\mygem-2.1.18.gem
ERROR: While executing gem ... (Errno::ENOENT)
No such file or directory - /path/to/mygem-2.1.18.gem
Then I tried to pass a valid URI:
C:\> gem install file:///p:/path/to/mygem-2.1.18.gem
But that doesn't work either;
ERROR: could not find gem file:///p:/path/to/mygem-2.1.18.gem locally or in a
repository
I believe this is because URI#path returns "/p:/path/to/mygem..." (with leading
slash), which is not a valid path on Windows.
Finally, I attempted to hack RubyGems to prefix file:/// itself, but I don't
understand the reason for this line of code in remote_fetcher.rb:
remote_gem_path = File.join(path, 'gems', gem_file_name)
That causes this error instead:
ERROR: While executing gem ... (Errno::ENOENT)
No such file or directory - p:/path/to/gems/mygem-2.1.18.gem
Notice the extra /gems/ path.
----------------------------------------------------------------------
You can respond by visiting:
http://rubyforge.org/tracker/?func=detail&atid=575&aid=25882&group_id=126
_______________________________________________
Rubygems-developers mailing list
http://rubyforge.org/projects/rubygems
[email protected]
http://rubyforge.org/mailman/listinfo/rubygems-developers