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

osamu pushed a commit to branch multitar
in repository devscripts.

commit 3656a1109de1792abf2e972bec27235a2ede1a1a
Author: Osamu Aoki <[email protected]>
Date:   Sat Nov 7 23:54:02 2015 +0900

    uscan: No more .download hack
    
    Fix #804239: Failure when basename is in query string
    
    If upstream tarball is not basename of URL, filenamemangle is required.
    Np more .download hack which breaks mk-origtargz
    
    If filenamemangle is used and upstream version is undefined, generate
    version from the filename generated by the filenamemangle.
    
    $filepattern is not NULL string so not to worry anymore (simplify)
---
 scripts/uscan.pl | 27 +++++++++++++++++++--------
 1 file changed, 19 insertions(+), 8 deletions(-)

diff --git a/scripts/uscan.pl b/scripts/uscan.pl
index dce03ba..e40fcb0 100755
--- a/scripts/uscan.pl
+++ b/scripts/uscan.pl
@@ -2327,7 +2327,7 @@ sub process_watchline ($$$$$$)
        $pattern = $filepattern;
 
        # Check $filepattern is OK
-       if (not $filepattern or $filepattern !~ /\(.*\)/) {
+       if ($filepattern !~ /\(.*\)/) {
            uscan_warn "Filename pattern missing version delimiters ()\n  in 
$watchfile, skipping:\n  $line\n";
            return 1;
        }
@@ -2465,8 +2465,9 @@ sub process_watchline ($$$$$$)
        }
 
        # Check $filepattern is OK
-       if (not $filepattern or $filepattern !~ /\(.*\)/) {
-           uscan_warn "Filename pattern missing version delimiters ()\n  in 
$watchfile, skipping:\n  $line\n";
+       if ( $filepattern !~ /\(.*\)/ and
+               not exists $options{'filenamemangle'}) {
+           uscan_warn "Filename pattern missing version delimiters () without 
filenamemangle\n  in $watchfile, skipping:\n  $line\n";
            return 1;
        }
 
@@ -2957,11 +2958,8 @@ EOF
        }
     }
     # $newversion = version used for pkg-ver.tar.gz and version comparison
-    uscan_verbose "Newest upstream tarball version selected for download 
(uversionmangled): $newversion\n";
+    uscan_verbose "Newest upstream tarball version selected for download 
(uversionmangled): $newversion\n" if defined $newversion;
     uscan_verbose "Download filename (fullpath, pre-filenamemangle): 
$newfile\n";
-    unless (defined $common_newversion) {
-       $common_newversion = $newversion;
-    }
 
     my $newfile_base;
     if (exists $options{'filenamemangle'}) {
@@ -2977,6 +2975,16 @@ EOF
            return 1;
            }
        }
+       unless ($newversion) {
+           # uversionmangles version not exist
+           $newfile_base =~ m/^.+[-_]([^-_]+)(?:\.tar\.(gz|bz2|xz)|\.zip)$/i;
+           $newversion = $1;
+           unless ($newversion) {
+               uscan_warn "Fix filenamemangle to produce a filename with the 
correct version\n";
+               return 1;
+           }
+           uscan_verbose "Newest upstream tarball version from the 
filenamemangled filename: $newversion\n";
+       }
     } else {
        $newfile_base = basename($newfile);
        # Remove HTTP header trash
@@ -2984,12 +2992,15 @@ EOF
            $newfile_base =~ s/[\?#].*$//; # PiPy
            # just in case this leaves us with nothing
            if ($newfile_base eq '') {
-               $newfile_base = "$pkg-$newversion.download";
                uscan_warn "No good upstream filename found after removing 
tailing ?... and #....\n   Use filenamemangle to fix this.\n";
+               return 1;
            }
        }
     }
     uscan_verbose "Download filename (filenamemangled): $newfile_base\n";
+    unless (defined $common_newversion) {
+       $common_newversion = $newversion;
+    }
 
     # Determin download URL for tarball or signature
     my $upstream_url;

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