chiark / gitweb /
import: remove google code support
authorDaniel Martí <mvdan@mvdan.cc>
Tue, 18 Aug 2015 23:26:12 +0000 (16:26 -0700)
committerDaniel Martí <mvdan@mvdan.cc>
Tue, 18 Aug 2015 23:26:27 +0000 (16:26 -0700)
Google code is dead and going read-only. import is just a helper program, and
we don't want to help people add apps from google code anymore. Apps should
move to other hosting sites.

completion/bash-completion
fdroidserver/import.py

index 6f89ce0fe25642ffeac00de26e3622a6b1fecf6d..f4dc01d82f2a2d3a09ceb1d569cfd2202c0f48c8 100644 (file)
@@ -169,10 +169,10 @@ __complete_checkupdates() {
 }
 
 __complete_import() {
-       opts="-u -s -r -q"
-       lopts="--url --subdir --repo --rev --quiet"
+       opts="-u -s -q"
+       lopts="--url --subdir --rev --quiet"
        case "${prev}" in
-               -u|--url|-r|--repo|-s|--subdir|--rev) return 0;;
+               -u|--url|-s|--subdir|--rev) return 0;;
        esac
        __complete_options
 }
index fa9c02537a3d8adda95ce0dc9497e2819babd393..c1c01d358d7bbadb3c8bdb546261a07c8641e1c5 100644 (file)
@@ -40,7 +40,7 @@ def getrepofrompage(url):
         return (None, 'Unable to get ' + url + ' - return code ' + str(req.getcode()))
     page = req.read()
 
-    # Works for Google Code and BitBucket...
+    # Works for BitBucket
     index = page.find('hg clone')
     if index != -1:
         repotype = 'hg'
@@ -52,7 +52,7 @@ def getrepofrompage(url):
         repo = repo.split('"')[0]
         return (repotype, repo)
 
-    # Works for Google Code and BitBucket...
+    # Works for BitBucket
     index = page.find('git clone')
     if index != -1:
         repotype = 'git'
@@ -64,26 +64,6 @@ def getrepofrompage(url):
         repo = repo.split('"')[0]
         return (repotype, repo)
 
-    # Google Code only...
-    index = page.find('svn checkout')
-    if index != -1:
-        repotype = 'git-svn'
-        repo = page[index + 13:]
-        prefix = '<strong><em>http</em></strong>'
-        if not repo.startswith(prefix):
-            return (None, "Unexpected checkout instructions format")
-        repo = 'http' + repo[len(prefix):]
-        index = repo.find('<')
-        if index == -1:
-            return (None, "Error while getting repo address - no end tag? '" + repo + "'")
-        repo = repo[:index]
-        index = repo.find(' ')
-        if index == -1:
-            return (None, "Error while getting repo address - no space? '" + repo + "'")
-        repo = repo[:index]
-        repo = repo.split('"')[0]
-        return (repotype, repo)
-
     return (None, "No information found." + page)
 
 config = None
@@ -104,8 +84,6 @@ def main():
                       help="Project URL to import from.")
     parser.add_option("-s", "--subdir", default=None,
                       help="Path to main android project subdirectory, if not in root.")
-    parser.add_option("-r", "--repo", default=None,
-                      help="Allows a different repo to be specified for a multi-repo google code project")
     parser.add_option("--rev", default=None,
                       help="Allows a different revision (or git branch) to be specified for the initial import")
     (options, args) = parser.parse_args()
@@ -165,62 +143,6 @@ def main():
         if not repotype:
             logging.error("Unable to determine vcs type. " + repo)
             sys.exit(1)
-    elif (url.startswith('http://code.google.com/p/') or
-            url.startswith('https://code.google.com/p/')):
-        if not url.endswith('/'):
-            url += '/'
-        projecttype = 'googlecode'
-        sourcecode = url + 'source/checkout'
-        if options.repo:
-            sourcecode += "?repo=" + options.repo
-        issuetracker = url + 'issues/list'
-
-        # Figure out the repo type and adddress...
-        repotype, repo = getrepofrompage(sourcecode)
-        if not repotype:
-            logging.error("Unable to determine vcs type. " + repo)
-            sys.exit(1)
-
-        # Figure out the license...
-        req = urllib.urlopen(url)
-        if req.getcode() != 200:
-            logging.error('Unable to find project page at ' + sourcecode + ' - return code ' + str(req.getcode()))
-            sys.exit(1)
-        page = req.read()
-        index = page.find('Code license')
-        if index == -1:
-            logging.error("Couldn't find license data")
-            sys.exit(1)
-        ltext = page[index:]
-        lprefix = 'rel="nofollow">'
-        index = ltext.find(lprefix)
-        if index == -1:
-            logging.error("Couldn't find license text")
-            sys.exit(1)
-        ltext = ltext[index + len(lprefix):]
-        index = ltext.find('<')
-        if index == -1:
-            logging.error("License text not formatted as expected")
-            sys.exit(1)
-        ltext = ltext[:index]
-        if ltext == 'GNU GPL v3':
-            license = 'GPLv3'
-        elif ltext == 'GNU GPL v2':
-            license = 'GPLv2'
-        elif ltext == 'Apache License 2.0':
-            license = 'Apache2'
-        elif ltext == 'MIT License':
-            license = 'MIT'
-        elif ltext == 'GNU Lesser GPL':
-            license = 'LGPL'
-        elif ltext == 'Mozilla Public License 1.1':
-            license = 'MPL'
-        elif ltext == 'New BSD License':
-            license = 'NewBSD'
-        else:
-            logging.error("License " + ltext + " is not recognised")
-            sys.exit(1)
-
     if not projecttype:
         logging.error("Unable to determine the project type.")
         logging.error("The URL you supplied was not in one of the supported formats. Please consult")