diff options
Diffstat (limited to 'lib/rubygems/commands/fetch_command.rb')
-rw-r--r-- | lib/rubygems/commands/fetch_command.rb | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/lib/rubygems/commands/fetch_command.rb b/lib/rubygems/commands/fetch_command.rb index 666d83e730..e7c9cc9525 100644 --- a/lib/rubygems/commands/fetch_command.rb +++ b/lib/rubygems/commands/fetch_command.rb @@ -13,6 +13,7 @@ class Gem::Commands::FetchCommand < Gem::Command add_bulk_threshold_option add_proxy_option add_source_option + add_clear_sources_option add_version_option add_platform_option @@ -58,8 +59,16 @@ class Gem::Commands::FetchCommand < Gem::Command next end - path = Gem::RemoteFetcher.fetcher.download spec, source_uri - FileUtils.mv path, File.basename(spec.cache_file) + file = "#{spec.full_name}.gem" + remote_path = URI.parse(source_uri) + "gems/#{file}" + + fetch = Gem::RemoteFetcher.fetcher + + gem = fetch.fetch_path remote_path.to_s + + File.open file, "wb" do |f| + f.write gem + end say "Downloaded #{spec.full_name}" end |