Fixes issues where keys missing from bower output

Fixes #495
This commit is contained in:
Mehmet Ali \"Mali\" Akmanalp 2015-07-14 14:22:15 -04:00 committed by Matt Clay
parent cbaa353a87
commit 4a6c9dd5b3

View file

@ -116,11 +116,15 @@ class Bower(object):
data = json.loads(self._exec(cmd, True, False))
if 'dependencies' in data:
for dep in data['dependencies']:
if 'missing' in data['dependencies'][dep] and data['dependencies'][dep]['missing']:
dep_data = data['dependencies'][dep]
if dep_data.get('missing', False):
missing.append(dep)
elif data['dependencies'][dep]['pkgMeta']['version'] != data['dependencies'][dep]['update']['latest']:
elif \
'version' in dep_data['pkgMeta'] and \
'update' in dep_data and \
dep_data['pkgMeta']['version'] != dep_data['update']['latest']:
outdated.append(dep)
elif 'incompatible' in data['dependencies'][dep] and data['dependencies'][dep]['incompatible']:
elif dep_data.get('incompatible', False):
outdated.append(dep)
else:
installed.append(dep)