On Sat, Dec 16, 2017 at 09:51:48AM +0000, Chris Lamb wrote: > Fixed in Git: > > > https://anonscm.debian.org/git/lintian/lintian.git/commit/?id=588cbc9069b53c8be4ca6e66e010cfb507b095e6
Thanks for the fix; however, this doesn't look like it covers the cases I originally reported. This covers packages matching /^lib.+-dev$/ in section "libdevel"; I certainly agree that the tag also applies there. However, I originally proposed also applying this to packages in section "libs" matching /^lib/ and not /-bin$/ , and I reviewed every package matching that test to make sure there were no false positives. I've attached a patch implementing this. - Josh Triplett
>From 48c06e8d04bf8ba5e4e7c96f0e6243faa1fe5d44 Mon Sep 17 00:00:00 2001 From: Josh Triplett <j...@joshtriplett.org> Date: Sat, 16 Dec 2017 09:12:16 -0800 Subject: [PATCH] excessive-priority-for-library-package: Handle non-dev packages too Exclude packages ending in -bin (for libc-bin and future-proofing) and libc packages. Expand the test accordingly. --- checks/fields.pm | 6 +++-- .../debian/debian/control.in | 27 +++++++++++++++++++++- .../tags | 1 + 3 files changed, 31 insertions(+), 3 deletions(-) diff --git a/checks/fields.pm b/checks/fields.pm index f5cb67123..37c4a906d 100644 --- a/checks/fields.pm +++ b/checks/fields.pm @@ -593,8 +593,10 @@ sub run { unless $KNOWN_PRIOS->known($priority); tag 'excessive-priority-for-library-package', $priority - if $pkg =~ m/^lib.+-dev$/o - and $info->field('section', '') eq 'libdevel' + if $pkg =~ m/^lib/o + and $pkg !~ m/-bin$/o + and $pkg !~ m/^libc[0-9.]+$/o + and any { $_ eq $info->field('section', '') } qw(libdevel libs) and any { $_ eq $priority } qw(required important standard); } diff --git a/t/tests/fields-excessive-priority-for-library-package/debian/debian/control.in b/t/tests/fields-excessive-priority-for-library-package/debian/debian/control.in index 7cc798109..2bb8a6964 100644 --- a/t/tests/fields-excessive-priority-for-library-package/debian/debian/control.in +++ b/t/tests/fields-excessive-priority-for-library-package/debian/debian/control.in @@ -5,6 +5,16 @@ Standards-Version: {$standards_version} Build-Depends: {$build_depends} Rules-Requires-Root: no +Package: lib{$source}42 +Architecture: {$architecture} +Depends: $\{shlibs:Depends\}, $\{misc:Depends\} +Priority: important +Description: {$description} (lib) + This is a test package designed to exercise some feature or tag of + Lintian. It is part of the Lintian test suite and may do very odd + things. It should not be installed like a regular package. It may + be an empty package. + Package: lib{$source}-dev Architecture: {$architecture} Depends: $\{shlibs:Depends\}, $\{misc:Depends\} @@ -15,6 +25,21 @@ Description: {$description} (dev) Lintian. It is part of the Lintian test suite and may do very odd things. It should not be installed like a regular package. It may be an empty package. + . + (This is a dev package.) + +Package: lib{$source}-false-positive-bin +Architecture: {$architecture} +Depends: $\{shlibs:Depends\}, $\{misc:Depends\} +Section: libdevel +Priority: required +Description: {$description} (false positive bin) + This is a test package designed to exercise some feature or tag of + Lintian. It is part of the Lintian test suite and may do very odd + things. It should not be installed like a regular package. It may + be an empty package. + . + (This is a -bin false positive) Package: lib{$source}-false-positive-dev Architecture: {$architecture} @@ -27,4 +52,4 @@ Description: {$description} (false positive) things. It should not be installed like a regular package. It may be an empty package. . - (This is a false positive) + (This is a -dev false positive) diff --git a/t/tests/fields-excessive-priority-for-library-package/tags b/t/tests/fields-excessive-priority-for-library-package/tags index 22cee044d..1b388a49c 100644 --- a/t/tests/fields-excessive-priority-for-library-package/tags +++ b/t/tests/fields-excessive-priority-for-library-package/tags @@ -1 +1,2 @@ W: libfields-excessive-priority-for-library-package-dev: excessive-priority-for-library-package standard +W: libfields-excessive-priority-for-library-package42: excessive-priority-for-library-package important -- 2.15.1