This is an automated email from the git hooks/post-receive script. jamessan pushed a commit to branch master in repository devscripts.
commit 65399e1e93dc0dcdfb2e4eca2a2b006d2760e649 Author: James McCoy <[email protected]> Date: Tue Jul 4 13:34:15 2017 -0400 uscan: Use Dpkg::Version to perform version comparisons Since the versions we're comparing are known to be irregular (i.e., upstream rather than Debian) versions, disabling the strict checks on version format. This silences the "bad syntax" error that dpkg was emitting. Signed-off-by: James McCoy <[email protected]> --- debian/changelog | 6 ++++++ scripts/uscan.pl | 13 ++++++++----- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/debian/changelog b/debian/changelog index 635636e..7f1f141 100644 --- a/debian/changelog +++ b/debian/changelog @@ -28,6 +28,12 @@ devscripts (2.17.7) UNRELEASED; urgency=medium solution for making builds independent of build path yet, so the current practice is to run both builds at the same location. + [ James McCoy ] + * uscan: + + Use Dpkg::Version instead of shelling out to dpkg to compare upstream & + mangled versions. This improves the performance slightly and also + avoids dpkg's errors about malformed versions. (Closes: #866998) + -- Paul Wise <[email protected]> Sat, 17 Jun 2017 13:11:35 +0800 devscripts (2.17.6) unstable; urgency=medium diff --git a/scripts/uscan.pl b/scripts/uscan.pl index dd1f423..8091859 100755 --- a/scripts/uscan.pl +++ b/scripts/uscan.pl @@ -1705,6 +1705,7 @@ use Cwd qw/cwd abs_path/; use Dpkg::Changelog::Parse qw(changelog_parse); use Dpkg::Control::Hash; use Dpkg::IPC; +use Dpkg::Version; use File::Basename; use File::Copy qw/copy/; use File::Spec::Functions qw/catfile/; @@ -3327,13 +3328,15 @@ EOF $dehs_tags{'upstream-version'} = $newversion; $dehs_tags{'upstream-url'} = $upstream_url; + my $mangled_ver = Dpkg::Version->new("1:${mangled_lastversion}-0", check => 0); + my $upstream_ver = Dpkg::Version->new("1:${newversion}-0", check => 0); my $compver; - if (system("dpkg", "--compare-versions", "1:${mangled_lastversion}-0", "eq", "1:${newversion}-0") >> 8 == 0) { - $compver = 'same'; # ${mangled_lastversion} == ${newversion} - } elsif (system("dpkg", "--compare-versions", "1:${mangled_lastversion}-0", "gt", "1:${newversion}-0") >> 8 == 0) { - $compver = 'older'; # ${mangled_lastversion} >> ${newversion} + if ($mangled_ver == $upstream_ver) { + $compver = 'same'; + } elsif ($mangled_ver > $upstream_ver) { + $compver = 'older'; } else { - $compver = 'newer'; # ${mangled_lastversion} << ${newversion} + $compver = 'newer'; } # Version dependent $download adjustment -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/collab-maint/devscripts.git _______________________________________________ devscripts-devel mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/devscripts-devel
