Exception: Gem::UnsatisfiableDependencyError

Inherits:
DependencyError show all
Defined in:
lib/rubygems/exceptions.rb

Overview

Raised by Resolver when a dependency requests a gem for which there is no spec.

Instance Attribute Summary collapse

Attributes inherited from Exception

#source_exception

Instance Method Summary collapse

Methods included from Deprecate

deprecate, skip, skip=, skip_during

Constructor Details

#initialize(dep, platform_mismatch = nil) ⇒ UnsatisfiableDependencyError

Creates a new UnsatisfiableDependencyError for the unsatisfiable Gem::Resolver::DependencyRequest dep


252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
# File 'lib/rubygems/exceptions.rb', line 252

def initialize dep, platform_mismatch=nil
  if platform_mismatch and !platform_mismatch.empty?
    plats = platform_mismatch.map { |x| x.platform.to_s }.sort.uniq
    super "Unable to resolve dependency: No match for '#{dep}' on this platform. Found: #{plats.join(', ')}"
  else
    if dep.explicit?
      super "Unable to resolve dependency: user requested '#{dep}'"
    else
      super "Unable to resolve dependency: '#{dep.request_context}' requires '#{dep}'"
    end
  end

  @dependency = dep
  @errors     = []
end

Instance Attribute Details

#dependencyObject (readonly)

The unsatisfiable dependency. This is a Gem::Resolver::DependencyRequest, not a Gem::Dependency


241
242
243
# File 'lib/rubygems/exceptions.rb', line 241

def dependency
  @dependency
end

#errorsObject

Errors encountered which may have contributed to this exception


246
247
248
# File 'lib/rubygems/exceptions.rb', line 246

def errors
  @errors
end

Instance Method Details

#nameObject

The name of the unresolved dependency


271
272
273
# File 'lib/rubygems/exceptions.rb', line 271

def name
  @dependency.name
end

#versionObject

The Requirement of the unresolved dependency (not Version).


278
279
280
# File 'lib/rubygems/exceptions.rb', line 278

def version
  @dependency.requirement
end