]> git.pld-linux.org Git - packages/rpm-build-tools.git/blobdiff - pldnotify.awk
replace perl(xxx) mods with actual package name if unversioned
[packages/rpm-build-tools.git] / pldnotify.awk
index 6414ad08f885010b6c973f7930dc0b41c0b53420..dd26398be3d36db8a50bcd2448521823c1161d79 100755 (executable)
@@ -239,84 +239,86 @@ function get_links(url,filename,   errno,link,oneline,retval,odp,wholeodp,lowero
                gsub("^http://(download|downloads|dl)\.(sf|sourceforge)\.net/", "", newurl)
                gsub("^project/", "", newurl)
                gsub("/.*", "", newurl)
-               d("new url " newurl)
                url = "http://sourceforge.net/projects/" newurl "/rss?path=/"
-               d("sf url, mungled url to: " url)
+               d("sf url, mangled url to: " url)
 
        } else if (url ~ /^http:\/\/(.*)\.googlecode\.com\/files\//) {
                gsub("^http://", "", url)
                gsub("\..*", "", url)
                url = "http://code.google.com/p/" url "/downloads/list"
-               d("googlecode url, mungled url to: " url)
+               d("googlecode url, mangled url to: " url)
 
        } else if (url ~ /^http:\/\/pecl.php.net\/get\//) {
                gsub("-.*", "", filename)
                url = "http://pecl.php.net/package/" filename
-               d("pecl.php.net url, mungled url to: " url)
+               d("pecl.php.net url, mangled url to: " url)
 
        } else if (url ~/http:\/\/cdn.mysql.com\//) {
                gsub("http:\/\/cdn.mysql.com\/", "", url)
                url = "http://vesta.informatik.rwth-aachen.de/mysql/" url
-               d("mysql CDN, mungled url to: " url)
+               d("mysql CDN, mangled url to: " url)
 
        } else if (url ~ /^(http|https):\/\/launchpad\.net\/(.*)\//) {
                gsub("^(http|https):\/\/launchpad\.net\/", "", url)
                gsub("\/.*/", "", url)
                url = "https://code.launchpad.net/" url "/+download"
-               d("main launchpad url, mungled url to: " url)
+               d("main launchpad url, mangled url to: " url)
 
        } else if (url ~ /^(http|https):\/\/edge\.launchpad\.net\/(.*)\//) {
                gsub("^(http|https):\/\/edge\.launchpad\.net\/", "", url)
                gsub("\/.*/", "", url)
                url = "https://edge.launchpad.net/" url "/+download"
-               d("edge launchpad url, mungled url to: " url)
+               d("edge launchpad url, mangled url to: " url)
 
        } else if (url ~ /^(http|https):\/\/github.com\/.*\/(.*)\/tarball\//) {
                gsub("\/tarball\/.*", "/downloads", url)
-               d("github tarball url, mungled url to: " url)
+               d("github tarball url, mangled url to: " url)
 
        } else if (url ~ /^(http|https):\/\/github.com\/.*\/(.*)\/archive\//) {
                gsub("\/archive\/.*", "/tags", url)
-               d("github archive url, mungled url to: " url)
+               d("github archive url, mangled url to: " url)
 
        } else if (url ~ /^(http|https):\/\/bitbucket.org\/.*\/get\/.*/) {
                # https://bitbucket.org/logilab/pylint/get/tip.tar.bz2 -> https://bitbucket.org/logilab/pylint/downloads
                gsub("\/get\/.*", "/downloads", url)
-               d("github bitbucket url, mungled url to: " url)
+               d("github bitbucket url, mangled url to: " url)
 
        } else if (url ~ /^(http|https):\/\/cgit\..*\/(.*)\/snapshot\//) {
                gsub("\/snapshot\/.*", "/", url)
-               d("cgit snapshot tarball url, mungled url to: " url)
+               d("cgit snapshot tarball url, mangled url to: " url)
 
        } else if (url ~ /^(http|https):\/\/www2\.aquamaniac\.de\/sites\/download\//) {
                url = "http://www2.aquamaniac.de/sites/download/packages.php"
-               d("aquamaniac.de tarball url, mungled url to: " url)
+               d("aquamaniac.de tarball url, mangled url to: " url)
 
        } else if (url ~ /^(http|https):\/\/www.process-one.net\/downloads\/ejabberd\//) {
                url = "http://www.process-one.net/en/ejabberd/archive/"
-               d("ejabberd tarball url, mungled url to: " url)
+               d("ejabberd tarball url, mangled url to: " url)
 
        } else if (url ~ /^(http|https):\/\/llvm.org\/releases\//) {
                url = "http://llvm.org/releases/download.html"
-               d("llvm tarball url, mungled url to: " url)
+               d("llvm tarball url, mangled url to: " url)
 
        } else if (url ~ /^(http|https):\/\/download\.owncloud\.org\/community\//) {
                url = "http://owncloud.org/changelog/"
-               d("owncloud tarball url, mungled url to: " url)
+               d("owncloud tarball url, mangled url to: " url)
 
        } else if (url ~ /^(http|https):\/\/hackage\.haskell\.org\/packages\/archive\//) {
                gsub("\/packages\/archive","/package",url)
-               d("hackage haskell tarball url, mungled url to: " url)
+               d("hackage haskell tarball url, mangled url to: " url)
 
        } else if (url ~ /^http:\/\/www.taskwarrior.org\/download\//) {
                url = "http://taskwarrior.org/projects/taskwarrior/wiki/Download"
-               d("taskwarrior tarball url, mungled url to: " url)
+               d("taskwarrior tarball url, mangled url to: " url)
        } else if (url ~/^http:\/\/www.rarlab.com\/rar\// && filename ~ /^unrarsrc/) {
                url = "http://www.rarlab.com/rar_add.htm"
-               d("unrar tarball url, mungled url to: " url)
+               d("unrar tarball url, mangled url to: " url)
        } else if (url ~/^http:\/\/www.rarlab.com\/rar\//) {
                url = "http://www.rarlab.com/download.htm"
-               d("rar tarball url, mungled url to: " url)
+               d("rar tarball url, mangled url to: " url)
+       } else if (url ~/^(http|https):\/\/pypi.python.org\/packages\/source\/.*/) {
+               gsub("/packages/source/[a-zA-Z0-9]/", "/pypi/", url)
+               d("pypi.python.org url, mangled url to: " url)
        }
 
        d("Retrieving: " url)
@@ -370,10 +372,7 @@ if (USE_PERL) {
                d("href(): " link)
        }
        close(cmd)
-       system("rm -f " tmpfile)
 
-       d("Returning: [" retval "]")
-       return retval
 }
 
        wholeodp = ""
@@ -587,11 +586,11 @@ function process_source(number, lurl, name, version) {
 
                        d("Found link: " addr)
 
-                       # 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
-                               }
+                       # Try not to treat foobar or foo-bar as (possibly newer) version of bar
+                       # (practical cases: KXL, lineakconfig, mhash...)
+                       # but don't skip cases where name is like "/some/link/0.12.2.tar.gz"
+                       if ((addr ~ "[-_.0-9A-Za-z~]" filenameexp) && addr !~ "[-_.0-9A-Za-z~]/" filenameexp)  {
+                               continue
                        }
 
                        if (addr ~ filenameexp) {
@@ -699,7 +698,7 @@ function rubygem_upgrade(name, ver,   cmd, pkg) {
                gsub(/^ruby-/, "", pkg);
        }
 
-       cmd = "gem list --remote '^" pkg "$' | awk '/" pkg "/ {v=$2; sub(/\(/, \"\", v); print v}'"
+       cmd = "gem list --remote '^" pkg "$' | awk '/" pkg "/ {v=$2; sub(/\(/, \"\", v); sub(/\)$/, \"\", v); print v}'"
        d("RUBYGEM " name " (as " pkg ") " ver ": " cmd);
        cmd | getline ver
 
@@ -782,6 +781,9 @@ function process_data(name, ver, rel,     src, nver, i) {
 }
 
 BEGIN {
+       # use perl links extraction by default
+       USE_PERL = 1
+
        # if you want to use DEBUG, run script with "-v DEBUG=1"
        # or uncomment the line below
        # DEBUG = 1
This page took 0.036603 seconds and 4 git commands to generate.