Docserver api dependencies no longer crash cron

The code that generates the dependency rows for the intro tables now
follows transitive dependencies, attempting to add items to either
permssions or manifest. If a 'None' dependency is found eventually,
it isn't listed.

NOTRY=true

Review URL: https://chromiumcodereview.appspot.com/22339010

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@215974 0039d316-1c4b-4281-b951-d872f2087c98
parent a181770c
...@@ -223,15 +223,23 @@ class _JSCModel(object): ...@@ -223,15 +223,23 @@ class _JSCModel(object):
permissions_content = [] permissions_content = []
manifest_content = [] manifest_content = []
for dependency in dependencies: def categorize_dependency(dependency):
context, name = dependency.split(':', 1) context, name = dependency.split(':', 1)
if context == 'permission': if context == 'permission':
permissions_content.append(make_code_node('"%s"' % name)) permissions_content.append(make_code_node('"%s"' % name))
elif context == 'manifest': elif context == 'manifest':
manifest_content.append(make_code_node('"%s": {...}' % name)) manifest_content.append(make_code_node('"%s": {...}' % name))
elif context == 'api':
transitive_dependencies = (
self._api_features.get(context, {}).get('dependencies', []))
for transitive_dependency in transitive_dependencies:
categorize_dependency(transitive_dependency)
else: else:
raise ValueError('Unrecognized dependency for %s: %s' raise ValueError('Unrecognized dependency for %s: %s' % (
% (self._namespace.name, context)) self._namespace.name, context))
for dependency in dependencies:
categorize_dependency(dependency)
dependency_rows = [] dependency_rows = []
if permissions_content: if permissions_content:
......
application: chrome-apps-doc application: chrome-apps-doc
version: 2-16-0 version: 2-17-0
runtime: python27 runtime: python27
api_version: 1 api_version: 1
threadsafe: false threadsafe: false
......
...@@ -2,4 +2,4 @@ cron: ...@@ -2,4 +2,4 @@ cron:
- description: Repopulates all cached data. - description: Repopulates all cached data.
url: /_cron url: /_cron
schedule: every 5 minutes schedule: every 5 minutes
target: 2-16-0 target: 2-17-0
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment