Package: licenserecon
Version: 7.0

I am currently working on updating the `debian/copyright` file for the
`grep` package to ensure it is fully compliant and that `lrc` runs
cleanly. After making extensive updates to accurately document the
licenses of all source files, I've encountered some behavior from
`lrc` that I suspect might be a bug.

Initially, `lrc` reported numerous license mismatches. I have since
added specific `Files:` stanzas for all the reported files, using
wildcards where appropriate. However, `lrc` continues
to report a large number of discrepancies.

The core of the issue seems to be that `lrc` is not correctly matching
files to their corresponding stanzas in `debian/copyright`. For many
files, the `d/copyright` column in the `lrc` output is GPL-3+ even
though the file has a more specific license defined.

$ lrc
: Versions: licenserecon '7.0'  licensecheck '3.3.9-1'
Parsing Source Tree  ....
Reading d/copyright  ....
Running licensecheck ....
d/copyright      | licensecheck
GPL-3+           | FSFAP             INSTALL
GPL-3+           | FSFAP and/or GFDL-1.3+ NEWS
GPL-3+           | FSFAP             TODO
GPL-3+           | FSFULLR           aclocal.m4
GPL-3+           | FSFULLR           build-aux/config.rpath
GPL-3+           | GPL-2+            build-aux/gnupload
GPL-3+           | X11               build-aux/install-sh
GPL-3+           | FSFUL             configure
GPL-3+           | GFDL-1.3+         doc/grep.info
GPL-3+           | GFDL-1.3+         doc/grep.texi


This suggests that this definition overrides the other definitions somehow:
  Files: *
  Copyright: 1992-2023 Free Software Foundation, Inc.
   2004, Stepan Kasal <[email protected]>
   2007, Tony Abou-Assaleh <[email protected]>
   2009-2012, Jim Meyering <[email protected]> and Paolo Bonzini
<[email protected]>
  License: GPL-3+

  Files: INSTALL TODO
  Copyright: 1994-1996, 1999-2002, 2004-2017, 2020-2023 Free Software
Foundation, Inc.
  License: FSFAP

This behavior persists despite trying different structures for the
`debian/copyright` file, such as using a preamble for the default
license versus a `Files: *` stanza. The current structure follows the
Debian Policy Manual and seems correct, yet the tool does not produce
the expected output.

Could you please advise if this is expected behavior or if it might be
a bug in how `licenserecon` parses the copyright file?

You can reproduce this by running
  gbp clone https://salsa.debian.org/debian/grep.git
  cd grep
  lrc

It might be that this is no bug and I simply misunderstood how the
`debian/copyright` file is supposed to be structured.

Reply via email to