287 lines
12 KiB
YAML
287 lines
12 KiB
YAML
---
|
|
# This yaml syntax file holds various configuration data for
|
|
# the Quality-Assurance checks performed.
|
|
|
|
# no random drive-by commits please
|
|
# Please obtain authorization from the portage team
|
|
#
|
|
# Overlay maintainers override/add/negate checks at your discression
|
|
# but support for third party module will be limited to the plugin API
|
|
#
|
|
|
|
# Repoman API version (do not edit)
|
|
version: 1
|
|
# minimum
|
|
repoman_version: 2.3.3
|
|
|
|
|
|
allowed_filename_chars: "a-zA-Z0-9._-+:"
|
|
max_description_length: 80
|
|
|
|
# missingvars check: Mandatory (non-defaulted) ebuild variables
|
|
# list
|
|
missingvars:
|
|
- KEYWORDS
|
|
- LICENSE
|
|
- DESCRIPTION
|
|
- HOMEPAGE
|
|
|
|
# file.executable check, non executable files
|
|
# list
|
|
no_exec_files:
|
|
- Manifest
|
|
- ChangeLog
|
|
- metadata.xml
|
|
|
|
# qahelp: Primary QA help messages to describe the errors or warnings
|
|
# Dictionary
|
|
qahelp:
|
|
Entries:
|
|
IO_error: "Attempting to commit, and an IO error was encountered access the Entries file"
|
|
ebuild:
|
|
invalidname: "Ebuild files with a non-parseable or syntactically incorrect name (or using 2.1 versioning extensions)"
|
|
namenomatch: "Ebuild files that do not have the same name as their parent directory"
|
|
notadded: "Ebuilds that exist but have not been added to the vcs"
|
|
patches: "PATCHES variable should be a bash array to ensure white space safety"
|
|
changelog:
|
|
ebuildadded: "An ebuild was added but the ChangeLog was not modified"
|
|
missing: "Missing ChangeLog files"
|
|
notadded: "ChangeLogs that exist but have not been added to cvs"
|
|
dependency:
|
|
bad: "User-visible ebuilds with unsatisfied dependencies (matched against *visible* ebuilds)"
|
|
badmasked: "Masked ebuilds with unsatisfied dependencies (matched against *all* ebuilds)"
|
|
badindev: "User-visible ebuilds with unsatisfied dependencies (matched against *visible* ebuilds) in developing arch"
|
|
badmaskedindev: Masked ebuilds with unsatisfied dependencies (matched against *all* ebuilds) in developing arch"
|
|
badtilde: "Uses the ~ dep operator with a non-zero revision part, which is useless (the revision is ignored)"
|
|
missingslot: "RDEPEND matches more than one SLOT but does not specify a slot and/or use the := or :* slot operator"
|
|
perlcore: "This ebuild directly depends on a package in perl-core; it should use the corresponding virtual instead."
|
|
syntax: "Syntax error in dependency string (usually an extra/missing space/parenthesis)"
|
|
unknown: "Ebuild has a dependency that refers to an unknown package (which may be valid if it is a blocker for a renamed/removed package, or is an alternative choice provided by an overlay)"
|
|
badslotop: "RDEPEND contains ':=' slot operator under '||' dependency."
|
|
DESCRIPTION:
|
|
missing: "Ebuilds that have a missing or empty DESCRIPTION variable"
|
|
toolong: "DESCRIPTION is over %d characters"
|
|
digest:
|
|
assumed: "Existing digest must be assumed correct (Package level only)"
|
|
missing: "Some files listed in SRC_URI aren't referenced in the Manifest"
|
|
unused: "Some files listed in the Manifest aren't referenced in SRC_URI"
|
|
EAPI:
|
|
definition: "EAPI definition does not conform to PMS section 7.3.1 (first non-comment, non-blank line)"
|
|
deprecated: "Ebuilds that use features that are deprecated in the current EAPI"
|
|
incompatible: "Ebuilds that use features that are only available with a different EAPI"
|
|
unsupported: "Ebuilds that have an unsupported EAPI version (you must upgrade portage)"
|
|
ebuild:
|
|
absdosym: "This ebuild uses absolute target to dosym where relative symlink could be used instead"
|
|
badheader: "This ebuild has a malformed header"
|
|
majorsyn: "This ebuild has a major syntax error that may cause the ebuild to fail partially or fully"
|
|
minorsyn: "This ebuild has a minor syntax error that contravenes gentoo coding style"
|
|
nesteddie: "Placing 'die' inside ( ) prints an error, but doesn't stop the ebuild."
|
|
output: "A simple sourcing of the ebuild produces output; this breaks ebuild policy."
|
|
syntax: "Error generating cache entry for ebuild; typically caused by ebuild syntax error or digest verification failure"
|
|
file:
|
|
executable: "Ebuilds, digests, metadata.xml, Manifest, and ChangeLog do not need the executable bit"
|
|
size: "Files in the files directory must be under 20 KiB"
|
|
size-fatal: "Files in the files directory must be under 60 KiB"
|
|
empty: "Empty file in the files directory"
|
|
name: "File/dir name must be composed of only the following chars: %s "
|
|
UTF8: "File is not UTF8 compliant"
|
|
HOMEPAGE:
|
|
missing: "Ebuilds that have a missing or empty HOMEPAGE variable"
|
|
virtual: "Virtuals that have a non-empty HOMEPAGE variable"
|
|
missingurischeme: "HOMEPAGE is missing an URI scheme"
|
|
inherit:
|
|
deprecated: "Ebuild inherits a deprecated eclass"
|
|
missing: "Ebuild uses functions from an eclass but does not inherit it"
|
|
unused: "Ebuild inherits an eclass but does not use it"
|
|
IUSE:
|
|
invalid: "This ebuild has a variable in IUSE that is not in the use.desc or its metadata.xml file"
|
|
missing: "This ebuild has a USE conditional which references a flag that is not listed in IUSE"
|
|
rubydeprecated: "The ebuild has set a ruby interpreter in USE_RUBY, that is not available as a ruby target anymore"
|
|
java:
|
|
eclassesnotused: "With virtual/jdk in DEPEND you must inherit a java eclass"
|
|
KEYWORDS:
|
|
dropped: "Ebuilds that appear to have dropped KEYWORDS for some arch"
|
|
invalid: "This ebuild contains KEYWORDS that are not listed in profiles/arch.list or for which no valid profile was found"
|
|
missing: "Ebuilds that have a missing or empty KEYWORDS variable"
|
|
stable: "Ebuilds that have been added directly with stable KEYWORDS"
|
|
stupid: "Ebuilds that use KEYWORDS=-* instead of package.mask"
|
|
LICENSE:
|
|
deprecated: "This ebuild is listing a deprecated license."
|
|
invalid: "This ebuild is listing a license that doesnt exist in portages license/ dir."
|
|
missing: "Ebuilds that have a missing or empty LICENSE variable"
|
|
syntax: "Syntax error in LICENSE (usually an extra/missing space/parenthesis)"
|
|
virtual: "Virtuals that have a non-empty LICENSE variable"
|
|
LIVEVCS:
|
|
stable: "This ebuild is a live checkout from a VCS but has stable keywords."
|
|
unmasked: "This ebuild is a live checkout from a VCS but has keywords and is not masked in the global package.mask."
|
|
manifest:
|
|
bad: "Manifest has missing or incorrect digests"
|
|
metadata:
|
|
bad: "Bad metadata.xml files"
|
|
missing: "Missing metadata.xml files"
|
|
warning: "Warnings in metadata.xml files"
|
|
PDEPEND:
|
|
suspect: "PDEPEND contains a package that usually only belongs in DEPEND."
|
|
portage:
|
|
internal: "The ebuild uses an internal Portage function or variable"
|
|
PROVIDE:
|
|
syntax: "Syntax error in PROVIDE (usually an extra/missing space/parenthesis)"
|
|
PROPERTIES:
|
|
syntax: "Syntax error in PROPERTIES (usually an extra/missing space/parenthesis)"
|
|
RDEPEND:
|
|
implicit: "RDEPEND is unset in the ebuild which triggers implicit RDEPEND=$DEPEND assignment (prior to EAPI 4)"
|
|
suspect: "RDEPEND contains a package that usually only belongs in DEPEND."
|
|
repo:
|
|
eapi-banned: "The ebuild uses an EAPI which is banned by the repository's metadata/layout.conf settings"
|
|
eapi-deprecated: "The ebuild uses an EAPI which is deprecated by the repository's metadata/layout.conf settings"
|
|
RESTRICT:
|
|
invalid: "This ebuild contains invalid RESTRICT values."
|
|
syntax: "Syntax error in RESTRICT (usually an extra/missing space/parenthesis)"
|
|
REQUIRED_USE:
|
|
syntax: "Syntax error in REQUIRED_USE (usually an extra/missing space/parenthesis)"
|
|
SLOT:
|
|
invalid: "Ebuilds that have a missing or invalid SLOT variable value"
|
|
SRC_URI:
|
|
syntax: "Syntax error in SRC_URI (usually an extra/missing space/parenthesis)"
|
|
mirror: "A uri listed in profiles/thirdpartymirrors is found in SRC_URI"
|
|
upstream:
|
|
workaround: "The ebuild works around an upstream bug, an upstream bug should be filed and tracked in bugs.gentoo.org"
|
|
uri:
|
|
https: "URI uses http:// but should use https://"
|
|
usage:
|
|
obsolete: "The ebuild makes use of an obsolete construct"
|
|
variable:
|
|
invalidchar: "A variable contains an invalid character that is not part of the ASCII character set"
|
|
readonly: "Assigning a readonly variable"
|
|
usedwithhelpers: "Ebuild uses D, ROOT, ED, EROOT or EPREFIX with helpers"
|
|
oldstyle: "The ebuild PROVIDEs an old-style virtual (see GLEP 37)"
|
|
virtual:
|
|
suspect: "Ebuild contains a package that usually should be pulled via virtual/, not directly."
|
|
wxwidgets:
|
|
eclassnotused: "Ebuild DEPENDs on x11-libs/wxGTK without inheriting wxwidgets.eclass"
|
|
|
|
# qawarnings: Non-fatal warnings,
|
|
# all values in here MUST have a corresponding qahelp entry
|
|
# list
|
|
qawarnings:
|
|
- changelog.missing
|
|
- changelog.notadded
|
|
- dependency.unknown
|
|
- dependency.badmasked
|
|
- dependency.badindev
|
|
- dependency.badmaskedindev
|
|
- dependency.badtilde
|
|
- dependency.missingslot
|
|
- dependency.perlcore
|
|
- DESCRIPTION.toolong
|
|
- digest.assumed
|
|
- digest.unused
|
|
- EAPI.deprecated
|
|
- ebuild.notadded
|
|
- ebuild.nesteddie
|
|
- ebuild.absdosym
|
|
- ebuild.minorsyn
|
|
- ebuild.badheader
|
|
- ebuild.patches
|
|
- file.empty
|
|
- file.size
|
|
- HOMEPAGE.virtual
|
|
- inherit.unused
|
|
- inherit.deprecated
|
|
- IUSE.rubydeprecated
|
|
- java.eclassesnotused
|
|
- KEYWORDS.dropped
|
|
- KEYWORDS.stupid
|
|
- KEYWORDS.missing
|
|
- LICENSE.deprecated
|
|
- LICENSE.virtual
|
|
- metadata.warning
|
|
- PDEPEND.suspect
|
|
- portage.internal
|
|
- RDEPEND.implicit
|
|
- RDEPEND.suspect
|
|
- repo.eapi-deprecated
|
|
- RESTRICT.invalid
|
|
- usage.obsolete
|
|
- upstream.workaround
|
|
- uri.https
|
|
- virtual.suspect
|
|
- wxwidgets.eclassnotused
|
|
|
|
# ruby_deprecated: Deprecated ruby targets
|
|
# list
|
|
ruby_deprecated:
|
|
- ruby_targets_ruby18
|
|
- ruby_targets_ruby19
|
|
- ruby_targets_ruby20
|
|
|
|
# suspect_rdepend: Common build only Dependencies
|
|
# not usually run time dependencies
|
|
# list
|
|
suspect_rdepend:
|
|
- app-arch/cabextract
|
|
- app-arch/rpm2targz
|
|
- app-doc/doxygen
|
|
- dev-lang/nasm
|
|
- dev-lang/swig
|
|
- dev-lang/yasm
|
|
- dev-perl/extutils-pkgconfig
|
|
- dev-qt/linguist-tools
|
|
- dev-util/byacc
|
|
- dev-util/cmake
|
|
- dev-util/ftjam
|
|
- dev-util/gperf
|
|
- dev-util/gtk-doc
|
|
- dev-util/gtk-doc-am
|
|
- dev-util/intltool
|
|
- dev-util/jam
|
|
- dev-util/pkg-config-lite
|
|
- dev-util/pkgconf
|
|
- dev-util/pkgconfig
|
|
- dev-util/pkgconfig-openbsd
|
|
- dev-util/scons
|
|
- dev-util/unifdef
|
|
- dev-util/yacc
|
|
- media-gfx/ebdftopcf
|
|
- sys-apps/help2man
|
|
- sys-devel/autoconf
|
|
- sys-devel/automake
|
|
- sys-devel/bin86
|
|
- sys-devel/bison
|
|
- sys-devel/dev86
|
|
- sys-devel/flex
|
|
- sys-devel/m4
|
|
- sys-devel/pmake
|
|
- virtual/linux-sources
|
|
- virtual/linuxtv-dvb-headers
|
|
- virtual/os-headers
|
|
- virtual/pkgconfig
|
|
- x11-misc/bdftopcf
|
|
- x11-misc/imake
|
|
|
|
# suspect_virtual: Dependencies that should usually be made to the virtual
|
|
# Not to the final target library
|
|
# dictionary
|
|
suspect_virtual:
|
|
dev-libs/libusb: virtual/libusb
|
|
dev-libs/libusb-compat: virtual/libusb
|
|
dev-libs/libusbx: virtual/libusb
|
|
dev-util/pkg-config-lite: virtual/pkgconfig
|
|
dev-util/pkgconf: virtual/pkgconfig
|
|
dev-util/pkgconfig: virtual/pkgconfig
|
|
dev-util/pkgconfig-openbsd: virtual/pkgconfig
|
|
|
|
# valid_restrict: ???
|
|
# list
|
|
valid_restrict:
|
|
- binchecks
|
|
- bindist
|
|
- fetch
|
|
- installsources
|
|
- mirror
|
|
- preserve-libs
|
|
- primaryuri
|
|
- splitdebug
|
|
- strip
|
|
- test
|
|
- userpriv
|