[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[lintian] 01/01: Don't emit source-contains-prebuilt-ms-help-file for files generated by Halibut. (Closes: #867673)



This is an automated email from the git hooks/post-receive script.

lamby pushed a commit to branch master
in repository lintian.

commit 1371b6b57d571459a4a9ec7481ea2e73aea283cd
Author: Chris Lamb <lamby@debian.org>
Date:   Sun Jul 9 23:19:19 2017 +0100

    Don't emit source-contains-prebuilt-ms-help-file for files generated by Halibut. (Closes: #867673)
---
 checks/cruft.pm                             | 7 +++++++
 data/cruft/warn-file-type                   | 2 --
 debian/changelog                            | 2 ++
 t/tests/cruft-general-upstream/pre_upstream | 2 ++
 4 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/checks/cruft.pm b/checks/cruft.pm
index a008406..a9d72c6 100644
--- a/checks/cruft.pm
+++ b/checks/cruft.pm
@@ -643,6 +643,13 @@ sub find_cruft {
             close($fd);
         }
 
+        # .chm files are usually generated by non-free software
+        if (   $basename =~ /\.chm$/i
+            && $entry->is_open_ok
+            && index($entry->file_contents, 'Halibut,') == -1) {
+            tag 'source-contains-prebuilt-ms-help-file', $name;
+        }
+
         # Lena Söderberg image
         if ($basename =~ /\blenn?a\b/i) {
             if(    $file_info =~ /\bimage\b/i
diff --git a/data/cruft/warn-file-type b/data/cruft/warn-file-type
index 6fcce0c..22b9c36 100644
--- a/data/cruft/warn-file-type
+++ b/data/cruft/warn-file-type
@@ -12,8 +12,6 @@ source-contains-prebuilt-flash-project      ~~ ^Composite \s Document \s File
 source-contains-prebuilt-java-object        ~~ (?: Java [ ] (?:Jar [ ] file|archive [ ] data) | Zip [ ] archive | JAR)   ~~ (?i)\.jar$
 # do not forget to change also $JS_EXT in file.pm
 source-contains-prebuilt-javascript-object  ~~ .*                                                                        ~~ (?i)[-._](?:compiled|compressed|lite|min|pack(?:ed)?|yc)\.js$ ~~ map{'s/(?i)(?:[-._](?:compiled|compressed|lite|min|pack(?:ed)?|prod|yc))?\.js$/'.$_.'/'} qw(.js _orig.js .js.orig .src.js -src.js .debug.js -debug.js -nc.js)
-# ok chm could be created from docbook or texi
-source-contains-prebuilt-ms-help-file       ~~ ^MS \s Windows \s Html \s? Help \s Data ~~  (?i)\.chm$
 source-contains-prebuilt-python-object      ~~ ^python \s \d(\.\d+)? \s byte-compiled                                    ~~ .*                                ~~ s/(?i)(?:\.cpython-\d{2}|\.pypy)?\.py[co]$/.py/
 source-contains-prebuilt-silverlight-object ~~ ^Zip \s archive \s data                                                   ~~ (?i)\.xac$
 source-contains-prebuilt-windows-binary     ~~ \b(?:PE(?:32|64)|(?:MS-DOS|COFF)\s executable)\b
diff --git a/debian/changelog b/debian/changelog
index e13196c..0f8f64f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -13,6 +13,8 @@ lintian (2.5.52) UNRELEASED; urgency=medium
   * checks/cruft.{desc,pm}:
     + [CL] Clarify language of source-contains-prebuilt-ms-help-file
       description; there exists free software to generate .chm files.
+    + [CL] Don't emit source-contains-prebuilt-ms-help-file for files
+      generated by Halibut. (Closes: #867673)
   * checks/fields.{desc,pm}:
     + [NT] Remove check for missing versioned build-depends for dpkg
       and debhlper when using Build-Profiles.  The necessary versions
diff --git a/t/tests/cruft-general-upstream/pre_upstream b/t/tests/cruft-general-upstream/pre_upstream
index 693d5a9..a60ffbe 100755
--- a/t/tests/cruft-general-upstream/pre_upstream
+++ b/t/tests/cruft-general-upstream/pre_upstream
@@ -37,6 +37,8 @@ echo 'configure-generated-file-in-source' > "${dir}/config.cache"
 printf "MZ\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x3c" > "${dir}/fake-win32-bin.exe"
 # use old magic \001\000\000\000 part is optional but needed with old file
 printf "ITSF\003\000\000\000\140\000\000\000\001\000\000\000" > "${dir}/fake-help-file.chm"
+# .chm files with "Halibut" are probably generated by free software
+printf "ITSF\003\000\000\000\140\000\000\000\001\000\000\000Halibut," > "${dir}/fake-help-file-halibut.chm"
 
 printf "CWS\011    x" > "${dir}/fakeflash.swf"
 echo '//comment' > "${dir}/fake.min.js"

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/lintian/lintian.git


Reply to: