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

osamu pushed a commit to branch multitar
in repository devscripts.

commit d5928f9e5a716d21e063dbf52bd0b1db586c4ea8
Author: Osamu Aoki <[email protected]>
Date:   Thu Oct 1 22:12:13 2015 +0900

    uscan: match substring for dir walking
    
    Try to cope with popular structure
     archive/12.30/12.30.01/package-ver.tar.xz
---
 scripts/uscan.pl | 25 ++++++++++++++++++++++++-
 1 file changed, 24 insertions(+), 1 deletion(-)

diff --git a/scripts/uscan.pl b/scripts/uscan.pl
index 05f188d..1841a52 100755
--- a/scripts/uscan.pl
+++ b/scripts/uscan.pl
@@ -3384,8 +3384,14 @@ sub newest_dir ($$$$$) {
     my $base = $site.$dir;
     my ($request, $response);
     my $newdir;
+    my $download_version_short;
 
-    print STDERR "$progname debug: download version requested: 
$download_version\n" if $debug and defined $download_version; 
+    if (defined $download_version) {
+       print STDERR "$progname debug: download version requested: 
$download_version\n" if $debug;
+       if ($download_version =~ m/^(\w+\.\w+)\.\w+$/) {
+           $download_version_short = "$1";
+       }
+    }
     if ($site =~ m%^http(s)?://%) {
        if (defined($1) and !$haveSSL) {
            uscan_die "$progname: you must have the liblwp-protocol-https-perl 
package installed\nto use https URLs\n";
@@ -3434,11 +3440,17 @@ sub newest_dir ($$$$$) {
                        $match = "matched with the download version";
                    }
                }
+               if (defined $download_version_short) {
+                   if ($mangled_version eq $download_version_short) {
+                       $match = "matched with the download version (partial)";
+                   }
+               }
                push @hrefs, [$mangled_version, $href, $match];
            }
        }
        my @vhrefs = grep { $$_[2] } @hrefs;
        if (@vhrefs) {
+           @vhrefs = Devscripts::Versort::upstream_versort(@vhrefs);
            $newdir = $vhrefs[0][1];
        }
        if (@hrefs) {
@@ -3508,6 +3520,11 @@ sub newest_dir ($$$$$) {
                        $match = "matched with the download version";
                    }
                }
+               if (defined $download_version_short) {
+                   if ($mangled_version eq $download_version_short) {
+                       $match = "matched with the download version (partial)";
+                   }
+               }
                push @dirs, [$mangled_version, $dir, $match];
            }
        } else {
@@ -3533,12 +3550,18 @@ sub newest_dir ($$$$$) {
                            $match = "matched with the download version";
                        }
                    }
+                   if (defined $download_version_short) {
+                       if ($mangled_version eq $download_version_short) {
+                           $match = "matched with the download version 
(partial)";
+                       }
+                   }
                    push @dirs, [$mangled_version, $dir, $match];
                }
            }
        }
        my @vdirs = grep { $$_[2] } @dirs;
        if (@vdirs) {
+           @vdirs = Devscripts::Versort::upstream_versort(@vdirs);
            $newdir = $vdirs[0][1];
        }
        if (@dirs) {

-- 
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

Reply via email to