module Gem::InstallUpdateOptions
Mixin methods for install and update options forGem::Commands
Public Instance Methods
Source
# File lib/rubygems/install_update_options.rb, line 21defadd_install_update_optionsadd_option(:"Install/Update","-i","--install-dir DIR","Gem repository directory to get installed","gems")do|value,options|options[:install_dir] =File.expand_path(value)endadd_option(:"Install/Update","-n","--bindir DIR","Directory where executables will be","placed when the gem is installed")do|value,options|options[:bin_dir] =File.expand_path(value)endadd_option(:"Install/Update","--document [TYPES]",Array,"Generate documentation for installed gems","List the documentation types you wish to","generate. For example: rdoc,ri")do|value,options|options[:document] =casevaluewhennilthen%w[ri]whenfalsethen []elsevalueendendadd_option(:"Install/Update","--build-root DIR","Temporary installation root. Useful for building","packages. Do not use this when installing remote gems.")do|value,options|options[:build_root] =File.expand_path(value)endadd_option(:"Install/Update","--vendor","Install gem into the vendor directory.","Only for use by gem repackagers.")do|_value,options|unlessGem.vendor_dirraiseGem::OptionParser::InvalidOption.new"your platform is not supported"endoptions[:vendor] =trueoptions[:install_dir] =Gem.vendor_direndadd_option(:"Install/Update","-N","--no-document","Disable documentation generation")do|_value,options|options[:document] = []endadd_option(:"Install/Update","-E","--[no-]env-shebang","Rewrite the shebang line on installed","scripts to use /usr/bin/env")do|value,options|options[:env_shebang] =valueendadd_option(:"Install/Update","-f","--[no-]force","Force gem to install, bypassing dependency","checks")do|value,options|options[:force] =valueendadd_option(:"Install/Update","-w","--[no-]wrappers","Use bin wrappers for executables","Not available on dosish platforms")do|value,options|options[:wrappers] =valueendadd_security_optionadd_option(:"Install/Update","--ignore-dependencies","Do not install any required dependent gems")do|value,options|options[:ignore_dependencies] =valueendadd_option(:"Install/Update","--[no-]format-executable","Make installed executable names match Ruby.","If Ruby is ruby18, foo_exec will be","foo_exec18")do|value,options|options[:format_executable] =valueendadd_option(:"Install/Update","--[no-]user-install","Install in user's home directory instead","of GEM_HOME.")do|value,options|options[:user_install] =valueendadd_option(:"Install/Update","--development","Install additional development","dependencies")do|_value,options|options[:development] =trueoptions[:dev_shallow] =trueendadd_option(:"Install/Update","--development-all","Install development dependencies for all","gems (including dev deps themselves)")do|_value,options|options[:development] =trueoptions[:dev_shallow] =falseendadd_option(:"Install/Update","--conservative","Don't attempt to upgrade gems already","meeting version requirement")do|_value,options|options[:conservative] =trueoptions[:minimal_deps] =trueendadd_option(:"Install/Update","--[no-]minimal-deps","Don't upgrade any dependencies that already","meet version requirements")do|value,options|options[:minimal_deps] =valueendadd_option(:"Install/Update","--[no-]post-install-message","Print post install message")do|value,options|options[:post_install_message] =valueendadd_option(:"Install/Update","-g","--file [FILE]","Read from a gem dependencies API file and","install the listed gems")do|v,_o|v||=Gem::GEM_DEP_FILES.finddo|file|File.exist?fileendunlessvmessage =v?v:"(tried #{Gem::GEM_DEP_FILES.join ", "})"raiseGem::OptionParser::InvalidArgument,"cannot find gem dependencies file #{message}"endoptions[:gemdeps] =vendadd_option(:"Install/Update","--without GROUPS",Array,"Omit the named groups (comma separated)","when installing from a gem dependencies","file")do|v,_o|options[:without_groups].concatv.map(&:intern)endadd_option(:Deprecated,"--default","Add the gem's full specification to","specifications/default and extract only its bin")do|v,_o|endadd_option(:"Install/Update","--explain","Rather than install the gems, indicate which would","be installed")do|v,_o|options[:explain] =vendadd_option(:"Install/Update","--[no-]lock","Create a lock file (when used with -g/--file)")do|v,_o|options[:lock] =vendadd_option(:"Install/Update","--[no-]suggestions","Suggest alternates when gems are not found")do|v,_o|options[:suggest_alternate] =vendadd_option(:"Install/Update","--target-rbconfig [FILE]","rbconfig.rb for the deployment target platform")do|v,_o|Gem.set_target_rbconfig(v)endend
Add the install/update options to the option parser.
Source
# File lib/rubygems/install_update_options.rb, line 200definstall_update_defaults_str"--document=ri"end
Default description for the gem install and update commands.
Source
# File lib/rubygems/install_update_options.rb, line 191definstall_update_options {document:%w[ri], }end
Default options for the gem install and update commands.