io_util module

Utils - printing - parsing cli args

class io_util.ArgparseWrapper(*args, conflict_handler='resolve', formatter_class=<class 'argparse.RawTextHelpFormatter'>, **kwds)[source]

Bases: object

io_util.add_default_args(parser: ArgumentParser)[source]
io_util.allow_all_args()[source]
io_util.bold(text: str)[source]
io_util.catch_output(arg: str, func: Callable, **func_kwds) str[source]

Run func while temporarily redirecting stdout. Then return the result from stdout.

io_util.check_output(line: str) str[source]

Similar to subprocess.check_output, but with more detailed error messages

io_util.confirm(msg='Continue [Y/n]? ')[source]

Ask user for confirmation Default to yes

io_util.debug(*args, **kwds)[source]

Similar to logging.debug, but without custom string formatting

io_util.find_argument(parser: ArgumentParser, arg='arg_name')[source]
io_util.has_argument(parser: ArgumentParser, arg='arg_name') bool[source]
io_util.has_output(stream: ~typing.TextIO = <_io.TextIOWrapper name='<stdin>' mode='r' encoding='utf-8'>, timeout=0)[source]
io_util.log(*args, file=<_io.TextIOWrapper name='<stderr>' mode='w' encoding='utf-8'>, prefix='\x1b[33m···\x1b[0m', **kwds)[source]

Print to stderr

io_util.log_once(*msgs: str)[source]
io_util.print_shell_ready_signal()[source]
io_util.python_is_run_in_test_mode() bool[source]
io_util.read_file(filename: str)[source]
io_util.read_files(filenames: List[str])[source]
io_util.read_line(stream: TextIO, timeout=0, default_value='')[source]
io_util.run_subprocess(line: str) str[source]

Wrapper for subprocess.run Raise a RuntimeError on a non-zero exit status.

io_util.set_verbosity()[source]
io_util.terminal_size(default=(80, 100))[source]
io_util.verbosity()[source]
io_util.warn(text: str)[source]