|  |  |  | @ -117,12 +117,13 @@ def show_problems(problems, file, args_format, no_warn): | 
		
	
		
			
				|  |  |  |  | def run(argv=None): | 
		
	
		
			
				|  |  |  |  |     parser = argparse.ArgumentParser(prog=APP_NAME, | 
		
	
		
			
				|  |  |  |  |                                      description=APP_DESCRIPTION) | 
		
	
		
			
				|  |  |  |  |     files_group = parser.add_mutually_exclusive_group(required=True) | 
		
	
		
			
				|  |  |  |  |     files_group = parser.add_mutually_exclusive_group() | 
		
	
		
			
				|  |  |  |  |     files_group.add_argument('files', metavar='FILE_OR_DIR', nargs='*', | 
		
	
		
			
				|  |  |  |  |                              default=(), | 
		
	
		
			
				|  |  |  |  |                              help='files to check') | 
		
	
		
			
				|  |  |  |  |     files_group.add_argument('-', action='store_true', dest='stdin', | 
		
	
		
			
				|  |  |  |  |                              help='read from standard input') | 
		
	
		
			
				|  |  |  |  |                              default=("."), | 
		
	
		
			
				|  |  |  |  |                              help='files to check, defaults to "."') | 
		
	
		
			
				|  |  |  |  |     files_group.add_argument( | 
		
	
		
			
				|  |  |  |  |         '-', action='store_true', dest='stdin', default=False, | 
		
	
		
			
				|  |  |  |  |         help='read from standard input, ignoring other positional arguments') | 
		
	
		
			
				|  |  |  |  |     config_group = parser.add_mutually_exclusive_group() | 
		
	
		
			
				|  |  |  |  |     config_group.add_argument('-c', '--config-file', dest='config_file', | 
		
	
		
			
				|  |  |  |  |                               action='store', | 
		
	
	
		
			
				
					|  |  |  | @ -181,20 +182,20 @@ def run(argv=None): | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     max_level = 0 | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     for file in find_files_recursively(args.files, conf): | 
		
	
		
			
				|  |  |  |  |         filepath = file[2:] if file.startswith('./') else file | 
		
	
		
			
				|  |  |  |  |         try: | 
		
	
		
			
				|  |  |  |  |             with io.open(file, newline='') as f: | 
		
	
		
			
				|  |  |  |  |                 problems = linter.run(f, conf, filepath) | 
		
	
		
			
				|  |  |  |  |         except EnvironmentError as e: | 
		
	
		
			
				|  |  |  |  |             print(e, file=sys.stderr) | 
		
	
		
			
				|  |  |  |  |             sys.exit(-1) | 
		
	
		
			
				|  |  |  |  |         prob_level = show_problems(problems, file, args_format=args.format, | 
		
	
		
			
				|  |  |  |  |                                    no_warn=args.no_warnings) | 
		
	
		
			
				|  |  |  |  |         max_level = max(max_level, prob_level) | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     # read yaml from stdin | 
		
	
		
			
				|  |  |  |  |     if args.stdin: | 
		
	
		
			
				|  |  |  |  |     if not args.stdin: | 
		
	
		
			
				|  |  |  |  |         for file in find_files_recursively(args.files, conf): | 
		
	
		
			
				|  |  |  |  |             filepath = file[2:] if file.startswith('./') else file | 
		
	
		
			
				|  |  |  |  |             try: | 
		
	
		
			
				|  |  |  |  |                 with io.open(file, newline='') as f: | 
		
	
		
			
				|  |  |  |  |                     problems = linter.run(f, conf, filepath) | 
		
	
		
			
				|  |  |  |  |             except EnvironmentError as e: | 
		
	
		
			
				|  |  |  |  |                 print(e, file=sys.stderr) | 
		
	
		
			
				|  |  |  |  |                 sys.exit(-1) | 
		
	
		
			
				|  |  |  |  |             prob_level = show_problems(problems, file, args_format=args.format, | 
		
	
		
			
				|  |  |  |  |                                        no_warn=args.no_warnings) | 
		
	
		
			
				|  |  |  |  |             max_level = max(max_level, prob_level) | 
		
	
		
			
				|  |  |  |  |     else: | 
		
	
		
			
				|  |  |  |  |         # read yaml from stdin | 
		
	
		
			
				|  |  |  |  |         try: | 
		
	
		
			
				|  |  |  |  |             problems = linter.run(sys.stdin, conf, '') | 
		
	
		
			
				|  |  |  |  |         except EnvironmentError as e: | 
		
	
	
		
			
				
					|  |  |  | 
 |