1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* lib/rubygems/commands/setup_command.rb: Don't delete non-rubygems

files when installing RubyGems.
* test/rubygems/test_gem_commands_setup_command.rb:  Test for the
  above.

* lib/rubygems/ext/ext_conf_builder.rb:  Use full path to siteconf.rb
  in case the extconf.rb changes directories (like memcached does).

* lib/rubygems/package.rb:  Remove double slash from path.
* test/rubygems/test_gem_package.rb:  Test for the above.
* test/rubygems/test_gem_package_old.rb:  ditto.

* lib/rubygems/source.rb:  Revert automatic HTTPS upgrade
* lib/rubygems/spec_fetcher.rb:  ditto.
* test/rubygems/test_gem_remote_fetcher.rb:  ditto.
* test/rubygems/test_gem_source.rb:  ditto.
* test/rubygems/test_gem_spec_fetcher.rb:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
drbrain 2013-03-11 21:29:32 +00:00
parent 21c1e2da06
commit 10c5d6ee25
12 changed files with 82 additions and 152 deletions

View file

@ -188,8 +188,6 @@ class Gem::SpecFetcher
list = {}
Gem.sources.each_source do |source|
source = upgrade_http_source source
begin
names = case type
when :latest
@ -228,40 +226,5 @@ class Gem::SpecFetcher
end
end
##
# Attempts to upgrade +source+ to HTTPS if it is for http://rubygems.org
def upgrade_http_source source
uri = source.uri
return source unless uri.scheme.downcase == 'http' &&
uri.host.downcase == 'rubygems.org'
https_uri = uri.dup
https_uri.scheme = 'https'
https_uri += '/'
https_uri = URI https_uri.to_s # cast to URI::HTTPS
begin
Gem::RemoteFetcher.fetcher.fetch_path https_uri, nil, true
rescue Gem::RemoteFetcher::FetchError => e
raise unless e.message =~ / Not Allowed 405 /
end
say "Upgraded #{uri} to HTTPS"
https_uri += uri.request_uri
source.uri = URI https_uri.to_s # cast to URI::HTTPS
source
rescue Gem::RemoteFetcher::FetchError
say "Upgrading #{uri} to HTTPS failed, continuing" if
Gem.configuration.really_verbose
source
end
end