Bases: yum.packages.YumInstalledPackage
return list of installed pkgs requiring this package
Represents a problem in the rpmdb, from the check_*() functions.
Bases: yum.rpmsack.RPMDBProblem
Bases: yum.rpmsack.RPMDBProblem
Bases: yum.rpmsack.RPMDBProblem
Bases: yum.rpmsack.RPMDBProblem
Bases: yum.packageSack.PackageSackBase
Represent rpmdb as a packagesack
Checks for any missing dependencies.
Checks for any “duplicate packages” (those with multiple versions installed), we ignore any packages with a provide in the passed provide list (this is how installonlyworks, so we do the same).
Checks for any packages which are obsoleted by other packages.
For each package, check that a provides search for it’s name (and everything it provides) finds it.
Drop all cached data, this is a big perf. hit if we need to load the data back in again. Also note that if we ever call this while a transaction is ongoing we’ll have multiple copies of packages which is _bad_.
Drop cached data that is assocciated with the given transaction, this tries to keep as much data as possible and even does a “preload” on the checksums. This should be called once, when a transaction is complete.
Get a cached copy of the fileRequiresData for depsolving/checkFileRequires, note the giant comment in that function about how we don’t keep this perfect for the providers of the requires.
searches the rpmdb for what provides the arguments returns a list of pkg objects of providing packages, possibly empty
searches the rpmdb for what provides the arguments returns a list of pkgtuples of providing packages, possibly empty
return if there are any packages in the sack that match the given NAEVR or the NAEVR of the given po
Getter for the pkglist property. Returns a list of package tuples.
As simpleVersion() et. al. requires it, we “cache” this yumdb data as part of our rpmdb cache. We cache it with rpmdb data, even though someone _could_ use yumdb to alter it without changing the rpmdb ... don’t do that. NOTE: This is also used as a cache of pkgtups in the rpmdb.
Return a list of packages that have conflicts.
Return packages of the gpg-pubkeys ... hacky.
returns a list of header indexes based on the pkgtuple provided
Returns a list of packages. Note that the packages are always filtered to those matching the patterns/case. repoid is ignored, and is just here for compatibility with non-rpmdb sacks.
returns a list of yum installed package objects which own a file that are currently running or in use.
search the filelists in the rpms for anything matching name
Sets the internal cachedir value for the rpmdb, to be the “rpmdb-indexes” directory in the persisent yum storage.
Return a simple version for all installed packages.
We are going to reset the transaction, because the data we’ve added already might now be invalid (Eg. skip-broken, or splitting a transaction).
We are going to do a transaction, and the parameter will be the rpmdb version when we finish. The idea being we can update all our rpmdb caches for that rpmdb version.
Bases: object
class for access to the additional data not able to be stored in the rpmdb
Return an RPMDBAdditionalDataPackage Object for this package
populate out the dirs and remove all the items no longer in the rpmd and/or populate various bits to the currently installed version