euscan: json format output
Now "-f json" seems good, it supports the handler type used to retrieve each version and outputs metadata. Signed-off-by: volpino <fox91@anche.no>
This commit is contained in:
		
							
								
								
									
										29
									
								
								bin/euscan
									
									
									
									
									
								
							
							
						
						
									
										29
									
								
								bin/euscan
									
									
									
									
									
								
							@@ -212,7 +212,7 @@ def main():
 | 
			
		||||
 | 
			
		||||
    # parse command line options and actions
 | 
			
		||||
    try:
 | 
			
		||||
        packages = parse_args()
 | 
			
		||||
        queries = parse_args()
 | 
			
		||||
    except ParseArgsException as e:
 | 
			
		||||
        if e.value == 'help':
 | 
			
		||||
            print_usage(help='all')
 | 
			
		||||
@@ -233,11 +233,13 @@ def main():
 | 
			
		||||
    if CONFIG['verbose'] > 2:
 | 
			
		||||
        httplib.HTTPConnection.debuglevel = 1
 | 
			
		||||
 | 
			
		||||
    for package in packages:
 | 
			
		||||
    for query in queries:
 | 
			
		||||
        ret = []
 | 
			
		||||
 | 
			
		||||
        output.set_query(query)
 | 
			
		||||
 | 
			
		||||
        try:
 | 
			
		||||
            ret = scan_upstream(package)
 | 
			
		||||
            ret = scan_upstream(query)
 | 
			
		||||
        except AmbiguousPackageName as e:
 | 
			
		||||
            pkgs = e.args[0]
 | 
			
		||||
            output.eerror("\n".join(pkgs))
 | 
			
		||||
@@ -252,24 +254,27 @@ def main():
 | 
			
		||||
            exit_helper(1)
 | 
			
		||||
 | 
			
		||||
        except GentoolkitException as err:
 | 
			
		||||
            output.eerror('%s: %s' % (package, str(err)))
 | 
			
		||||
            output.eerror('%s: %s' % (query, str(err)))
 | 
			
		||||
            exit_helper(1)
 | 
			
		||||
 | 
			
		||||
        except Exception as err:
 | 
			
		||||
            output.eerror('%s: %s' % (package, str(err)))
 | 
			
		||||
            output.eerror('%s: %s' % (query, str(err)))
 | 
			
		||||
            exit_helper(1)
 | 
			
		||||
 | 
			
		||||
        if not CONFIG['quiet'] and not CONFIG['format']:
 | 
			
		||||
            print()
 | 
			
		||||
 | 
			
		||||
        for cp, url, version in ret:
 | 
			
		||||
            output.result(cp, version, url)
 | 
			
		||||
        if ret is not None:
 | 
			
		||||
            if len(ret) > 0:
 | 
			
		||||
                for cp, url, version, handler in ret:
 | 
			
		||||
                    output.result(cp, version, url, handler)
 | 
			
		||||
            elif not CONFIG['quiet']:
 | 
			
		||||
                output.ewarn(
 | 
			
		||||
                    "Didn't find any new version, check package's homepage " +
 | 
			
		||||
                    "for more informations"
 | 
			
		||||
                )
 | 
			
		||||
 | 
			
		||||
        if not len(ret) and not CONFIG['quiet']:
 | 
			
		||||
            output.ewarn(
 | 
			
		||||
                "Didn't find any new version, check package's homepage for " +
 | 
			
		||||
                "more informations"
 | 
			
		||||
            )
 | 
			
		||||
    output.set_query(None)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
if __name__ == "__main__":
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user