def mozbuildinfocommand(ui, repo, *paths, **opts): # This module imports modules not available to the hgweb virtualenv. # Delay importing it so it doesn't interfere with operation outside the # moz.build evaluation context. import mozhg.mozbuildinfo as mozbuildinfo if opts['pipemode']: data = json.loads(ui.fin.read()) repo = hg.repository(ui, path=data['repo']) ctx = repo[data['node']] paths = data['paths'] else: ctx = repo[opts['rev']] try: d = mozbuildinfo.filesinfo(repo, ctx, paths=paths) except Exception as e: d = {'error': 'Exception reading moz.build info: %s' % str(e)} if not d: d = {'error': 'no moz.build info available'} # TODO send data to templater. # Use stable output and indentation to make testing easier. ui.write(json.dumps(d, indent=2, sort_keys=True)) ui.write('\n') return
def mozbuildinfocommand(ui, repo, *paths, **opts): if opts['pipemode']: data = json.loads(ui.fin.read()) repo = hg.repository(ui, path=data['repo']) ctx = repo[data['node']] paths = data['paths'] else: ctx = repo[opts['rev']] try: d = mozbuildinfo.filesinfo(repo, ctx, paths=paths) except Exception as e: d = {'error': 'Exception reading moz.build info: %s' % str(e)} if not d: d = {'error': 'no moz.build info available'} # TODO send data to templater. # Use stable output and indentation to make testing easier. ui.write(json.dumps(d, indent=2, sort_keys=True)) ui.write('\n') return