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

[SCM] Debian package checker branch, master, updated. 2.2.2-16-g8d6f940



The following commit has been merged in the master branch:
commit 8d6f940694ebbaefb01818f6418a77c43576d698
Author: Russ Allbery <rra@debian.org>
Date:   Fri Feb 6 22:52:11 2009 -0800

    Add more dfsg version number checks
    
    * checks/fields{,.desc}:
      + [RA] Warn of ".dfsg" versions and recommend "+dfsg" for version
        sorting reasons.  Thanks, Paul Wise.  (Closes: #514203)
      + [RA] Warn of the "dsfg" typo in versions.  Thanks, Paul Wise.

diff --git a/checks/fields b/checks/fields
index 897b332..ec04302 100644
--- a/checks/fields
+++ b/checks/fields
@@ -191,9 +191,17 @@ if (not defined $info->field('version')) {
 			tag "binary-nmu-debian-revision-in-source", "$version";
 		}
 
-		# Checks for the dfsg convention for repackaged upstream source.
-		if ($type eq 'source' and $version =~ /dfsg/ and $info->native) {
-			tag 'dfsg-version-in-native-package', $version;
+		# Checks for the dfsg convention for repackaged upstream
+		# source.  Only check these against the source package to not
+		# repeat ourselves too much.
+		if ($type eq 'source') {
+			if ($version =~ /dfsg/ and $info->native) {
+				tag 'dfsg-version-in-native-package', $version;
+			} elsif ($version =~ /\.dfsg/) {
+				tag 'dfsg-version-with-period', $version;
+			} elsif ($version =~ /dsfg/) {
+				tag 'dfsg-version-misspelled', $version;
+			}
 		}
 
 		my $name = $info->field('package');
diff --git a/checks/fields.desc b/checks/fields.desc
index 5f20f1b..fbddbb3 100644
--- a/checks/fields.desc
+++ b/checks/fields.desc
@@ -822,6 +822,26 @@ Info: The version number of this package contains "dfsg", but it's a
  compliance reasons.  The convention doesn't make sense in native
  packages.
 
+Tag: dfsg-version-with-period
+Severity: minor
+Certainty: possible
+Info: The version number of this package contains ".dfsg", probably in a
+ form like "1.2.dfsg1".  There is a suble sorting problem with this
+ version method: 1.2.dfsg1 is considered a later version than 1.2.1.  If
+ upstream adds another level to its versioning, finding a good version
+ number for the next upstream release will be awkward.
+ .
+ Upstream may never do this, in which case this isn't a problem, but it's
+ normally better to use "+dfsg" instead (such as "1.2+dfsg1").  "+" sorts
+ before ".", so 1.2 < 1.2+dfsg1 < 1.2.1 as normally desired.
+
+Tag: dfsg-version-misspelled
+Severity: minor
+Certainty: certain
+Info: The version number of this package contains "dsfg".  You probably
+ meant "dfsg", the conventional marker for upstream packages that are
+ repackaged for Debian Free Software Guidelines compliance reasons.
+
 Tag: redundant-bugs-field
 Severity: normal
 Certainty: certain
diff --git a/debian/changelog b/debian/changelog
index 9710095..5bb7958 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,9 @@ lintian (2.2.3) UNRELEASED; urgency=low
   * Summary of tag changes:
     + Added
       - description-possibly-contains-homepage (pedantic)
+      - dfsg-version-in-native-package
+      - dfsg-version-with-period
+      - dfsg-version-misspelled
       - experimental-to-unstable-without-comment (pedantic)
       - homepage-for-cpan-package-contains-version
       - using-first-person-in-description
@@ -39,6 +42,9 @@ lintian (2.2.3) UNRELEASED; urgency=low
     + [RA] Warn about Homepage fields pointing to search.cpan.org pages
       containing a version number.  Based on a patch by Paul Wise.
     + [RA] Warn of dfsg versions in native packages.
+    + [RA] Warn of ".dfsg" versions and recommend "+dfsg" for version
+      sorting reasons.  Thanks, Paul Wise.  (Closes: #514203)
+    + [RA] Warn of the "dsfg" typo in versions.  Thanks, Paul Wise.
   * checks/files:
     + [ADB] Don't report duplicate-font-file for udebs.  Patch by Raphael
       Geissert.  (Closes: #514095)
diff --git a/t/tests/basic-non-native/upstream/README b/t/tests/fields-version-dot-dfsg/debian/README
similarity index 100%
copy from t/tests/basic-non-native/upstream/README
copy to t/tests/fields-version-dot-dfsg/debian/README
diff --git a/t/tests/fields-version-dot-dfsg/desc b/t/tests/fields-version-dot-dfsg/desc
new file mode 100644
index 0000000..b6961df
--- /dev/null
+++ b/t/tests/fields-version-dot-dfsg/desc
@@ -0,0 +1,6 @@
+Testname: fields-version-dot-dfsg
+Type: non-native
+Sequence: 6000
+Version: 1.0.dfsg1-1
+Description: Use of ".dfsg"
+Check-For: dfsg-version-with-period
diff --git a/t/tests/fields-version-dot-dfsg/tags b/t/tests/fields-version-dot-dfsg/tags
new file mode 100644
index 0000000..6c381e2
--- /dev/null
+++ b/t/tests/fields-version-dot-dfsg/tags
@@ -0,0 +1 @@
+I: fields-version-dot-dfsg source: dfsg-version-with-period 1.0.dfsg1-1
diff --git a/t/tests/basic-non-native/upstream/README b/t/tests/fields-version-dot-dfsg/upstream/README
similarity index 100%
copy from t/tests/basic-non-native/upstream/README
copy to t/tests/fields-version-dot-dfsg/upstream/README
diff --git a/t/tests/basic-non-native/upstream/README b/t/tests/fields-version-dsfg/debian/README
similarity index 100%
copy from t/tests/basic-non-native/upstream/README
copy to t/tests/fields-version-dsfg/debian/README
diff --git a/t/tests/fields-version-dsfg/desc b/t/tests/fields-version-dsfg/desc
new file mode 100644
index 0000000..15cbdb8
--- /dev/null
+++ b/t/tests/fields-version-dsfg/desc
@@ -0,0 +1,6 @@
+Testname: fields-version-dsfg
+Type: non-native
+Sequence: 6000
+Version: 1.0+dsfg1-1
+Description: Check for the dsfg typo
+Check-For: dfsg-version-misspelled
diff --git a/t/tests/fields-version-dsfg/tags b/t/tests/fields-version-dsfg/tags
new file mode 100644
index 0000000..07c5759
--- /dev/null
+++ b/t/tests/fields-version-dsfg/tags
@@ -0,0 +1 @@
+W: fields-version-dsfg source: dfsg-version-misspelled 1.0+dsfg1-1
diff --git a/t/tests/basic-non-native/upstream/README b/t/tests/fields-version-dsfg/upstream/README
similarity index 100%
copy from t/tests/basic-non-native/upstream/README
copy to t/tests/fields-version-dsfg/upstream/README

-- 
Debian package checker


Reply to: