nodes: 0, module; 1, function_definition; 2, function_name:run; 3, parameters; 4, block; 5, identifier:files; 6, identifier:temp_folder; 7, expression_statement; 8, try_statement; 9, expression_statement; 10, comment:# --quiet because isort >= 4.1 outputs its logo in the console by default.; 11, return_statement; 12, comment:"""Check isort errors in the code base.
  
      For the --quiet option, at least isort >= 4.1.1 is required.
      https://github.com/timothycrosley/isort/blob/develop/CHANGELOG.md#411
  
      """; 13, block; 14, except_clause; 15, assignment; 16, call; 17, import_statement; 18, comment:# NOQA; 19, identifier:ImportError; 20, block; 21, identifier:py_files; 22, call; 23, attribute; 24, argument_list; 25, dotted_name; 26, return_statement; 27, identifier:filter_python_files; 28, argument_list; 29, call; 30, identifier:value; 31, identifier:isort; 32, identifier:NO_ISORT_MSG; 33, identifier:files; 34, identifier:bash; 35, argument_list; 36, call; 37, attribute; 38, argument_list; 39, string; 40, identifier:format; 41, call; 42, string_content:isort -df --quiet {0}; 43, attribute; 44, argument_list; 45, string; 46, identifier:join; 47, identifier:py_files; 48, string_content:
code: def run(files, temp_folder):
      """Check isort errors in the code base.
  
      For the --quiet option, at least isort >= 4.1.1 is required.
      https://github.com/timothycrosley/isort/blob/develop/CHANGELOG.md#411
  
      """
      try:
          import isort  # NOQA
      except ImportError:
          return NO_ISORT_MSG
  
      py_files = filter_python_files(files)
  
      # --quiet because isort >= 4.1 outputs its logo in the console by default.
      return bash('isort -df --quiet {0}'.format(' '.join(py_files))).value()