[Pkg-zsh-devel] Bug#953389: Bug#953389: zsh-common: completion for dscverify is missing

Daniel Shahaf danielsh at apache.org
Mon Mar 9 01:51:01 GMT 2020

Control: tags -1 confirmed
Control: affects -1 devscripts

Romain Porte wrote on Sun, 08 Mar 2020 21:50 +0100:
> I would be happy to help in the upstreaming process if you find it
> welcome. I prefer to create this bug first to avoid duplicate work
> and because this completion is Debian-specific, but I think it can
> be upstreamed easily given the other already-present completions.

Thanks.  Upstreaming would consist of emailing the patch to
zsh-workers at zsh.org and updating the metadata on this bug.  However,
have you considered proposing the completion for inclusion in
devscripts, alongside dscverify(1) and its bash completion?  devscripts
would just need to drop the completion file to /usr/share/zsh/vendor-completions/
when installing.

> diff -u -N --recursive ../zsh-5.8.orig/Completion/Debian/Command/_dscverify ./Completion/Debian/Command/_dscverify
> --- ../zsh-5.8.orig/Completion/Debian/Command/_dscverify	1970-01-01 01:00:00.000000000 +0100
> +++ ./Completion/Debian/Command/_dscverify	2020-03-08 21:36:53.897794438 +0100
> @@ -0,0 +1,19 @@
> +#compdef dscverify
> +
> +_dscverify() {
> +  all_opts=(

Make the variable local.

> +    '--help[show the help message and exit]'
> +    '--version[show the version + copyright and exit]'
> +    '--no-default-keyrings[do not check against de default keyrings]'


> +    '--keyring[Add keyring to the list of keyrings used]:keyring:_files -g "*.{kbx,gpg}(-.)"'

s/Add/add/ (see Etc/completion-style-guide)

Change «--keyring» to «*--keyring» if the option can be specified
multiple times.

> +    '(--nosigcheck --no-sig-check -u)'{--nosigcheck,--no-sig-check,-u}'[do not verify the GPG signature]'
> +    '(--no-conf --noconf)'{--no-conf,--noconf}'[do not read the devscripts config file]'

According to the man page on stable, --no-conf "can only be used as the
first option on the command line".  Perhaps only add this variable to
$all_opts when «(( CURRENT == 2 ))»?  (Double-check me on this; I may be
misremembering the zshcompwid(1) variables' semantics.)

> +    '--verbose[do not suppress GPG output]'
> +    '*:dsc file:_files -g "*.{changes,dsc}(-.)"'
> +  )
> +
> +  _arguments \
> +    "$all_opts[@]"
> +}
> +
> +_dscverify "$@"

If upstreaming this, could you state in a comment the version of
devscripts the completion was based on?  This is helpful when updating
completion functions down the road.

Thanks for the patch,


More information about the Pkg-zsh-devel mailing list