Class: Bundler::Settings::Path
- Inherits:
- 
      Struct
      
        - Object
- Struct
- Bundler::Settings::Path
 
- Defined in:
- lib/bundler/settings.rb
Instance Attribute Summary collapse
- 
  
    
      #explicit_path  ⇒ Object 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Returns the value of attribute explicit_path. 
- 
  
    
      #system_path  ⇒ Object 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Returns the value of attribute system_path. 
Instance Method Summary collapse
- #base_path ⇒ Object
- #base_path_relative_to_pwd ⇒ Object
- #path ⇒ Object
- #use_system_gems? ⇒ Boolean
- #validate! ⇒ Object
Instance Attribute Details
#explicit_path ⇒ Object
Returns the value of attribute explicit_path
| 209 210 211 | # File 'lib/bundler/settings.rb', line 209 def explicit_path @explicit_path end | 
#system_path ⇒ Object
Returns the value of attribute system_path
| 209 210 211 | # File 'lib/bundler/settings.rb', line 209 def system_path @system_path end | 
Instance Method Details
#base_path ⇒ Object
| 222 223 224 225 226 227 | # File 'lib/bundler/settings.rb', line 222 def base_path path = explicit_path path ||= ".bundle" unless use_system_gems? path ||= Bundler.rubygems.gem_dir path end | 
#base_path_relative_to_pwd ⇒ Object
| 229 230 231 232 233 234 235 236 237 238 239 240 241 | # File 'lib/bundler/settings.rb', line 229 def base_path_relative_to_pwd base_path = Pathname.new(self.base_path) = base_path.(Bundler.root) relative_path = .relative_path_from(Pathname.pwd) if relative_path.to_s.start_with?("..") relative_path = base_path if base_path.absolute? else relative_path = Pathname.new(File.join(".", relative_path)) end relative_path rescue ArgumentError end | 
#path ⇒ Object
| 210 211 212 213 214 | # File 'lib/bundler/settings.rb', line 210 def path path = base_path path = File.join(path, Bundler.ruby_scope) unless use_system_gems? path end | 
#use_system_gems? ⇒ Boolean
| 216 217 218 219 220 | # File 'lib/bundler/settings.rb', line 216 def use_system_gems? return true if system_path return false if explicit_path !Bundler.feature_flag.default_install_uses_path? end | 
#validate! ⇒ Object
| 243 244 245 246 247 248 249 250 251 252 253 | # File 'lib/bundler/settings.rb', line 243 def validate! return unless explicit_path && system_path path = Bundler.settings.pretty_values_for(:path) path.unshift(nil, "path:") unless path.empty? system_path = Bundler.settings.pretty_values_for("path.system") system_path.unshift(nil, "path.system:") unless system_path.empty? disable_shared_gems = Bundler.settings.pretty_values_for(:disable_shared_gems) disable_shared_gems.unshift(nil, "disable_shared_gems:") unless disable_shared_gems.empty? raise InvalidOption, "Using a custom path while using system gems is unsupported.\n#{path.join("\n")}\n#{system_path.join("\n")}\n#{disable_shared_gems.join("\n")}" end |