module Bundler::Molinillo::SpecificationProvider

def allow_missing?(dependency)

Returns:
  • (Boolean) - whether this dependency can safely be skipped.

Parameters:
  • dependency (Object) --
def allow_missing?(dependency)
  false
end

def dependencies_for(specification)

Returns:
  • (Array) - the dependencies that are required by the given
    Parameters:
    • specification (Object) --

    Other tags:
      Note: - This method should be 'pure', i.e. the return value should depend
    def dependencies_for(specification)
      []
    end

    def name_for(dependency)

    Returns:
    • (String) - the name for the given `dependency`.

    Parameters:
    • dependency (Object) --

    Other tags:
      Note: - This method should be 'pure', i.e. the return value should depend
    def name_for(dependency)
      dependency.to_s
    end

    def name_for_explicit_dependency_source

    Returns:
    • (String) - the name of the source of explicit dependencies, i.e.
    def name_for_explicit_dependency_source
      'user-specified dependency'
    end

    def name_for_locking_dependency_source

    Returns:
    • (String) - the name of the source of 'locked' dependencies, i.e.
    def name_for_locking_dependency_source
      'Lockfile'
    end

    def requirement_satisfied_by?(requirement, activated, spec)

    Returns:
    • (Boolean) - whether `requirement` is satisfied by `spec` in the

    Parameters:
    • spec (Object) --
    • activated (DependencyGraph) -- the current dependency graph in the
    • requirement (Object) --
    def requirement_satisfied_by?(requirement, activated, spec)
      true
    end

    def search_for(dependency)

    Returns:
    • (Array) - the specifications that satisfy the given
      Parameters:
      • dependency (Object) --

      Other tags:
        Note: - This method should be 'pure', i.e. the return value should depend
      def search_for(dependency)
        []
      end

      def sort_dependencies(dependencies, activated, conflicts)

      Returns:
      • (Array) - a sorted copy of `dependencies`.
        Parameters:
        • conflicts ({String => Array}) --
        • activated (DependencyGraph) -- the current dependency graph in the
        • dependencies (Array) --
          def sort_dependencies(dependencies, activated, conflicts)
            dependencies.sort_by do |dependency|
              name = name_for(dependency)
              [
                activated.vertex_named(name).payload ? 0 : 1,
                conflicts[name] ? 0 : 1,
              ]
            end
          end