prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  coala-ci doesn't use fail_aqcuire_settings
  
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `coalib/coala_main.py`
  Content:
  ```
  1 from itertools import chain
  2 from pyprint.ConsolePrinter import ConsolePrinter
  3 import os
  4 
  5 from coalib.output.printers.LogPrinter import LogPrinter
  6 from coalib.processes.Processing import execute_section
  7 from coalib.results.HiddenResult import HiddenResult
  8 from coalib.settings.ConfigurationGathering import gather_configuration
  9 from coalib.misc.Exceptions import get_exitcode
  10 from coalib.bears.BEAR_KIND import BEAR_KIND
  11 from coalib.collecting.Collectors import collect_bears
  12 from coalib.output.Tagging import tag_results, delete_tagged_results
  13 
  14 
  15 do_nothing = lambda *args: True
  16 
  17 
  18 def run_coala(log_printer=None,
  19               print_results=do_nothing,
  20               acquire_settings=do_nothing,
  21               print_section_beginning=do_nothing,
  22               nothing_done=do_nothing,
  23               show_bears=do_nothing):
  24     """
  25     This is a main method that should be usable for almost all purposes and
  26     reduces executing coala to one function call.
  27 
  28     :param log_printer:             A LogPrinter object to use for logging.
  29     :param print_results:           A callback that takes a LogPrinter, a
  30                                     section, a list of results to be printed,
  31                                     the file dict and the mutable file diff
  32                                     dict.
  33     :param acquire_settings:        The method to use for requesting settings.
  34                                     It will get a parameter which is a
  35                                     dictionary with the settings name as key
  36                                     and a list containing a description in [0]
  37                                     and the names of the bears who need this
  38                                     setting in all following indexes.
  39     :param print_section_beginning: A callback that will be called with a
  40                                     section name string whenever analysis of a
  41                                     new section is started.
  42     :param nothing_done:            A callback that will be called without
  43                                     parameters if nothing was done.
  44     :param show_bears:              A callback that will be called with first
  45                                     a list of local bears, second a list of
  46                                     global bears to output them. A third bool
  47                                     parameter may be used to indicate if a
  48                                     compressed output (True) or a normal output
  49                                     (False) is desired, the former being used
  50                                     for showing all available bears to the user.
  51     :return:                        A dictionary containing a list of results
  52                                     for all analyzed sections as key.
  53     """
  54     log_printer = log_printer or LogPrinter(ConsolePrinter())
  55 
  56     exitcode = 0
  57     results = None
  58     try:
  59         yielded_results = False
  60         did_nothing = True
  61         (sections,
  62          local_bears,
  63          global_bears,
  64          targets) = gather_configuration(acquire_settings, log_printer)
  65 
  66         tag = str(sections['default'].get('tag', None))
  67         dtag = str(sections['default'].get('dtag', None))
  68 
  69         show_all_bears = bool(sections['default'].get('show_all_bears', False))
  70         show_bears_ = bool(sections["default"].get("show_bears", "False"))
  71         if show_all_bears:
  72             show_bears_ = True
  73             for section in sections:
  74                 bear_dirs = sections[section].bear_dirs()
  75                 local_bears[section] = collect_bears(bear_dirs,
  76                                             ["**"],
  77                                             [BEAR_KIND.LOCAL],
  78                                             log_printer)
  79                 global_bears[section] = collect_bears(bear_dirs,
  80                                              ["**"],
  81                                              [BEAR_KIND.GLOBAL],
  82                                              log_printer)
  83 
  84         if dtag != "None":
  85             delete_tagged_results(
  86                 dtag,
  87                 os.path.abspath(str(sections["default"].get("config"))))
  88 
  89         if show_bears_:
  90             show_bears(local_bears,
  91                        global_bears,
  92                        show_all_bears)
  93             did_nothing = False
  94         else:
  95             results = {}
  96             for section_name in sections:
  97                 section = sections[section_name]
  98                 if not section.is_enabled(targets):
  99                     continue
  100 
  101                 print_section_beginning(section)
  102                 section_result = execute_section(
  103                     section=section,
  104                     global_bear_list=global_bears[section_name],
  105                     local_bear_list=local_bears[section_name],
  106                     print_results=print_results,
  107                     log_printer=log_printer)
  108                 yielded_results = yielded_results or section_result[0]
  109 
  110                 results_for_section = []
  111                 for value in chain(section_result[1].values(),
  112                                    section_result[2].values()):
  113                     if value is None:
  114                         continue
  115 
  116                     for result in value:
  117                         if not isinstance(result, HiddenResult):
  118                             results_for_section.append(result)
  119 
  120                 results[section_name] = results_for_section
  121                 did_nothing = False
  122 
  123             if tag != "None":
  124                 tag_results(
  125                     tag,
  126                     os.path.abspath(str(sections["default"].get("config"))),
  127                     results)
  128 
  129         if did_nothing:
  130             nothing_done(log_printer)
  131 
  132         if yielded_results:
  133             exitcode = 1
  134     except BaseException as exception:  # pylint: disable=broad-except
  135         exitcode = exitcode or get_exitcode(exception, log_printer)
  136 
  137     return results, exitcode
  138
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/coalib/coala_main.py b/coalib/coala_main.py
  --- a/coalib/coala_main.py
  +++ b/coalib/coala_main.py
  @@ -9,6 +9,7 @@
   from coalib.misc.Exceptions import get_exitcode
   from coalib.bears.BEAR_KIND import BEAR_KIND
   from coalib.collecting.Collectors import collect_bears
  +from coalib.output.Interactions import fail_acquire_settings
   from coalib.output.Tagging import tag_results, delete_tagged_results
   
   
  @@ -17,7 +18,7 @@
   
   def run_coala(log_printer=None,
                 print_results=do_nothing,
  -              acquire_settings=do_nothing,
  +              acquire_settings=fail_acquire_settings,
                 print_section_beginning=do_nothing,
                 nothing_done=do_nothing,
                 show_bears=do_nothing):
  
verification_info: {"golden_diff": "diff --git a/coalib/coala_main.py b/coalib/coala_main.py\n--- a/coalib/coala_main.py\n+++ b/coalib/coala_main.py\n@@ -9,6 +9,7 @@\n from coalib.misc.Exceptions import get_exitcode\n from coalib.bears.BEAR_KIND import BEAR_KIND\n from coalib.collecting.Collectors import collect_bears\n+from coalib.output.Interactions import fail_acquire_settings\n from coalib.output.Tagging import tag_results, delete_tagged_results\n \n \n@@ -17,7 +18,7 @@\n \n def run_coala(log_printer=None,\n               print_results=do_nothing,\n-              acquire_settings=do_nothing,\n+              acquire_settings=fail_acquire_settings,\n               print_section_beginning=do_nothing,\n               nothing_done=do_nothing,\n               show_bears=do_nothing):\n", "issue": "coala-ci doesn't use fail_aqcuire_settings\n\n", "before_files": [{"content": "from itertools import chain\nfrom pyprint.ConsolePrinter import ConsolePrinter\nimport os\n\nfrom coalib.output.printers.LogPrinter import LogPrinter\nfrom coalib.processes.Processing import execute_section\nfrom coalib.results.HiddenResult import HiddenResult\nfrom coalib.settings.ConfigurationGathering import gather_configuration\nfrom coalib.misc.Exceptions import get_exitcode\nfrom coalib.bears.BEAR_KIND import BEAR_KIND\nfrom coalib.collecting.Collectors import collect_bears\nfrom coalib.output.Tagging import tag_results, delete_tagged_results\n\n\ndo_nothing = lambda *args: True\n\n\ndef run_coala(log_printer=None,\n              print_results=do_nothing,\n              acquire_settings=do_nothing,\n              print_section_beginning=do_nothing,\n              nothing_done=do_nothing,\n              show_bears=do_nothing):\n    \"\"\"\n    This is a main method that should be usable for almost all purposes and\n    reduces executing coala to one function call.\n\n    :param log_printer:             A LogPrinter object to use for logging.\n    :param print_results:           A callback that takes a LogPrinter, a\n                                    section, a list of results to be printed,\n                                    the file dict and the mutable file diff\n                                    dict.\n    :param acquire_settings:        The method to use for requesting settings.\n                                    It will get a parameter which is a\n                                    dictionary with the settings name as key\n                                    and a list containing a description in [0]\n                                    and the names of the bears who need this\n                                    setting in all following indexes.\n    :param print_section_beginning: A callback that will be called with a\n                                    section name string whenever analysis of a\n                                    new section is started.\n    :param nothing_done:            A callback that will be called without\n                                    parameters if nothing was done.\n    :param show_bears:              A callback that will be called with first\n                                    a list of local bears, second a list of\n                                    global bears to output them. A third bool\n                                    parameter may be used to indicate if a\n                                    compressed output (True) or a normal output\n                                    (False) is desired, the former being used\n                                    for showing all available bears to the user.\n    :return:                        A dictionary containing a list of results\n                                    for all analyzed sections as key.\n    \"\"\"\n    log_printer = log_printer or LogPrinter(ConsolePrinter())\n\n    exitcode = 0\n    results = None\n    try:\n        yielded_results = False\n        did_nothing = True\n        (sections,\n         local_bears,\n         global_bears,\n         targets) = gather_configuration(acquire_settings, log_printer)\n\n        tag = str(sections['default'].get('tag', None))\n        dtag = str(sections['default'].get('dtag', None))\n\n        show_all_bears = bool(sections['default'].get('show_all_bears', False))\n        show_bears_ = bool(sections[\"default\"].get(\"show_bears\", \"False\"))\n        if show_all_bears:\n            show_bears_ = True\n            for section in sections:\n                bear_dirs = sections[section].bear_dirs()\n                local_bears[section] = collect_bears(bear_dirs,\n                                            [\"**\"],\n                                            [BEAR_KIND.LOCAL],\n                                            log_printer)\n                global_bears[section] = collect_bears(bear_dirs,\n                                             [\"**\"],\n                                             [BEAR_KIND.GLOBAL],\n                                             log_printer)\n\n        if dtag != \"None\":\n            delete_tagged_results(\n                dtag,\n                os.path.abspath(str(sections[\"default\"].get(\"config\"))))\n\n        if show_bears_:\n            show_bears(local_bears,\n                       global_bears,\n                       show_all_bears)\n            did_nothing = False\n        else:\n            results = {}\n            for section_name in sections:\n                section = sections[section_name]\n                if not section.is_enabled(targets):\n                    continue\n\n                print_section_beginning(section)\n                section_result = execute_section(\n                    section=section,\n                    global_bear_list=global_bears[section_name],\n                    local_bear_list=local_bears[section_name],\n                    print_results=print_results,\n                    log_printer=log_printer)\n                yielded_results = yielded_results or section_result[0]\n\n                results_for_section = []\n                for value in chain(section_result[1].values(),\n                                   section_result[2].values()):\n                    if value is None:\n                        continue\n\n                    for result in value:\n                        if not isinstance(result, HiddenResult):\n                            results_for_section.append(result)\n\n                results[section_name] = results_for_section\n                did_nothing = False\n\n            if tag != \"None\":\n                tag_results(\n                    tag,\n                    os.path.abspath(str(sections[\"default\"].get(\"config\"))),\n                    results)\n\n        if did_nothing:\n            nothing_done(log_printer)\n\n        if yielded_results:\n            exitcode = 1\n    except BaseException as exception:  # pylint: disable=broad-except\n        exitcode = exitcode or get_exitcode(exception, log_printer)\n\n    return results, exitcode\n", "path": "coalib/coala_main.py"}], "after_files": [{"content": "from itertools import chain\nfrom pyprint.ConsolePrinter import ConsolePrinter\nimport os\n\nfrom coalib.output.printers.LogPrinter import LogPrinter\nfrom coalib.processes.Processing import execute_section\nfrom coalib.results.HiddenResult import HiddenResult\nfrom coalib.settings.ConfigurationGathering import gather_configuration\nfrom coalib.misc.Exceptions import get_exitcode\nfrom coalib.bears.BEAR_KIND import BEAR_KIND\nfrom coalib.collecting.Collectors import collect_bears\nfrom coalib.output.Interactions import fail_acquire_settings\nfrom coalib.output.Tagging import tag_results, delete_tagged_results\n\n\ndo_nothing = lambda *args: True\n\n\ndef run_coala(log_printer=None,\n              print_results=do_nothing,\n              acquire_settings=fail_acquire_settings,\n              print_section_beginning=do_nothing,\n              nothing_done=do_nothing,\n              show_bears=do_nothing):\n    \"\"\"\n    This is a main method that should be usable for almost all purposes and\n    reduces executing coala to one function call.\n\n    :param log_printer:             A LogPrinter object to use for logging.\n    :param print_results:           A callback that takes a LogPrinter, a\n                                    section, a list of results to be printed,\n                                    the file dict and the mutable file diff\n                                    dict.\n    :param acquire_settings:        The method to use for requesting settings.\n                                    It will get a parameter which is a\n                                    dictionary with the settings name as key\n                                    and a list containing a description in [0]\n                                    and the names of the bears who need this\n                                    setting in all following indexes.\n    :param print_section_beginning: A callback that will be called with a\n                                    section name string whenever analysis of a\n                                    new section is started.\n    :param nothing_done:            A callback that will be called without\n                                    parameters if nothing was done.\n    :param show_bears:              A callback that will be called with first\n                                    a list of local bears, second a list of\n                                    global bears to output them. A third bool\n                                    parameter may be used to indicate if a\n                                    compressed output (True) or a normal output\n                                    (False) is desired, the former being used\n                                    for showing all available bears to the user.\n    :return:                        A dictionary containing a list of results\n                                    for all analyzed sections as key.\n    \"\"\"\n    log_printer = log_printer or LogPrinter(ConsolePrinter())\n\n    exitcode = 0\n    results = None\n    try:\n        yielded_results = False\n        did_nothing = True\n        (sections,\n         local_bears,\n         global_bears,\n         targets) = gather_configuration(acquire_settings, log_printer)\n\n        tag = str(sections['default'].get('tag', None))\n        dtag = str(sections['default'].get('dtag', None))\n\n        show_all_bears = bool(sections['default'].get('show_all_bears', False))\n        show_bears_ = bool(sections[\"default\"].get(\"show_bears\", \"False\"))\n        if show_all_bears:\n            show_bears_ = True\n            for section in sections:\n                bear_dirs = sections[section].bear_dirs()\n                local_bears[section] = collect_bears(bear_dirs,\n                                            [\"**\"],\n                                            [BEAR_KIND.LOCAL],\n                                            log_printer)\n                global_bears[section] = collect_bears(bear_dirs,\n                                             [\"**\"],\n                                             [BEAR_KIND.GLOBAL],\n                                             log_printer)\n\n        if dtag != \"None\":\n            delete_tagged_results(\n                dtag,\n                os.path.abspath(str(sections[\"default\"].get(\"config\"))))\n\n        if show_bears_:\n            show_bears(local_bears,\n                       global_bears,\n                       show_all_bears)\n            did_nothing = False\n        else:\n            results = {}\n            for section_name in sections:\n                section = sections[section_name]\n                if not section.is_enabled(targets):\n                    continue\n\n                print_section_beginning(section)\n                section_result = execute_section(\n                    section=section,\n                    global_bear_list=global_bears[section_name],\n                    local_bear_list=local_bears[section_name],\n                    print_results=print_results,\n                    log_printer=log_printer)\n                yielded_results = yielded_results or section_result[0]\n\n                results_for_section = []\n                for value in chain(section_result[1].values(),\n                                   section_result[2].values()):\n                    if value is None:\n                        continue\n\n                    for result in value:\n                        if not isinstance(result, HiddenResult):\n                            results_for_section.append(result)\n\n                results[section_name] = results_for_section\n                did_nothing = False\n\n            if tag != \"None\":\n                tag_results(\n                    tag,\n                    os.path.abspath(str(sections[\"default\"].get(\"config\"))),\n                    results)\n\n        if did_nothing:\n            nothing_done(log_printer)\n\n        if yielded_results:\n            exitcode = 1\n    except BaseException as exception:  # pylint: disable=broad-except\n        exitcode = exitcode or get_exitcode(exception, log_printer)\n\n    return results, exitcode\n", "path": "coalib/coala_main.py"}]}