1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-09-17 10:40:12 +02:00

Pre-scan descriptions to catch cross-linking errors earlier

This commit is contained in:
Ciaran Gultnieks 2012-09-27 20:09:45 +01:00
parent 8d224bde84
commit 50c1afdded

View File

@ -613,6 +613,21 @@ def read_metadata(verbose=False):
if verbose:
print "Reading " + metafile
apps.append(parse_metadata(metafile, verbose=verbose))
# Parse all descriptions at load time, just to ensure cross-referencing
# errors are caught early rather than when they hit the build server.
def linkres(link):
for app in apps:
if app['id'] == link:
return ("fdroid.app:" + link, "Dummy name - don't know yet")
raise MetaDataException("Cannot resolve app id " + link)
for app in apps:
try:
description_html(app['Description'], linkres)
except Exception, e:
raise MetaDataException("Problem with description of " + app['id'] +
" - " + str(e))
return apps
# Formatter for descriptions. Create an instance, and call parseline() with