Package conary :: Package conaryclient :: Module resolve :: Class DependencySolver
[hide private]
[frames] | no frames]

Class DependencySolver

source code

object --+
         |
        DependencySolver

Instance Methods [hide private]
 
__init__(self, client, cfg, repos, db)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
source code
 
_findCriticalJobInfo(self, jobSet, updateSettings) source code
 
resolveDependencies(self, uJob, jobSet, split=False, resolveDeps=True, useRepos=True, resolveSource=None, keepRequired=True, criticalUpdateInfo=None)
Determine and possibly resolve dependency problems.
source code
 
addUpdates(self, troves, uJob, jobSet, ineligible, keepList, troveSource, resolveSource)
Add the given dep resolution solutions to the current jobSet.
source code
 
checkDeps(self, uJob, jobSet, trvSrc, findOrdering, resolveDeps, ineligible, keepRequired=True, criticalUpdateInfo=None, check=None)
Given a jobSet, use its dependencies to determine an ordering, resolve problems with jobs that have difficult dependency problems immediately, and determine any missing dependencies.
source code
 
resolveEraseByUpdating(self, trvSrc, cannotResolve, uJob, jobSet, ineligible, check)
Attempt to resolve broken erase dependencies by updating the package that has the dependency on the trove that is being erased.
source code
 
resolveEraseByKeeping(self, trvSrc, cannotResolve, uJob, jobSet) source code
 
addPackagesForComponents(self, troves, troveSource, beingInstalled) source code

Inherited from object: __delattr__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __str__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, client, cfg, repos, db)
(Constructor)

source code 
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
Overrides: object.__init__
(inherited documentation)

resolveDependencies(self, uJob, jobSet, split=False, resolveDeps=True, useRepos=True, resolveSource=None, keepRequired=True, criticalUpdateInfo=None)

source code 
Determine and possibly resolve dependency problems.
Parameters:
  • uJob (local.database.UpdateJob) - update job we are resolving dependencies for
  • jobSet (list of job tuples) - jobs that are to be applied
  • split (bool) - if True, find an ordering for the jobs in jobSet plus any resolved jobs.
  • resolveDeps (bool) - If True, try to resolve any dependency problems by modifying the given job.
  • useRepos - If True, search for dependency solutions in the repository after searching the update job search source.
  • keepRequired (bool) - If True, the resolver will attempt to remove erase jobs from the job set to resolve dependency problems created by the erasure. If False, those problems will be reported instead.

resolveEraseByUpdating(self, trvSrc, cannotResolve, uJob, jobSet, ineligible, check)

source code 
Attempt to resolve broken erase dependencies by updating the package that has the dependency on the trove that is being erased.
Parameters:
  • ineligible - Ineligible troves are troves that were involved in resolveEraseByUpdating before.