Extended maintenance of Ruby 1.9.3 ended on February 23, 2015. Read more
Mixin methods for local and remote Gem::Command options.
Allows OptionParser to handle HTTP URIs.
# File rubygems/local_remote_options.rb, line 18 def accept_uri_http OptionParser.accept URI::HTTP do |value| begin uri = URI.parse value rescue URI::InvalidURIError raise OptionParser::InvalidArgument, value end unless ['http', 'https', 'file'].include?(uri.scheme) raise OptionParser::InvalidArgument, value end value end end
Add the –bulk-threshold option
# File rubygems/local_remote_options.rb, line 63 def add_bulk_threshold_option add_option(:"Local/Remote", '-B', '--bulk-threshold COUNT', "Threshold for switching to bulk", "synchronization (default #{Gem.configuration.bulk_threshold})") do |value, options| Gem.configuration.bulk_threshold = value.to_i end end
Add the –clear-sources option
# File rubygems/local_remote_options.rb, line 75 def add_clear_sources_option add_option(:"Local/Remote", '--clear-sources', 'Clear the gem sources') do |value, options| Gem.sources = nil options[:sources_cleared] = true end end
Add local/remote options to the command line parser.
# File rubygems/local_remote_options.rb, line 37 def add_local_remote_options add_option(:"Local/Remote", '-l', '--local', 'Restrict operations to the LOCAL domain') do |value, options| options[:domain] = :local end add_option(:"Local/Remote", '-r', '--remote', 'Restrict operations to the REMOTE domain') do |value, options| options[:domain] = :remote end add_option(:"Local/Remote", '-b', '--both', 'Allow LOCAL and REMOTE operations') do |value, options| options[:domain] = :both end add_bulk_threshold_option add_clear_sources_option add_source_option add_proxy_option add_update_sources_option end
Add the –http-proxy option
# File rubygems/local_remote_options.rb, line 87 def add_proxy_option accept_uri_http add_option(:"Local/Remote", '-p', '--[no-]http-proxy [URL]', URI::HTTP, 'Use HTTP proxy for remote operations') do |value, options| options[:http_proxy] = (value == false) ? :no_proxy : value Gem.configuration[:http_proxy] = options[:http_proxy] end end
Add the –source option
# File rubygems/local_remote_options.rb, line 100 def add_source_option accept_uri_http add_option(:"Local/Remote", '--source URL', URI::HTTP, 'Add URL as a remote source for gems') do |source, options| source << '/' if source !~ /\/\z/ if options.delete :sources_cleared then Gem.sources = [source] else Gem.sources << source unless Gem.sources.include?(source) end end end
Add the –update-sources option
# File rubygems/local_remote_options.rb, line 119 def add_update_sources_option add_option(:Deprecated, '-u', '--[no-]update-sources', 'Update local source cache') do |value, options| Gem.configuration.update_sources = value end end
Is fetching of local and remote information enabled?
# File rubygems/local_remote_options.rb, line 129 def both? options[:domain] == :both end
Commenting is here to help enhance the documentation. For example, code samples, or clarification of the documentation.
If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.
If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.
If you want to help improve the Ruby documentation, please visit Documenting-ruby.org.