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

Bug#833007: lintian: suggest adding upstream metadata



Hi Niels,

Thanks for your useful comments.
I have updated my patch according to your comments.

Thanks.

Best regards,
Dylan
From a2780686a5e6c8eccf3794dbea67d1e0dd5b0423 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dylan=20A=C3=AFssi?= <bob.dybian@gmail.com>
Date: Tue, 2 May 2017 22:49:36 +0200
Subject: [PATCH] c/upstream-metadata: Add a check
 upstream-metadata-file-is-missing

---
 checks/upstream-metadata.desc                       | 13 +++++++++++++
 checks/upstream-metadata.pm                         |  6 +++++-
 t/templates/tests/pedantic/debian/upstream/metadata |  2 ++
 t/tests/upstream-metadata-is-missing/desc           |  7 +++++++
 t/tests/upstream-metadata-is-missing/pre_build      |  2 ++
 t/tests/upstream-metadata-is-missing/tags           |  2 ++
 6 files changed, 31 insertions(+), 1 deletion(-)
 create mode 100644 t/templates/tests/pedantic/debian/upstream/metadata
 create mode 100644 t/tests/upstream-metadata-is-missing/desc
 create mode 100755 t/tests/upstream-metadata-is-missing/pre_build
 create mode 100644 t/tests/upstream-metadata-is-missing/tags

diff --git a/checks/upstream-metadata.desc b/checks/upstream-metadata.desc
index 5f3c2c5..82c0631 100644
--- a/checks/upstream-metadata.desc
+++ b/checks/upstream-metadata.desc
@@ -18,3 +18,16 @@ Certainty: certain
 Ref: http://dep.debian.net/deps/dep12/
 Info: The DEP 12 metadata file is not well formed.  The formatting
  need to be adjusted to match the YAML specification.
+
+Tag: upstream-metadata-file-is-missing
+Severity: pedantic
+Certainty: certain
+Ref: http://dep.debian.net/deps/dep12/
+Info: This source package is not Debian-native but it does not have a
+ <tt>debian/upstream/metadata</tt> file.  Upstream MEtadata GAthered
+ with YAml (UMEGAYA) is an effort to collect meta-information about
+ upstream projects from any source package.  This file is in YAML
+ format and it is used in to feed the data in the UltimateDebianDatabase.
+ For example, it can contains the way the authors want their software
+ be cited in publications and some bibliographic references about the
+ software.
diff --git a/checks/upstream-metadata.pm b/checks/upstream-metadata.pm
index 08798db..8011bd5 100644
--- a/checks/upstream-metadata.pm
+++ b/checks/upstream-metadata.pm
@@ -30,7 +30,11 @@ use YAML::XS;
 sub run {
     my (undef, undef, $info) = @_;
     my $yamlfile = $info->index_resolved_path('debian/upstream/metadata');
-    return if not $yamlfile;
+
+    if (not $yamlfile) {
+        tag 'upstream-metadata-file-is-missing' unless ($info->native);
+        return;
+    }
 
     if ($yamlfile->is_open_ok) {
         my $yaml;
diff --git a/t/templates/tests/pedantic/debian/upstream/metadata b/t/templates/tests/pedantic/debian/upstream/metadata
new file mode 100644
index 0000000..948ec52
--- /dev/null
+++ b/t/templates/tests/pedantic/debian/upstream/metadata
@@ -0,0 +1,2 @@
+Contact: John Doe
+Name: foo
\ No newline at end of file
diff --git a/t/tests/upstream-metadata-is-missing/desc b/t/tests/upstream-metadata-is-missing/desc
new file mode 100644
index 0000000..df7f36e
--- /dev/null
+++ b/t/tests/upstream-metadata-is-missing/desc
@@ -0,0 +1,7 @@
+Testname: upstream-metadata-is-missing
+Type: non-native
+Version: 1.0-1
+Description: Tests for missing upstream metadata file
+Skeleton: pedantic
+Options: --pedantic
+Test-For: upstream-metadata-file-is-missing
diff --git a/t/tests/upstream-metadata-is-missing/pre_build b/t/tests/upstream-metadata-is-missing/pre_build
new file mode 100755
index 0000000..e4e9373
--- /dev/null
+++ b/t/tests/upstream-metadata-is-missing/pre_build
@@ -0,0 +1,2 @@
+#!/bin/sh
+rm -f "$1/debian/upstream/metadata"
diff --git a/t/tests/upstream-metadata-is-missing/tags b/t/tests/upstream-metadata-is-missing/tags
new file mode 100644
index 0000000..45e6185
--- /dev/null
+++ b/t/tests/upstream-metadata-is-missing/tags
@@ -0,0 +1,2 @@
+P: upstream-metadata-is-missing source: debian-watch-may-check-gpg-signature
+P: upstream-metadata-is-missing source: upstream-metadata-file-is-missing
-- 
2.1.4


Reply to: