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

[SCM] Debian package checker branch, master, updated. 2.5.11-17-g9459a22



The following commit has been merged in the master branch:
commit 9459a2272181e37338065602ecbc805562dcec81
Author: Niels Thykier <niels@thykier.net>
Date:   Sun Dec 30 14:15:39 2012 +0100

    L::Relation::Version: Add versions_comparator for sorting
    
    Add new function that can be used for sorting lists of versions.
    
    Signed-off-by: Niels Thykier <niels@thykier.net>

diff --git a/debian/changelog b/debian/changelog
index 714b99d..e165e12 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -28,6 +28,9 @@ lintian (2.5.12) UNRELEASED; urgency=low
     + [NT] Re-instate the "TEXTREL" marker.  This fixes a regression
       where shared-libs compiled without pic was not reported.
       Thanks to Dmitry Shachnev for the assistance in debugging this.
+  * lib/Lintian/Relation/Version.pm:
+    + [NT] Add and export "versions_comparator" that can be used for
+      sorting purposes.
 
   * reporting/harness:
     + [NT] Add --to-stdout option to emit log information to
diff --git a/lib/Lintian/Relation/Version.pm b/lib/Lintian/Relation/Version.pm
index c6aceea..3193544 100644
--- a/lib/Lintian/Relation/Version.pm
+++ b/lib/Lintian/Relation/Version.pm
@@ -28,7 +28,7 @@ use Carp qw(croak);
 use base 'Exporter';
 BEGIN {
     our @EXPORT = qw(versions_equal versions_lte versions_gte versions_lt
-                     versions_gt versions_compare);
+                     versions_gt versions_compare versions_comparator);
 }
 
 use AptPkg::Config '$_config';
@@ -161,6 +161,23 @@ sub versions_compare {
     else { croak("unknown operator $op") }
 }
 
+=item versions_comparator (A, B)
+
+Returns -1,0 or 1 if the version A is (respectively) less than, equal
+to or greater than B.  This is useful for (e.g.) sorting a list of
+versions:
+
+ foreach my $version (sort versions_comparator @versions) {
+    ...
+ }
+
+=cut
+
+sub versions_comparator {
+    my ($p, $q) = @_;
+    return $versioning->compare ($p, $q);
+}
+
 =back
 
 =head1 AUTHOR

-- 
Debian package checker


Reply to: