This is an automated email from the git hooks/post-receive script. lamby pushed a commit to branch master in repository lintian.
commit 901f396f21194ac1d58c1b80cb52893ca65cfcce Author: Chris Lamb <la...@debian.org> Date: Thu Feb 1 19:29:30 2018 +0000 Support scanning contents of (eg.) data/files/js-libraries. --- checks/files.pm | 16 ++++++++++------ data/files/js-libraries | 3 ++- data/files/php-libraries | 1 + debian/changelog | 2 ++ 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/checks/files.pm b/checks/files.pm index 2d8b7d1..5841440 100644 --- a/checks/files.pm +++ b/checks/files.pm @@ -139,12 +139,19 @@ sub _load_file_package_list_mapping { sub { my $pkg = strip($_[0]); my $pkg_regexp = qr/^$pkg$/x; - my $file_regexp = strip($_[1]); + my @sliptline = split(/\s*\~\~/, $_[1], 2); + my $file_regexp = strip($sliptline[0]); $file_regexp =~ s/\$EXT/$ext/g; + my $recontents = $reinside; + if (scalar(@sliptline) == 2) { + my $contents = strip($sliptline[1]); + $recontents = qr/$contents/; + } return { 'pkg_re' => $pkg_regexp, 'pkg' => $pkg, 'match' => qr/$file_regexp/, + 'contents_re' => $recontents, }; }); return { @@ -152,7 +159,6 @@ sub _load_file_package_list_mapping { 'mapping' => $mapping, 'ext' => $ext, 'tag' => $tagname, - 'reinside' => $reinside, }; } @@ -210,13 +216,13 @@ sub _detect_embedded_libraries { if($fname =~ m/$typere/) { my $mapping = $type->{'mapping'}; my $typetag = $type->{'tag'}; - my $reinside = $type->{'reinside'}; LIBRARY: foreach my $library ($mapping->all) { my $library_data = $mapping->value($library); my $mainre = $library_data->{'pkg_re'}; my $mainpkg = $library_data->{'pkg'}; my $filere = $library_data->{'match'}; + my $reinside = $library_data->{'contents_re'}; unless ($fname =~ m,$filere,) { next LIBRARY; } @@ -226,9 +232,7 @@ sub _detect_embedded_libraries { if(defined($reinside)) { my $foundre = 0; my $fd = $file->open(':raw'); - - my $sfd - = Lintian::SlidingWindow->new($fd,sub { $_=lc($_); }); + my $sfd = Lintian::SlidingWindow->new($fd); READWINDOW: while (my $block = $sfd->readwindow) { diff --git a/data/files/js-libraries b/data/files/js-libraries index 8446635..17b1411 100644 --- a/data/files/js-libraries +++ b/data/files/js-libraries @@ -1,6 +1,7 @@ # list of js-libraries included in package # format is main package regexp ~~ basename without extension # regexp (x modifier) +# ~~ contents regexp (optional) # # Note: + we automatically add ^ and $ for main package name # + we automatically add a bunch of js extensions at the end @@ -42,7 +43,7 @@ libjs-prototype ~~ (?i)/prototype(?:-[\d\.]+)?$EXT libjs-raphael ~~ (?i)/raphael(?:[\.-]min)?$EXT libjs-scriptaculous ~~ (?i)/scriptaculous$EXT libjs-strophe ~~ (?i)/strophe$EXT -libjs-twitter-bootstrap ~~ (?i)/bootstrap(?:-[\d\.]+)?$EXT +libjs-twitter-bootstrap ~~ (?i)/bootstrap(?:-[\d\.]+)?$EXT$ ~~ Twitter libjs-underscore ~~ (?i)/underscore$EXT libjs-yui ~~ (?i)/(?:yahoo|yui)-(?:dom-event)?$EXT # Disabled due to false positives. Needs a content check adding to verify diff --git a/data/files/php-libraries b/data/files/php-libraries index b4ad3e7..40fe35b 100644 --- a/data/files/php-libraries +++ b/data/files/php-libraries @@ -1,6 +1,7 @@ # list of php-libraries included in package # format is main package regexp ~~ basename without extension # regexp (x modifier) +# ~~ contents regexp (optional) # # Note: + we automatically add ^ and $ for main package name # + we automatically add a few PHP extensions at the end diff --git a/debian/changelog b/debian/changelog index 61ca98f..5579e0a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -35,6 +35,8 @@ lintian (2.5.73) UNRELEASED; urgency=medium (Closes: #664520) + [CL] Ensure salsa.debian.org Vcs-Git and Vcs-Browser URIs are canonical and do not redirect. (Closes: #888809) + * checks/files.pm: + + [CL] Support scanning contents of (eg.) data/files/js-libraries. * checks/java.{desc,pm}: + [CL] Check for .jar files that do not match the Debian Java policy. (Closes: #791552) -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/lintian/lintian.git