Package yum :: Module depsolve :: Class Depsolve
[hide private]
[frames] | no frames]

Class Depsolve

source code


Dependency resolving class.

Instance Methods [hide private]
 
__init__(self)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
source code
 
doTsSetup(self) source code
 
_getTs(self, remove_only=False)
setup all the transaction set storage items we'll need This can't happen in __init__ b/c we don't know our installroot yet
source code
 
_getTsInfo(self, remove_only=False)
remove_only param.
source code
 
_setTsInfo(self, value) source code
 
_delTsInfo(self) source code
 
_getActionTs(self) source code
 
initActionTs(self)
sets up the ts we'll use for all the work
source code
 
whatProvides(self, name, flags, version)
searches the packageSacks for what provides the arguments returns a ListPackageSack of providing packages, possibly empty
source code
 
allowedMultipleInstalls(self, po)
takes a packageObject, returns 1 or 0 depending on if the package should/can be installed multiple times with different vers like kernels and kernel modules, for example
source code
 
populateTs(self, test=0, keepold=1)
take transactionData class and populate transaction set
source code
 
_dscb_procReq(self, po, niceformatneed)
Call the callback for processing requires, call the nicest one available.
source code
 
_processReq(self, po, requirement)
processes a Requires dep from the resolveDeps functions, returns a tuple of (CheckDeps, missingdep, conflicts, errors) the last item is an array of error messages
source code
 
_prco_req2req(self, req) source code
 
_err_missing_requires(self, reqPo, reqTup) source code
 
_requiringFromInstalled(self, requiringPo, requirement, errorlist)
processes the dependency resolution for a dep where the requiring package is installed
source code
 
_quickWhatProvides(self, name, flags, version) source code
 
_requiringFromTransaction(self, requiringPo, requirement, errorlist)
processes the dependency resolution for a dep where requiring package is in the transaction set
source code
 
_dscb_procConflict(self, po, niceformatneed)
Call the callback for processing requires, call the nicest one available.
source code
 
_processConflict(self, po, conflict, conflicting_po)
processes a Conflict dep from the resolveDeps() method
source code
 
_undoDepInstalls(self) source code
 
prof_resolveDeps(self) source code
 
cprof_resolveDeps(self) source code
 
resolveDeps(self, full_check=True) source code
 
_resolveRequires(self, errors) source code
 
_checkInstall(self, txmbr) source code
 
_checkRemove(self, txmbr) source code
 
_checkFileRequires(self) source code
 
_checkConflicts(self) source code
 
isPackageInstalled(self, pkgname) source code
 
_isPackageInstalled(self, pkgname) source code
 
_compare_providers(self, pkgs, reqpo)
take the list of pkgs and score them based on the requesting package return a dictionary of po=score
source code

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

Static Methods [hide private]
 
_prco_req_nfv2req(rn, rf, rv)
 
_sort_req_key(pkgtup)
Get a sort key for a package requires from most "narrow" to least, this tries to ensure that if we have two reqs like "libfoo = 1.2.3-4" and "foo-api" (which is also provided by libxyz-foo) that we'll get just libfoo.
Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self)
(Constructor)

source code 

x.__init__(...) initializes x; see x.__class__.__doc__ for signature

Overrides: object.__init__
(inherited documentation)

_getTsInfo(self, remove_only=False)

source code 

remove_only param. says if we are going to do _only_ remove(s) in the transaction. If so we don't need to setup the remote repos.

_sort_req_key(pkgtup)
Static Method

 

Get a sort key for a package requires from most "narrow" to least, this tries to ensure that if we have two reqs like "libfoo = 1.2.3-4" and "foo-api" (which is also provided by libxyz-foo) that we'll get just libfoo. There are other similar cases this "handles".