This is an automated email from the git hooks/post-receive script. rouca pushed a commit to branch master in repository lintian.
commit f71f3901fcc23db666d3de176526e91fd4f228a2 Author: Bastien ROUCARIÈS <[email protected]> Date: Fri Aug 25 22:22:39 2017 +0200 Use Lintian::Data for section/name mapping --- checks/fields.pm | 34 +++++++++++++--------------------- data/fields/name_section_mappings | 16 ++++++++++++++++ debian/changelog | 1 + 3 files changed, 30 insertions(+), 21 deletions(-) diff --git a/checks/fields.pm b/checks/fields.pm index cb91491..4ad96ad 100644 --- a/checks/fields.pm +++ b/checks/fields.pm @@ -96,23 +96,14 @@ our @known_java_pkg = map { qr/$_/ } ( ); # Mapping of package names to section names -my @NAME_SECTION_MAPPINGS = ( - [qr/-docs?$/ => 'doc'], - [qr/-dbg(?:sym)?$/ => 'debug'], - [qr/^(?:python-)?zope/ => 'zope'], - [qr/^python3?-/ => 'python'], - [qr/^r-(?:cran|bioc|other)-/ => 'gnu-r'], - [qr/^lib.*-perl$/ => 'perl'], - [qr/^lib.*-cil(?:-dev)?$/ => 'cli-mono'], - [qr/^lib.*-(?:java|gcj)$/ => 'java'], - [qr/^(?:lib)php-/ => 'php'], - [qr/^lib(?:hugs|ghc6?)-/ => 'haskell'], - [qr/^lib.*-ruby(?:1\.\d)?$/ => 'ruby'], - [qr/^lib.*-(?:ocaml|camlp4)-dev$/ => 'ocaml'], - [qr/^lib.*-dev$/ => 'libdevel'], - [qr/^gir\d+\.\d+-.*-\d+\.\d+$/ => 'introspection'], - [qr/^libjs-/ => 'javascript'], -); +my $NAME_SECTION_MAPPINGS = Lintian::Data->new( + 'fields/name_section_mappings', + qr/\s*=>\s*/, + sub { + my $regex = qr/$_[0]/x; + $_[0] = $_[1]; + return $regex; + }); my %VCS_EXTRACT = ( browser => sub { return @_;}, @@ -547,14 +538,15 @@ sub run { # Check package name <-> section. oldlibs is a special case; let # anything go there. if ($parts[-1] ne 'oldlibs') { - foreach my $map (@NAME_SECTION_MAPPINGS) { - next unless ($pkg =~ $map->[0]); + foreach my $section ($NAME_SECTION_MAPPINGS->all()) { + my $regex = $NAME_SECTION_MAPPINGS->value($section); + next unless ($pkg =~ m{$regex}); my $area = ''; $area = "$parts[0]/" if (scalar @parts == 2); tag 'wrong-section-according-to-package-name', - "$pkg => ${area}$map->[1]" - unless $parts[-1] eq $map->[1]; + "$pkg => ${area}$section" + unless $parts[-1] eq $section; last; } } diff --git a/data/fields/name_section_mappings b/data/fields/name_section_mappings new file mode 100644 index 0000000..ca9c1de --- /dev/null +++ b/data/fields/name_section_mappings @@ -0,0 +1,16 @@ +# map between regex (x) of package => section +-docs?$ => doc +-dbg(?:sym)?$ => debug +^(?:python-)?zope => zope +^python3?- => python +^r-(?:cran|bioc|other)- => gnu-r +^lib.*-perl$ => perl +lib.*-cil(?:-dev)?$ => cli-mono +^lib.*-(?:java|gcj)$ => java +^(?:lib)php- => php +^lib(?:hugs|ghc6?)- => haskell +^lib.*-ruby(?:1\.\d)?$ => ruby +^lib.*-(?:ocaml|camlp4)-dev$ => ocaml +^lib.*-dev$ => libdevel +^gir\d+\.\d+-.*-\d+\.\d+$ => introspection +^libjs- => javascript \ No newline at end of file diff --git a/debian/changelog b/debian/changelog index e7cbe8d..af300a8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -43,6 +43,7 @@ lintian (2.5.53) UNRELEASED; urgency=medium + [CL] Ensure that python3-foo packages have "Section: python", not just python2-foo. (Closes: #870272) + [RG] Do no longer require debug packages to be priority extra. + + [BR] Use Lintian::Data for name/section mapping * checks/files.pm: + [BR] Avoid false positive privacy-breach-generic for legal.xml. * checks/init.d.desc: -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/lintian/lintian.git

