pkgdev bugs - Automatic bugs filer¶
Synopsis¶
pkgdev bugs [–config CONFIG_FILE] [–domain DOMAIN] [-h] [–debug] [–color BOOLEAN] [–api-key TOKEN] [–dot DOT] [–edit-graph] [–auto-cc-arches EMAIL] [–find-by-maintainer EMAIL] [–projects] [–filter-stablereqs] [–blocks BUG] [-s | -k] [-a ARCH] [–commits [tree-ish] | –staged [tree-ish]] [–git-remote REMOTE] [-p PROFILE] [–stabletime DAYS] [target …]
Positional Arguments¶
target
extended atom matching of packages
Options¶
--api-key TOKEN
The Bugzilla API key to use for authentication. WARNING: using this option will expose your API key to other users of the same system. Consider instead saving your API key in a file named
~/.bugzrc
in an INI format like so:[default] key = <your API key>
Another supported option is to save your API key in a file named
~/.bugz_token
.--dot DOT
path file where to save the graph in dot format
--edit-graph
When this argument is passed, pkgdev will open the graph in the editor (either
$VISUAL
or$EDITOR
) before filing bugs. The graph is represented in TOML format. After saving and exiting the editor, the tool would use the graph from the file to file bugs.--auto-cc-arches EMAIL
Comma separated list of email addresses, for which automatically add CC-ARCHES if one of the maintainers matches the email address. If the package is maintainer-needed, always add CC-ARCHES.
--find-by-maintainer EMAIL
Comma separated list of email addresses, for which pkgdev will collect all packages maintained by.
Note that this flag requires to go over all packages in the repository to find matches, which can be slow (between 1 to 3 seconds).
--projects
Include packages maintained by projects, whose members include the emails of maintainers passed to
--find-by-maintainer
.Note that this flag requires to fetch the
projects.xml
file fromhttps://api.gentoo.org
.--filter-stablereqs
Filter targets passed to pkgdev (command line, stabilization groups, maintainer search, stdin) for packages with active
StableRequest
result.--blocks BUG
Collection of bug ids which should be blocked by newly created bugs. Only bugs created for passed targets would be blockers, excluding other bugs which were created as dependencies.
-s, --stablereq
File stable request bugs
-k, --keywording
File rekeywording bugs
--stabletime DAYS
An integer number of days before a package version is flagged by StableRequestCheck. Defaults to 30 days.
Config Options¶
--config CONFIG_FILE
Load custom pkgdev scan settings from a given file.
Note that custom user settings override all other system and repo-level settings.
It’s also possible to disable all types of settings loading by specifying an argument of ‘false’ or ‘no’.
--domain DOMAIN
custom pkgcore domain to use for this operation
Base Options¶
-h, --help
Show this help message and exit. To get more information see the related man page.
--debug
Enable debug checks and show verbose debug output.
--color BOOLEAN
Toggle colored output support. This can be used to forcibly enable color support when piping output or other situations where stdout is not a tty.
Arches¶
-a ARCH, --arches ARCH
Comma separated list of arches to enable and disable.
To specify disabled arches prefix them with ‘-’. Note that when starting the argument list with a disabled arch an equals sign must be used, e.g. -a=-arch, otherwise the disabled arch argument is treated as an option.
By default all repo defined arches are used; however, stable-related checks (e.g. UnstableOnly) default to the set of arches having stable profiles in the target repo.
Git¶
Git repo support for various checks.
Pkgcheck can create virtual package repos from a given git repo’s history in order to provide more info for checks relating to stable requests, outdated blockers, or local commits. These virtual repos are cached and updated every run if new commits are detected.
Git repos must have a supported config in order to work properly. Specifically, pkgcheck assumes that the origin branch exists and tracks upstream.
Additionally, the origin/HEAD ref must exist. If it doesn’t, running git
remote set-head origin master
or similar for other branches will create
it.
You can override the default git remote used for all git comparison using
--git-remote
.
--commits [tree-ish]
Targets are determined from the committed changes compared to a given reference that defaults to the repo’s origin.
For example, to scan all the packages that have been changed in the current branch compared to the branch named ‘old’ use
pkgcheck scan --commits old
. For two separate branches named ‘old’ and ‘new’ usepkgcheck scan --commits old..new
.--staged [tree-ish]
Targets are determined using all staged changes for the git repo. Unstaged changes and untracked files are ignored by temporarily stashing them during the scanning process.
--git-remote REMOTE
The git remote to be used for all operations by pkgcheck. The default value, and the recommended value is
origin
, but you can use any valid git remote name.
Profiles¶
-p PROFILE, --profiles PROFILE
Comma separated list of profiles to enable and disable for scanning. Any profiles specified in this fashion will be the only profiles that get scanned, skipping any disabled profiles. In addition, if no profiles are explicitly enabled, all profiles defined in the target repo’s profiles.desc file will be scanned except those marked as experimental (exp).
To specify disabled profiles prefix them with
-
which removes the from the list of profiles to be considered. Note that when starting the argument list with a disabled profile an equals sign must be used, e.g.-p=-path/to/profile
, otherwise the disabled profile argument is treated as an option.The special keywords of
stable
,dev
,exp
, anddeprecated
correspond to the lists of stable, development, experimental, and deprecated profiles, respectively. Therefore, to only scan all stable profiles pass thestable
argument to –profiles. Additionally the keywordall
can be used to scan all defined profiles in the target repo.