Package: lintian-brush
Version: 0.89
Severity: wishlist

Dear Maintainer,

I use git-config(1)'s ‘include.path’ and ‘includeIf.*.path’ settings to
set user.email to my @debian.org email address gobally for all my Debian
repositories while keeping my private email address as general default:

    $XDG_CONFIG_HOME/git/config:
    [user]
        email = guil...@example.net
    [includeIf "gitdir:/path/to/debian/**/.git"]
        path = debian.config

    $XDG_CONFIG_HOME/git/debian.config:
    [user]
        email = guil...@debian.org
    [merge "dpkg-mergechangelogs"]
        name = debian/changelog merge driver
        driver = dpkg-mergechangelogs -m %O %A %B %A

This works just fine as far as the git binary is concerned: `git config
user.email` returns ‘guil...@debian.org’ in repositories under
‘/path/to/debian’, and ‘guil...@example.net’ everywhere else.  (Unless
overwritten in the repo config, of course.)

However lintian-brush doesn't seem to understand includeIf.*.path (nor
include.path):

    /path/to/debian/pkg $ lintian-brush --identity
    Committer identity: Guilhem Moulin <guil...@example.net>
    Changelog identity: Guilhem Moulin <guil...@debian.org>

If I understand the source correctly, this is because the gitconfig
library it's using doesn't understand these settings.  It might be a
wishlist bug for the library, however lintian-brush could maybe call
`git config user.email` instead and let the git binary take care of the
parsing and fallback logic?

Alternatively, I see it honors the GIT_COMMITTER_EMAIL environment
variable.  I don't want to set this variable globally though; devscripts
use DEBEMAIL and I have DEBEMAIL=guil...@debian.org.  Since
lintian-brush is Debian-specific, wouldn't it make sense to honor
DEBEMAIL resp. DEBFULLNAME before GIT_COMMITTER_EMAIL resp.
GIT_COMMITTER_NAME?

If you don't like the above, how about new options username/email in
lintian-brush.conf? :-)

Thanks for maintaining lintian-brush!
Cheers,
-- 
Guilhem.

-- System Information:
Debian Release: bullseye/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 5.9.0-3-amd64 (SMP w/8 CPU threads)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US:en
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages lintian-brush depends on:
ii  devscripts           2.20.5
ii  python3              3.9.0-4
ii  python3-breezy       3.1.0-8
ii  python3-debian       0.1.39
ii  python3-debmutate    0.16
ii  python3-distro-info  0.24
ii  python3-dulwich      0.20.8-1+b1
ii  python3-iniparse     0.4-3
ii  python3-ruamel.yaml  0.16.12-2

Versions of packages lintian-brush recommends:
pn  decopy               <none>
ii  dos2unix             7.4.1-1
ii  gpg                  2.2.20-1
ii  libdebhelper-perl    13.3
ii  lintian              2.104.0
pn  python3-asyncpg      <none>
pn  python3-bs4          <none>
pn  python3-levenshtein  <none>
pn  python3-pyinotify    <none>
pn  python3-toml         <none>

Versions of packages lintian-brush suggests:
pn  breezy-debian      <none>
pn  gnome-pkg-tools    <none>
ii  po-debconf         1.0.21
pn  postgresql-common  <none>

-- no debconf information

Attachment: signature.asc
Description: PGP signature

Reply via email to