pkgcheck.checks.metadata module¶
- class pkgcheck.checks.metadata.BadDefaultUseFlags(flags, **kwargs)[source]¶
 Bases:
_UseFlagsResult,ErrorPackage IUSE contains bad default USE flags.
- flag_type = 'bad default'¶
 
- name = 'BadDefaultUseFlags'¶
 
- class pkgcheck.checks.metadata.BadDependency(depset, atom, msg, **kwargs)[source]¶
 Bases:
VersionResult,ErrorPackage dependency is bad for some reason.
- property desc¶
 Result description.
- name = 'BadDependency'¶
 
- class pkgcheck.checks.metadata.BadDescription(msg, pkg_desc=None, **kwargs)[source]¶
 Bases:
VersionResult,StylePackage’s description is bad for some reason.
- property desc¶
 Result description.
- name = 'BadDescription'¶
 
- class pkgcheck.checks.metadata.BadFilename(filenames, **kwargs)[source]¶
 Bases:
VersionResult,WarningURI uses unspecific or poor filename(s).
Archive filenames should be disambiguated using
->to rename them.- property desc¶
 Result description.
- name = 'BadFilename'¶
 
- class pkgcheck.checks.metadata.BadHomepage(msg, **kwargs)[source]¶
 Bases:
VersionResult,WarningA package’s HOMEPAGE is bad for some reason.
See the HOMEPAGE ebuild variable entry in the devmanual [1] for more information.
- property desc¶
 Result description.
- name = 'BadHomepage'¶
 
- class pkgcheck.checks.metadata.BadKeywords(pkg, **kwargs)[source]¶
 Bases:
VersionResult,WarningPackages using
-*should use package.mask instead.- desc = 'use package.mask or undefined keywords instead of KEYWORDS="-*"'¶
 
- name = 'BadKeywords'¶
 
- class pkgcheck.checks.metadata.BadProtocol(protocol, uris, **kwargs)[source]¶
 Bases:
VersionResult,ErrorURI uses an unsupported protocol.
Valid protocols are currently: http, https, and ftp
- property desc¶
 Result description.
- name = 'BadProtocol'¶
 
- class pkgcheck.checks.metadata.BannedEapi(eapi, **kwargs)[source]¶
 Bases:
_EapiResult,ErrorPackage’s EAPI is banned according to repo metadata.
- name = 'BannedEapi'¶
 
- class pkgcheck.checks.metadata.DependencyCheck(*args, use_addon)[source]¶
 Bases:
CheckVerify dependency attributes (e.g. RDEPEND).
- known_results = frozenset({<class 'pkgcheck.addons.UnstatedIuse'>, <class 'pkgcheck.checks.metadata.BadDependency'>, <class 'pkgcheck.checks.metadata.DeprecatedDep'>, <class 'pkgcheck.checks.metadata.InvalidBdepend'>, <class 'pkgcheck.checks.metadata.InvalidDepend'>, <class 'pkgcheck.checks.metadata.InvalidIdepend'>, <class 'pkgcheck.checks.metadata.InvalidPdepend'>, <class 'pkgcheck.checks.metadata.InvalidRdepend'>, <class 'pkgcheck.checks.metadata.MisplacedWeakBlocker'>, <class 'pkgcheck.checks.metadata.MissingPackageRevision'>, <class 'pkgcheck.checks.metadata.MissingUseDepDefault'>})¶
 
- required_addons = (<class 'pkgcheck.addons.UseAddon'>,)¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.DeprecatedDep(attr, atoms, **kwargs)[source]¶
 Bases:
VersionResult,WarningPackage dependencies matching deprecated packages flagged in profiles/package.deprecated.
- property desc¶
 Result description.
- name = 'DeprecatedDep'¶
 
- class pkgcheck.checks.metadata.DeprecatedEapi(eapi, **kwargs)[source]¶
 Bases:
_EapiResult,WarningPackage’s EAPI is deprecated according to repo metadata.
- name = 'DeprecatedEapi'¶
 
- class pkgcheck.checks.metadata.DeprecatedLicense(licenses, **kwargs)[source]¶
 Bases:
_LicenseResult,WarningDeprecated license usage.
- license_type = 'deprecated'¶
 
- name = 'DeprecatedLicense'¶
 
- class pkgcheck.checks.metadata.DescriptionCheck(options, **kwargs)[source]¶
 Bases:
CheckDESCRIPTION checks.
Check on length (<=80), too short (<10), or generic (lifted from eclass or just using the package’s name).
- known_results = frozenset({<class 'pkgcheck.checks.metadata.BadDescription'>})¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.DuplicateKeywords(keywords, **kwargs)[source]¶
 Bases:
VersionResult,StylePackages having duplicate KEYWORDS.
- property desc¶
 Result description.
- name = 'DuplicateKeywords'¶
 
- class pkgcheck.checks.metadata.EapiCheck(*args, eclass_addon)[source]¶
 Bases:
CheckScan for packages with banned or deprecated EAPIs.
- known_results = frozenset({<class 'pkgcheck.checks.metadata.BannedEapi'>, <class 'pkgcheck.checks.metadata.DeprecatedEapi'>, <class 'pkgcheck.checks.metadata.StableKeywordsOnTestingEapi'>, <class 'pkgcheck.checks.metadata.UnsupportedEclassEapi'>})¶
 
- required_addons = (<class 'pkgcheck.addons.eclass.EclassAddon'>,)¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.HomepageCheck(options, **kwargs)[source]¶
 Bases:
CheckHOMEPAGE checks.
- generic_sites = frozenset({'https://gentoo.org', 'https://www.gentoo.org'})¶
 
- known_results = frozenset({<class 'pkgcheck.checks.metadata.BadHomepage'>})¶
 
- missing_categories = frozenset({'acct-group', 'acct-user', 'virtual'})¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.InvalidBdepend(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage has invalid BDEPEND.
- attr = 'bdepend'¶
 
- name = 'InvalidBdepend'¶
 
- class pkgcheck.checks.metadata.InvalidDepend(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage has invalid DEPEND.
- attr = 'depend'¶
 
- name = 'InvalidDepend'¶
 
- class pkgcheck.checks.metadata.InvalidEapi(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage’s EAPI is invalid.
- attr = 'eapi'¶
 
- name = 'InvalidEapi'¶
 
- class pkgcheck.checks.metadata.InvalidIdepend(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage has invalid IDEPEND.
- attr = 'idepend'¶
 
- name = 'InvalidIdepend'¶
 
- class pkgcheck.checks.metadata.InvalidLicense(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage’s LICENSE is invalid.
- attr = 'license'¶
 
- name = 'InvalidLicense'¶
 
- class pkgcheck.checks.metadata.InvalidPdepend(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage has invalid PDEPEND.
- attr = 'pdepend'¶
 
- name = 'InvalidPdepend'¶
 
- class pkgcheck.checks.metadata.InvalidProperties(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage’s PROPERTIES is invalid.
- attr = 'properties'¶
 
- name = 'InvalidProperties'¶
 
- class pkgcheck.checks.metadata.InvalidRdepend(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage has invalid RDEPEND.
- attr = 'rdepend'¶
 
- name = 'InvalidRdepend'¶
 
- class pkgcheck.checks.metadata.InvalidRequiredUse(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage’s REQUIRED_USE is invalid.
- attr = 'required_use'¶
 
- name = 'InvalidRequiredUse'¶
 
- class pkgcheck.checks.metadata.InvalidRestrict(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage’s RESTRICT is invalid.
- attr = 'restrict'¶
 
- name = 'InvalidRestrict'¶
 
- class pkgcheck.checks.metadata.InvalidSlot(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage’s SLOT is invalid.
- attr = 'slot'¶
 
- name = 'InvalidSlot'¶
 
- class pkgcheck.checks.metadata.InvalidSrcUri(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultPackage’s SRC_URI is invalid.
- attr = 'fetchables'¶
 
- name = 'InvalidSrcUri'¶
 
- class pkgcheck.checks.metadata.InvalidUseFlags(flags, **kwargs)[source]¶
 Bases:
_UseFlagsResult,ErrorPackage IUSE contains invalid USE flags.
- flag_type = 'invalid'¶
 
- name = 'InvalidUseFlags'¶
 
- class pkgcheck.checks.metadata.IuseCheck(*args, use_addon)[source]¶
 Bases:
CheckIUSE validity checks.
- known_results = frozenset({<class 'pkgcheck.checks.metadata.BadDefaultUseFlags'>, <class 'pkgcheck.checks.metadata.InvalidUseFlags'>, <class 'pkgcheck.checks.metadata.UnknownUseFlags'>})¶
 
- required_addons = (<class 'pkgcheck.addons.UseAddon'>,)¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- use_expand_groups = ('cpu_flags',)¶
 
- class pkgcheck.checks.metadata.KeywordsCheck(*args, use_addon, keywords_addon)[source]¶
 Bases:
CheckCheck package keywords for sanity; empty keywords, and -* are flagged.
- known_results = frozenset({<class 'pkgcheck.checks.metadata.BadKeywords'>, <class 'pkgcheck.checks.metadata.DuplicateKeywords'>, <class 'pkgcheck.checks.metadata.OverlappingKeywords'>, <class 'pkgcheck.checks.metadata.UnknownKeywords'>, <class 'pkgcheck.checks.metadata.UnsortedKeywords'>, <class 'pkgcheck.checks.metadata.VirtualKeywordsUpdate'>})¶
 
- required_addons = (<class 'pkgcheck.addons.UseAddon'>, <class 'pkgcheck.addons.KeywordsAddon'>)¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.LicenseCheck(*args, use_addon)[source]¶
 Bases:
CheckLICENSE validity checks.
- known_results = frozenset({<class 'pkgcheck.addons.UnstatedIuse'>, <class 'pkgcheck.checks.metadata.DeprecatedLicense'>, <class 'pkgcheck.checks.metadata.InvalidLicense'>, <class 'pkgcheck.checks.metadata.MissingLicense'>, <class 'pkgcheck.checks.metadata.MissingLicenseRestricts'>, <class 'pkgcheck.checks.metadata.UnknownLicense'>, <class 'pkgcheck.checks.metadata.UnnecessaryLicense'>})¶
 
- required_addons = (<class 'pkgcheck.addons.UseAddon'>,)¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- unlicensed_categories = frozenset({'acct-group', 'acct-user', 'virtual'})¶
 
- class pkgcheck.checks.metadata.LocalUseCheck(*args, use_addon)[source]¶
 Bases:
CheckCheck local USE flags in metadata.xml for various issues.
- known_results = frozenset({<class 'pkgcheck.addons.UnstatedIuse'>, <class 'pkgcheck.checks.metadata.MatchingGlobalUse'>, <class 'pkgcheck.checks.metadata.MissingLocalUseDesc'>, <class 'pkgcheck.checks.metadata.ProbableGlobalUse'>, <class 'pkgcheck.checks.metadata.ProbableUseExpand'>, <class 'pkgcheck.checks.metadata.UnderscoreInUseFlag'>, <class 'pkgcheck.checks.metadata.UnusedLocalUse'>})¶
 
- required_addons = (<class 'pkgcheck.addons.UseAddon'>,)¶
 
- scope = <PackageScope desc='package' @0x7fb113484b90>¶
 
- class pkgcheck.checks.metadata.MatchingGlobalUse(flag, **kwargs)[source]¶
 Bases:
PackageResult,WarningLocal USE flag description matches a global USE flag.
- property desc¶
 Result description.
- name = 'MatchingGlobalUse'¶
 
- class pkgcheck.checks.metadata.MisplacedWeakBlocker(attr, atom, **kwargs)[source]¶
 Bases:
Warning,VersionResultWeak blocker is within a misplaced dependency class.
Weak blockers control whether we ignore file collisions at the point of merge, so being (exclusively) defined in DEPEND or BDEPEND is wrong.
Note that in cases where the weak blocker is also defined in RDEPEND, this warning won’t be triggered, to give leeway given this is a common ebuild pattern.
- property desc¶
 Result description.
- name = 'MisplacedWeakBlocker'¶
 
- class pkgcheck.checks.metadata.MissingLicense(pkg, **kwargs)[source]¶
 Bases:
VersionResult,ErrorPackage has no LICENSE defined.
- desc = 'no license defined'¶
 
- name = 'MissingLicense'¶
 
- class pkgcheck.checks.metadata.MissingLicenseRestricts(license_group, license, restrictions, **kwargs)[source]¶
 Bases:
VersionResult,WarningRestrictive license used without matching RESTRICT.
- property desc¶
 Result description.
- name = 'MissingLicenseRestricts'¶
 
- class pkgcheck.checks.metadata.MissingLocalUseDesc(flags, **kwargs)[source]¶
 Bases:
PackageResult,WarningLocal USE flag(s) missing descriptions.
- property desc¶
 Result description.
- name = 'MissingLocalUseDesc'¶
 
- class pkgcheck.checks.metadata.MissingPackageRevision(dep: str, op: str, atom: str, suggestions: list[str], **kwargs)[source]¶
 Bases:
VersionResult,WarningMissing package revision in =cat/pkg dependencies.
The dependency string uses the
=,<=or>operator without specifying a revision. These operators are frequently misused, with assumptions they apply to all revisions of the given version, while they do only apply to-r0.If applying the operator to
-r0only is intentional, then-r0should be appended to make it explicit. Otheriwse,~can be used instead of=, and-r9999or next version can be used for other operators.- property desc¶
 Result description.
- name = 'MissingPackageRevision'¶
 
- class pkgcheck.checks.metadata.MissingSlotDep(dep, dep_slots, **kwargs)[source]¶
 Bases:
VersionResult,WarningMissing slot value in dependencies.
The package dependency does not specify a slot but the target package has multiple slots. The behavior for satisfying this kind of dependency is not strictly defined, and may result in either any or the newest package slot being accepted.
Please verify whether the package works with all the dependency slots. If only one slot is actually acceptable, specify it explicitly. If multiple slots are acceptable, please use either
:=or explicit:*slot operator. The operators are described in detail in the devmanual [2].[2] https://devmanual.gentoo.org/general-concepts/dependencies/#slot-dependencies
- property desc¶
 Result description.
- name = 'MissingSlotDep'¶
 
- class pkgcheck.checks.metadata.MissingSlotDepCheck(*args, use_addon)[source]¶
 Bases:
CheckCheck for missing slot dependencies.
- known_results = frozenset({<class 'pkgcheck.checks.metadata.MissingSlotDep'>})¶
 
- required_addons = (<class 'pkgcheck.addons.UseAddon'>,)¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.MissingTestRestrict(pkg, **kwargs)[source]¶
 Bases:
VersionResult,WarningMissing
RESTRICT="!test? ( test )".Traditionally, it was assumed that
IUSE=testis a special flag that is implicitly enabled when runningsrc_test()is enabled. However, this is not standarized and packages need to explicitly specifyRESTRICT="!test? ( test )"in order to guarantee that test phase will be skipped when the flag is disabled and therefore test dependencies may not be installed.- property desc¶
 Result description.
- name = 'MissingTestRestrict'¶
 
- class pkgcheck.checks.metadata.MissingUnpackerDep(eapi, filenames, unpackers, **kwargs)[source]¶
 Bases:
VersionResult,WarningMissing dependency on a required unpacker package.
Package uses an archive format for which an unpacker is not provided by the system set, and lacks an explicit dependency on the unpacker package.
- property desc¶
 Result description.
- name = 'MissingUnpackerDep'¶
 
- class pkgcheck.checks.metadata.MissingUnpackerDepCheck(*args, use_addon)[source]¶
 Bases:
CheckCheck whether package is missing unpacker dependencies.
- known_results = frozenset({<class 'pkgcheck.checks.metadata.MissingUnpackerDep'>})¶
 
- non_system_unpackers = {'.zip': frozenset({'app-arch/unzip'}), '.7z': frozenset({'app-arch/7zip'}), '.rar': frozenset({'app-arch/rar', 'app-arch/unrar'}), '.lha': frozenset({'app-arch/lha'}), '.lzh': frozenset({'app-arch/lha'})}¶
 
- required_addons = (<class 'pkgcheck.addons.UseAddon'>,)¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.MissingUri(filenames, **kwargs)[source]¶
 Bases:
VersionResult,WarningRESTRICT=fetch isn’t set, yet no full URI exists.
- property desc¶
 Result description.
- name = 'MissingUri'¶
 
- class pkgcheck.checks.metadata.MissingUseDepDefault(attr, atom, flag, pkgs, **kwargs)[source]¶
 Bases:
VersionResult,WarningPackage dependencies with USE dependencies missing defaults.
- property desc¶
 Result description.
- name = 'MissingUseDepDefault'¶
 
- class pkgcheck.checks.metadata.NonexistentBlocker(attr, atom, **kwargs)[source]¶
 Bases:
VersionResult,WarningNo matches for blocker dependency in repo history.
For the gentoo repo this means it was either removed before the CVS -> git transition (which occurred around 2015-08-08) or it never existed at all.
Note that this ignores slot/subslot deps and USE deps in blocker atoms.
- property desc¶
 Result description.
- name = 'NonexistentBlocker'¶
 
- class pkgcheck.checks.metadata.OutdatedBlocker(attr, atom, age, **kwargs)[source]¶
 Bases:
VersionResult,InfoBlocker dependency removed at least four years ago from the tree.
Note that this ignores slot/subslot deps and USE deps in blocker atoms.
- property desc¶
 Result description.
- name = 'OutdatedBlocker'¶
 
- class pkgcheck.checks.metadata.OutdatedBlockersCheck(*args, git_addon)[source]¶
 Bases:
CheckCheck for outdated and nonexistent blocker dependencies.
- known_results = frozenset({<class 'pkgcheck.checks.metadata.NonexistentBlocker'>, <class 'pkgcheck.checks.metadata.OutdatedBlocker'>})¶
 
- required_addons = (<class 'pkgcheck.addons.git.GitAddon'>,)¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.OverlappingKeywords(keywords, **kwargs)[source]¶
 Bases:
VersionResult,StylePackages having overlapping arch and ~arch KEYWORDS.
- property desc¶
 Result description.
- name = 'OverlappingKeywords'¶
 
- class pkgcheck.checks.metadata.ProbableGlobalUse(flag, **kwargs)[source]¶
 Bases:
PackageResult,StyleLocal USE flag description closely matches a global USE flag.
- property desc¶
 Result description.
- name = 'ProbableGlobalUse'¶
 
- class pkgcheck.checks.metadata.ProbableUseExpand(flag, group, **kwargs)[source]¶
 Bases:
PackageResult,WarningLocal USE flag that isn’t overridden matches a USE_EXPAND group.
The local USE flag starts with a prefix reserved to USE_EXPAND group, yet it is not a globally defined member of this group. According to the standing policy [3], all possible values for each USE_EXPAND must be defined and documented globally.
This warning can be fixed via moving the local flag description into appropriate profiles/desc file.
[3] - property desc¶
 Result description.
- name = 'ProbableUseExpand'¶
 
- class pkgcheck.checks.metadata.PropertiesCheck(*args, use_addon)[source]¶
 Bases:
_RestrictPropertiesCheckPROPERTIES related checks.
- known_results = frozenset({<class 'pkgcheck.addons.UnstatedIuse'>, <class 'pkgcheck.checks.metadata.InvalidProperties'>, <class 'pkgcheck.checks.metadata.UnknownProperties'>})¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.RedundantUriRename(pkg, message)[source]¶
 Bases:
VersionResult,StyleURI uses a redundant rename that doesn’t change the filename.
- property desc¶
 Result description.
- name = 'RedundantUriRename'¶
 
- class pkgcheck.checks.metadata.RequiredUseCheck(*args, use_addon, profile_addon)[source]¶
 Bases:
CheckREQUIRED_USE validity checks.
- known_results = frozenset({<class 'pkgcheck.addons.UnstatedIuse'>, <class 'pkgcheck.checks.metadata.InvalidRequiredUse'>, <class 'pkgcheck.checks.metadata.RequiredUseDefaults'>})¶
 
- required_addons = (<class 'pkgcheck.addons.UseAddon'>, <class 'pkgcheck.addons.profiles.ProfileAddon'>)¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.RequiredUseDefaults(required_use, use=(), keyword=None, profile=None, num_profiles=None, **kwargs)[source]¶
 Bases:
VersionResult,WarningDefault USE flag settings don’t satisfy REQUIRED_USE.
The REQUIRED_USE constraints specified in the ebuild are not satisfied by the default USE flags used in one or more profiles. This means that users on those profiles may be unable to install the package out of the box, without having to modify package.use.
This warning is usually fixed via using IUSE defaults to enable one of the needed flags, modifying package.use in the most relevant profiles or modifying REQUIRED_USE.
- property desc¶
 Result description.
- name = 'RequiredUseDefaults'¶
 
- class pkgcheck.checks.metadata.RestrictCheck(*args, use_addon)[source]¶
 Bases:
_RestrictPropertiesCheckRESTRICT related checks.
- known_results = frozenset({<class 'pkgcheck.addons.UnstatedIuse'>, <class 'pkgcheck.checks.metadata.InvalidRestrict'>, <class 'pkgcheck.checks.metadata.UnknownRestrict'>})¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.RestrictTestCheck(*args)[source]¶
 Bases:
CheckCheck whether packages specify RESTRICT=”!test? ( test )”.
- known_results = frozenset({<class 'pkgcheck.checks.metadata.MissingTestRestrict'>})¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.SourcingCheck(options, **kwargs)[source]¶
 Bases:
CheckScan for packages with sourcing errors or invalid, sourced metadata variables.
- known_results = frozenset({<class 'pkgcheck.checks.metadata.InvalidEapi'>, <class 'pkgcheck.checks.metadata.InvalidSlot'>, <class 'pkgcheck.checks.metadata.SourcingError'>})¶
 
- priority = -100¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- class pkgcheck.checks.metadata.SourcingError(attr, msg, **kwargs)[source]¶
 Bases:
MetadataError,VersionResultFailed sourcing ebuild.
- attr = 'data'¶
 
- name = 'SourcingError'¶
 
- class pkgcheck.checks.metadata.SrcUriCheck(*args, use_addon)[source]¶
 Bases:
CheckSRC_URI related checks.
Verify that URIs are valid, fetchable, using a supported protocol, and don’t use unspecific filenames.
- known_results = frozenset({<class 'pkgcheck.addons.UnstatedIuse'>, <class 'pkgcheck.checks.metadata.BadFilename'>, <class 'pkgcheck.checks.metadata.BadProtocol'>, <class 'pkgcheck.checks.metadata.InvalidSrcUri'>, <class 'pkgcheck.checks.metadata.MissingUri'>, <class 'pkgcheck.checks.metadata.RedundantUriRename'>, <class 'pkgcheck.checks.metadata.SrcUriFilenameDotPrefix'>, <class 'pkgcheck.checks.metadata.TarballAvailable'>, <class 'pkgcheck.checks.metadata.UnknownMirror'>, <class 'pkgcheck.checks.metadata.UnstableSrcUri'>})¶
 
- required_addons = (<class 'pkgcheck.addons.UseAddon'>,)¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- valid_protos = frozenset({'ftp', 'http', 'https'})¶
 
- class pkgcheck.checks.metadata.SrcUriFilenameDotPrefix(filename, **kwargs)[source]¶
 Bases:
VersionResult,ErrorSRC_URI’s filename starts with a dot.
This is usually a mistake, as referencing empty variable before the dot. Also those files might appear as hidden in many file system viewers. Rename the filename using the
->operator.- property desc¶
 Result description.
- name = 'SrcUriFilenameDotPrefix'¶
 
- class pkgcheck.checks.metadata.StableKeywordsOnTestingEapi(eapi, keywords, **kwargs)[source]¶
 Bases:
VersionResult,ErrorPackage has stable keywords on EAPI marked as testing-only.
- property desc¶
 Result description.
- name = 'StableKeywordsOnTestingEapi'¶
 
- class pkgcheck.checks.metadata.StaleLiveCheck(options, **kwargs)[source]¶
 Bases:
CheckCheck for stale live ebuilds.
- known_results = frozenset({<class 'pkgcheck.checks.metadata.StaleLiveEAPI'>})¶
 
- scope = <PackageScope desc='package' @0x7fb113484b90>¶
 
- class pkgcheck.checks.metadata.StaleLiveEAPI(old_eapi, new_eapi, **kwargs)[source]¶
 Bases:
VersionResult,WarningLive ebuild is using older an EAPI then release ebuilds.
Live ebuilds should always use an EAPI version at least as new as the release ebuilds.
- property desc¶
 Result description.
- name = 'StaleLiveEAPI'¶
 
- class pkgcheck.checks.metadata.TarballAvailable(uris, **kwargs)[source]¶
 Bases:
VersionResult,StyleURI uses .zip archive when .tar* is available.
Tarballs should be preferred over zip archives due to better compression and no extra unpack dependencies.
- property desc¶
 Result description.
- name = 'TarballAvailable'¶
 
- class pkgcheck.checks.metadata.UnderscoreInUseFlag(flag, **kwargs)[source]¶
 Bases:
PackageResult,StyleUSE flag uses underscore that is reserved for USE_EXPAND.
The USE flag name uses underscore. However, according to PMS underscores are reserved for USE_EXPAND flags [4]. The recommended replacement is hyphen (‘-‘).
[4] - property desc¶
 Result description.
- name = 'UnderscoreInUseFlag'¶
 
- class pkgcheck.checks.metadata.UnknownKeywords(keywords, **kwargs)[source]¶
 Bases:
VersionResult,ErrorPackages using unknown KEYWORDS.
- property desc¶
 Result description.
- name = 'UnknownKeywords'¶
 
- class pkgcheck.checks.metadata.UnknownLicense(licenses, **kwargs)[source]¶
 Bases:
_LicenseResult,ErrorLicense usage with no matching license file.
- license_type = 'unknown'¶
 
- name = 'UnknownLicense'¶
 
- class pkgcheck.checks.metadata.UnknownMirror(mirror, uri, **kwargs)[source]¶
 Bases:
VersionResult,ErrorURI uses an unknown mirror.
- property desc¶
 Result description.
- name = 'UnknownMirror'¶
 
- class pkgcheck.checks.metadata.UnknownProperties(properties, **kwargs)[source]¶
 Bases:
VersionResult,WarningPackage’s PROPERTIES metadata has unknown entries.
- property desc¶
 Result description.
- name = 'UnknownProperties'¶
 
- class pkgcheck.checks.metadata.UnknownRestrict(restricts, **kwargs)[source]¶
 Bases:
VersionResult,WarningPackage’s RESTRICT metadata has unknown entries.
- property desc¶
 Result description.
- name = 'UnknownRestrict'¶
 
- class pkgcheck.checks.metadata.UnknownUseFlags(flags, **kwargs)[source]¶
 Bases:
_UseFlagsResult,ErrorPackage IUSE contains unknown USE flags.
- flag_type = 'unknown'¶
 
- name = 'UnknownUseFlags'¶
 
- class pkgcheck.checks.metadata.UnnecessaryLicense(pkg, **kwargs)[source]¶
 Bases:
VersionResult,WarningLICENSE defined for package that is license-less.
- property desc¶
 Result description.
- name = 'UnnecessaryLicense'¶
 
- class pkgcheck.checks.metadata.UnsortedKeywords(keywords, sorted_keywords=(), **kwargs)[source]¶
 Bases:
VersionResult,StylePackages with unsorted KEYWORDS.
KEYWORDS should be sorted in alphabetical order with prefix keywords (those with hyphens in them, e.g. amd64-fbsd) after regular arches and globs (e.g.
-*) before them.- property desc¶
 Result description.
- name = 'UnsortedKeywords'¶
 
- class pkgcheck.checks.metadata.UnstableSrcUri(uris, **kwargs)[source]¶
 Bases:
VersionResult,WarningSRC_URI uses unstable URIs.
This is usually a mistake, as those URIs are not guaranteed to be unchanged which might cause checksum mismatch.
- property desc¶
 Result description.
- name = 'UnstableSrcUri'¶
 
- class pkgcheck.checks.metadata.UnsupportedEclassEapi(eapi, eclass, **kwargs)[source]¶
 Bases:
VersionResult,WarningEbuild inherits an eclass with outdated @SUPPORTED_EAPIS.
- property desc¶
 Result description.
- name = 'UnsupportedEclassEapi'¶
 
- class pkgcheck.checks.metadata.UnusedLocalUse(flags, **kwargs)[source]¶
 Bases:
PackageResult,WarningUnused local USE flag(s).
- property desc¶
 Result description.
- name = 'UnusedLocalUse'¶
 
- class pkgcheck.checks.metadata.UseFlagWithoutDeps(flags, **kwargs)[source]¶
 Bases:
VersionResult,WarningSpecial USE flag with little utility and without effect on dependencies.
Various USE flags, such as “ipv6”, should be always turned on or off, and their existence is questionable, in cases were it doesn’t introduce new dependencies. Other USE flags, such as “bash-completion”, without any new dependencies, are probable violators of small files QA policy [5].
In cases where this USE flag is appropriate, you can silence this warning by adding a description to this USE flag in
metadata.xmlfile and thus making it a local USE flag instead of global one.[5] https://projects.gentoo.org/qa/policy-guide/installed-files.html#pg0301
- property desc¶
 Result description.
- name = 'UseFlagWithoutDeps'¶
 
- class pkgcheck.checks.metadata.UseFlagsWithoutEffectsCheck(*args)[source]¶
 Bases:
GentooRepoCheckCheck for USE flags without effects.
- known_results = frozenset({<class 'pkgcheck.checks.metadata.UseFlagWithoutDeps'>})¶
 
- scope = <PackageScope desc='version' @0x7fb1134c5220>¶
 
- warn_use_small_files = frozenset({'bash-completion', 'fish-completion', 'ipv6', 'logrotate', 'unicode', 'vim-syntax', 'zsh-completion'})¶
 
- class pkgcheck.checks.metadata.VirtualKeywordsUpdate(keywords, **kwargs)[source]¶
 Bases:
VersionResult,InfoVirtual packages with keywords that can be updated to match dependencies.
- property desc¶
 Result description.
- name = 'VirtualKeywordsUpdate'¶
 
- class pkgcheck.checks.metadata.VirtualProvidersCheck(options, **kwargs)[source]¶
 Bases:
CheckCheck providers of virtual packages.
- known_results = frozenset({<class 'pkgcheck.checks.metadata.VirtualWithBdepend'>, <class 'pkgcheck.checks.metadata.VirtualWithDepend'>, <class 'pkgcheck.checks.metadata.VirtualWithSingleProvider'>})¶
 
- scope = <PackageScope desc='package' @0x7fb113484b90>¶
 
- useless_depends = (('depend', <class 'pkgcheck.checks.metadata.VirtualWithDepend'>), ('bdepend', <class 'pkgcheck.checks.metadata.VirtualWithBdepend'>))¶
 
- class pkgcheck.checks.metadata.VirtualWithBdepend(pkg, **kwargs)[source]¶
 Bases:
VersionResult,WarningVirtual package with a BDEPEND defined.
- desc = 'virtual package with a BDEPEND defined'¶
 
- name = 'VirtualWithBdepend'¶
 
- class pkgcheck.checks.metadata.VirtualWithDepend(pkg, **kwargs)[source]¶
 Bases:
VersionResult,WarningVirtual package with a BDEPEND defined.
- desc = 'virtual package with a DEPEND defined'¶
 
- name = 'VirtualWithDepend'¶
 
- class pkgcheck.checks.metadata.VirtualWithSingleProvider(provider, **kwargs)[source]¶
 Bases:
PackageResult,WarningVirtual package with a single remaining provider.
Virtual packages are used to provide a common interface for multiple implementations of a given functionality. However, if there is only a single implementation, there is no need for a virtual package. In such case, consider adding the package to package.deprecated and removing the virtual package.
- property desc¶
 Result description.
- name = 'VirtualWithSingleProvider'¶