Module: Gem::InstallUpdateOptions
- Included in:
- Commands::InstallCommand, Commands::UpdateCommand
- Defined in:
- lib/rubygems/install_update_options.rb
Overview
Mixin methods for install and update options for Gem::Commands
Instance Method Summary collapse
-
#add_install_update_options ⇒ Object
Add the install/update options to the option parser.
-
#install_update_defaults_str ⇒ Object
Default options for the gem install command.
Instance Method Details
#add_install_update_options ⇒ Object
Add the install/update options to the option parser.
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 |
# File 'lib/rubygems/install_update_options.rb', line 25 def # TODO: use @parser.accept OptionParser.accept Gem::Security::Policy do |value| require 'rubygems/security' raise OptionParser::InvalidArgument, 'OpenSSL not installed' unless defined?(Gem::Security::HighSecurity) value = Gem::Security::Policies[value] valid = Gem::Security::Policies.keys.sort = "#{value} (#{valid.join ', '} are valid)" raise OptionParser::InvalidArgument, if value.nil? value end add_option(:"Install/Update", '-i', '--install-dir DIR', 'Gem repository directory to get installed', 'gems') do |value, | [:install_dir] = File.(value) end add_option(:"Install/Update", '-n', '--bindir DIR', 'Directory where binary files are', 'located') do |value, | [:bin_dir] = File.(value) end add_option(:"Install/Update", '--[no-]document [TYPES]', Array, 'Generate documentation for installed gems', 'List the documentation types you wish to', 'generate. For example: rdoc,ri') do |value, | [:document] = case value when nil then %w[ri] when false then [] else value end end add_option(:"Install/Update", '--build-root DIR', 'Temporary installation root. Useful for building', 'packages. Do not use this when installing remote gems.') do |value, | [:build_root] = File.(value) end add_option(:"Install/Update", '--vendor', 'Install gem into the vendor directory.', 'Only for use by gem repackagers.') do |value, | unless Gem.vendor_dir then raise OptionParser::InvalidOption.new 'your platform is not supported' end [:vendor] = true [:install_dir] = Gem.vendor_dir end add_option(:"Install/Update", '-N', '--no-document', 'Disable documentation generation') do |value, | [:document] = [] end add_option(:Deprecated, '--[no-]rdoc', 'Generate RDoc for installed gems', 'Use --document instead') do |value, | if value then [:document] << 'rdoc' else [:document].delete 'rdoc' end [:document].uniq! end add_option(:Deprecated, '--[no-]ri', 'Generate ri data for installed gems.', 'Use --document instead') do |value, | if value then [:document] << 'ri' else [:document].delete 'ri' end [:document].uniq! end add_option(:"Install/Update", '-E', '--[no-]env-shebang', "Rewrite the shebang line on installed", "scripts to use /usr/bin/env") do |value, | [:env_shebang] = value end add_option(:"Install/Update", '-f', '--[no-]force', 'Force gem to install, bypassing dependency', 'checks') do |value, | [:force] = value end add_option(:"Install/Update", '-w', '--[no-]wrappers', 'Use bin wrappers for executables', 'Not available on dosish platforms') do |value, | [:wrappers] = value end add_option(:"Install/Update", '-P', '--trust-policy POLICY', Gem::Security::Policy, 'Specify gem trust policy') do |value, | [:security_policy] = value end add_option(:"Install/Update", '--ignore-dependencies', 'Do not install any required dependent gems') do |value, | [:ignore_dependencies] = value end add_option(:"Install/Update", '--[no-]format-executable', 'Make installed executable names match ruby.', 'If ruby is ruby18, foo_exec will be', 'foo_exec18') do |value, | [:format_executable] = value end add_option(:"Install/Update", '--[no-]user-install', 'Install in user\'s home directory instead', 'of GEM_HOME.') do |value, | [:user_install] = value end add_option(:"Install/Update", "--development", "Install additional development", "dependencies") do |value, | [:development] = true [:dev_shallow] = true end add_option(:"Install/Update", "--development-all", "Install development dependencies for all", "gems (including dev deps themselves)") do |value, | [:development] = true [:dev_shallow] = false end add_option(:"Install/Update", "--conservative", "Don't attempt to upgrade gems already", "meeting version requirement") do |value, | [:conservative] = true [:minimal_deps] = true end add_option(:"Install/Update", "--minimal-deps", "Don't upgrade any dependencies that already", "meet version requirements") do |value, | [:minimal_deps] = true end add_option(:"Install/Update", "--[no-]post-install-message", "Print post install message") do |value, | [:post_install_message] = value end add_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.find do |file| File.exist? file end unless v unless v then = v ? v : "(tried #{Gem::GEM_DEP_FILES.join ', '})" raise OptionParser::InvalidArgument, "cannot find gem dependencies file #{}" end [:gemdeps] = v end add_option(:"Install/Update", '--without GROUPS', Array, 'Omit the named groups (comma separated)', 'when installing from a gem dependencies', 'file') do |v,o| [:without_groups].concat v.map { |without| without.intern } end add_option(:"Install/Update", '--default', 'Add the gem\'s full specification to', 'specifications/default and extract only its bin') do |v,o| [:install_as_default] = v end add_option(:"Install/Update", '--explain', 'Rather than install the gems, indicate which would', 'be installed') do |v,o| [:explain] = v end add_option(:"Install/Update", '--[no-]lock', 'Create a lock file (when used with -g/--file)') do |v,o| [:lock] = v end add_option(:"Install/Update", '--[no-]suggestions', 'Suggest alternates when gems are not found') do |v,o| [:suggest_alternate] = v end end |
#install_update_defaults_str ⇒ Object
Default options for the gem install command.
234 235 236 |
# File 'lib/rubygems/install_update_options.rb', line 234 def install_update_defaults_str '--document=rdoc,ri --wrappers' end |