Author: arekm                        Date: Wed Mar  3 11:46:49 2010 GMT
Module: packages                      Tag: HEAD
---- Log message:
- try to detect new github tarballs

---- Files affected:
packages:
   pldnotify.awk (1.81 -> 1.82) 

---- Diffs:

================================================================
Index: packages/pldnotify.awk
diff -u packages/pldnotify.awk:1.81 packages/pldnotify.awk:1.82
--- packages/pldnotify.awk:1.81 Wed Mar  3 11:50:42 2010
+++ packages/pldnotify.awk      Wed Mar  3 12:46:44 2010
@@ -169,6 +169,17 @@
        return _tmpfile
 }
 
+# fix link to artificial one that will be recognized rest of this script
+function postfix_link(url, link) {
+       oldlink = link
+       if ((url ~/^(http|https):\/\/github.com\//) && (link ~ 
/.*\/tarball\//)) {
+               gsub(".*\/tarball\/", "", link)
+               link = link ".tar.gz"
+       }
+       if (DEBUG) print "POST FIXING URL [ " oldlink " ] to [ " link " ]"
+       return link
+}
+
 # get all <A HREF=..> tags from specified URL
 function get_links(url,filename,   
errno,link,oneline,retval,odp,wholeodp,lowerodp,tmpfile,cmd) {
 
@@ -277,6 +288,7 @@
                                link=substr(odp,RSTART,RLENGTH)
                                odp=substr(odp,1,RSTART) 
substr(odp,RSTART+RLENGTH)
                                link=substr(link,7,length(link)-7)
+                               link=postfix_link(url, link)
 
                                if (link_seen(link)) {
                                        link=""
@@ -291,6 +303,7 @@
                                link=substr(odp,RSTART,RLENGTH)
                                odp=substr(odp,1,RSTART) 
substr(odp,RSTART+RLENGTH)
                                link=substr(link,7,length(link)-7)
+                               link=postfix_link(url, link)
 
                                if (link_seen(link)) {
                                        link=""
@@ -421,8 +434,17 @@
                c=split(odp,linki)
                for (nr=1; nr<=c; nr++) {
                        addr=linki[nr]
+
                        if (DEBUG) print "Found link: " addr
-                       if ((addr ~ filenameexp) && !(addr ~ "[-_.0-9A-Za-z~]" 
filenameexp)) {
+
+                       # github has very different tarball links that clash 
with this safe check
+                       if (!(newurl 
~/^(http|https):\/\/github.com\/.*\/tarball/)) {
+                               if (addr ~ "[-_.0-9A-Za-z~]" filenameexp) {
+                                       continue
+                               }
+                       }
+
+                       if (addr ~ filenameexp) {
                                match(addr,filenameexp)
                                newfilename=substr(addr,RSTART,RLENGTH)
                                if (DEBUG) print "Hypothetical new: " 
newfilename
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/pldnotify.awk?r1=1.81&r2=1.82&f=u

_______________________________________________
pld-cvs-commit mailing list
pld-cvs-commit@lists.pld-linux.org
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to