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

osamu pushed a commit to branch multitar
in repository devscripts.

commit 500793564f6908440cceb5e2b77a9c349828608c
Author: Osamu Aoki <[email protected]>
Date:   Sat Oct 3 23:02:23 2015 +0900

    uscan: Improve the standard FTP directory handling
    
    Improve the standard FTP directory/file listing handling.
    Closes: #696492
    
    Improve error messages
---
 scripts/uscan.pl | 32 +++++++++++++++++++++-----------
 1 file changed, 21 insertions(+), 11 deletions(-)

diff --git a/scripts/uscan.pl b/scripts/uscan.pl
index a1a6e60..2e1867a 100755
--- a/scripts/uscan.pl
+++ b/scripts/uscan.pl
@@ -2479,7 +2479,6 @@ sub process_watchline ($$$$$$)
     }
 
     # And mangle it if requested
-    print STDERR "$progname debug: last orig.tar.* tarball version: 
$lastversion\n" if $debug;
     my $mangled_lastversion;
     $mangled_lastversion = $lastversion;
     foreach my $pat (@{$options{'dversionmangle'}}) {
@@ -2493,31 +2492,30 @@ sub process_watchline ($$$$$$)
            return 1;
        }
     }
-    print STDERR "$progname debug: Last orig.tar.* tarball version 
(dversionmangled): $mangled_lastversion\n" if $debug;
 
     # Set $download_version etc. if already known
-    if($opt_download_version) {
+    if(defined $opt_download_version) {
        $download_version = $opt_download_version;
        $force_download = 1;
        $badversion = 1;
-       print STDERR "$progname debug: Force to download the specified version: 
$download_version\n" if $debug;
+       print STDERR "$progname debug: Download the --download-version 
specified version: $download_version\n" if $debug;
     } elsif (defined $opt_download_debversion) {
        $download_version = $mangled_lastversion;
        $force_download = 1;
        $badversion = 1;
-       print STDERR "$progname debug: Force to download the specified 
debversion (dversionmangled): $download_version\n" if $debug;
-    } elsif($opt_download_current_version) {
+       print STDERR "$progname debug: Download the --download-debversion 
specified version (dversionmangled): $download_version\n" if $debug;
+    } elsif(defined $opt_download_current_version) {
        $download_version = $mangled_lastversion;
        $force_download = 1;
        $badversion = 1;
-       print STDERR "$progname debug: Force to download the current version: 
$download_version\n" if $debug;
+       print STDERR "$progname debug: Download the --download-current-version 
specified version: $download_version\n" if $debug;
     } elsif($options{'versionmode'} eq 'same') {
        unless (defined $common_newversion) {
            uscan_warn "$progname warning: Unable to set versionmode=prev for 
the line without opts=pgpmode=prev\n  in $watchfile, skipping:\n  $line\n";
        }
        $download_version = $common_newversion;
        $badversion = 1;
-       print STDERR "$progname debug: Download the matching version: 
$download_version\n" if $debug;
+       print STDERR "$progname debug: Download secondary tarball with the 
matching version: $download_version\n" if $debug;
     } elsif($options{'versionmode'} eq 'previous') {
        unless ($options{'pgpmode'} eq 'previous' and defined 
$previous_newversion) {
            uscan_warn "$progname warning: Unable to set versionmode=prev for 
the line without opts=pgpmode=prev\n  in $watchfile, skipping:\n  $line\n";
@@ -2525,12 +2523,14 @@ sub process_watchline ($$$$$$)
        }
        $download_version = $previous_newversion;
        $badversion = 1;
-       print STDERR "$progname debug: Force to download the current version: 
$download_version\n" if $debug;
+       print STDERR "$progname debug: Download the signature file with the 
previous tarball's version: $download_version\n" if $debug;
     } else {
+       # $options{'versionmode'} should be debian or ignore
        if (defined $download_version) {
            uscan_die "$progname: \$download_version defined after 
dversionmangle ... strange\n";
        } else {
-           print STDERR "$progname debug: \$download_version undefined after 
dversionmangle\n" if $debug;
+           print STDERR "$progname debug: Last orig.tar.* tarball version 
(dversionmangled): $mangled_lastversion\n" if $debug;
+           print STDERR "$progname debug: \$download_version undefined after 
dversionmangle as expected.\n" if $debug;
        }
     }
 
@@ -2745,6 +2745,7 @@ sub process_watchline ($$$$$$)
        # We separate out HTMLised listings from standard listings, so
        # that we can target our search correctly
        if ($content =~ /<\s*a\s+[^>]*href/i) {
+           print STDERR "$progname debug: HTMLized FTP listing by the HTTP 
proxy\n" if $debug;
            while ($content =~
                m/(?:<\s*a\s+[^>]*href\s*=\s*\")((?-i)$pattern)\"/gi) {
                my $file = $1;
@@ -2769,10 +2770,14 @@ sub process_watchline ($$$$$$)
                push @files, [$mangled_version, $file, $match];
            }
        } else {
+           print STDERR "$progname debug: Standard FTP listing.\n" if $debug;
            # they all look like:
            # info info ... info filename [ -> linkname]
            for my $ln (split(/\n/, $content)) {
-               if ($ln =~ m/\s($filepattern)(\s+->\s+\S+)?$/) {
+               $ln =~ s/^d.*$//; # FTP listing of directory, '' skiped by if 
($ln...
+               $ln =~ s/\s+->\s+\S+$//; # FTP listing for link destination
+               $ln =~ s/^.*\s(\S+)$/$1/; # filename only
+               if ($ln and $ln =~ m/($filepattern)$/) {
                    my $file = $1;
                    my $mangled_version = join(".", $file =~ m/^$filepattern$/);
                    foreach my $pat (@{$options{'uversionmangle'}}) {
@@ -3551,6 +3556,7 @@ sub newest_dir ($$$$$) {
        # We separate out HTMLised listings from standard listings, so
        # that we can target our search correctly
        if ($content =~ /<\s*a\s+[^>]*href/i) {
+           print STDERR "$progname debug: HTMLized FTP listing by the HTTP 
proxy\n" if $debug;
            while ($content =~
                m/(?:<\s*a\s+[^>]*href\s*=\s*\")((?-i)$pattern)\"/gi) {
                my $dir = $1;
@@ -3581,7 +3587,11 @@ sub newest_dir ($$$$$) {
        } else {
            # they all look like:
            # info info ... info filename [ -> linkname]
+           print STDERR "$progname debug: Standard FTP listing.\n" if $debug;
            foreach my $ln (split(/\n/, $content)) {
+               $ln =~ s/^-.*$//; # FTP listing of file, '' skiped by if ($ln...
+               $ln =~ s/\s+->\s+\S+$//; # FTP listing for link destination
+               $ln =~ s/^.*\s(\S+)$/$1/; # filename only
                if ($ln =~ m/($pattern)(\s+->\s+\S+)?$/) {
                    my $dir = $1;
                    my $mangled_version = join(".", $dir =~ m/^$pattern$/);

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