123456789101112131415161718192021222324252627282930313233343536373839404142 |
- import contextlib
- import os
- import sys
- _DEBUG = "_ARC_DEBUG" in os.environ
- debug_stream = sys.stderr
- def debug(*args):
- if _DEBUG:
- print(file=debug_stream, *args)
- @contextlib.contextmanager
- def mute_stdout():
- stdout = sys.stdout
- sys.stdout = open(os.devnull, "w")
- try:
- yield
- finally:
- sys.stdout = stdout
- @contextlib.contextmanager
- def mute_stderr():
- stderr = sys.stderr
- sys.stderr = open(os.devnull, "w")
- try:
- yield
- finally:
- sys.stderr.close()
- sys.stderr = stderr
- def warn(*args):
- """
- Prints **args** to standard error when running completions. This will interrupt the user's command line interaction;
- use it to indicate an error condition that is preventing your completer from working.
- """
- print(file=debug_stream)
- print(file=debug_stream, *args)
|