diff --git a/fdroidserver/checkupdates.py b/fdroidserver/checkupdates.py index 29872ce0..424cb1ad 100644 --- a/fdroidserver/checkupdates.py +++ b/fdroidserver/checkupdates.py @@ -96,21 +96,32 @@ def check_tags(app, sdk_path): # caution, because it's inappropriate for many projects. # Returns (None, "a message") if this didn't work, or (version, vercode) for # the details of the current version. -def check_repomanifest(app, sdk_path, branch="master"): +def check_repomanifest(app, sdk_path, branch=None): try: build_dir = 'build/' + app['id'] - if app['Repo Type'] not in ('git', 'git-svn'): - return (None, 'RepoManifest update mode only works for git and git-svn repositories currently') + if app['Repo Type'] == 'bzr': + return (None, 'RepoManifest update mode has not been ported to bzr repositories yet') # Set up vcs interface and make sure we have the latest code... vcs = common.getvcs(app['Repo Type'], app['Repo'], build_dir, sdk_path) if app['Repo Type'] == 'git': - vcs.gotorevision('origin/'+branch) + if branch: + vcs.gotorevision('origin/'+branch) + else: + vcs.gotorevision('origin/master') + pass elif app['Repo Type'] == 'git-svn': vcs.gotorevision('trunk') + elif app['Repo Type'] == 'svn': + pass + elif app['Repo Type'] == 'hg': + if branch: + vcs.gotorevision(branch) + else: + vcs.gotorevision('default') if len(app['builds']) == 0: return (None, "Can't use RepoManifest with no builds defined") diff --git a/fdroidserver/stats.py b/fdroidserver/stats.py index c4b4e693..8f57b202 100644 --- a/fdroidserver/stats.py +++ b/fdroidserver/stats.py @@ -159,6 +159,19 @@ def main(): f.write(rtype + ' ' + str(count) + '\n') f.close() + # Calculate and write stats for update check modes... + ucms = {} + for app in metaapps: + checkmode = app['Update Check Mode'] + if checkmode in ucms: + ucms[checkmode] += 1; + else: + ucms[checkmode] = 1 + f = open('stats/update_check_modes.txt', 'w') + for checkmode, count in ucms.iteritems(): + f.write(checkmode + ' ' + str(count) + '\n') + f.close() + # Calculate and write stats for licenses... licenses = {} for app in metaapps: