ocebuild.cli.interactive#

CLI Interactive Utilities.

Module Contents#

Classes#

log_progress

An extended rich.progress.Progress class for the CLI.

Functions#

progress_bar(→ Generator[Iterator, any, None])

Stylized progress bar for the CLI.

Attributes#

Progress

A customized log_progress class wrapper.

class ocebuild.cli.interactive.log_progress(*columns: str | ProgressColumn, console: rich.console.Console | None = None, auto_refresh: bool = True, refresh_per_second: float = 10, speed_estimate_period: float = 30.0, transient: bool = False, redirect_stdout: bool = True, redirect_stderr: bool = True, get_time: GetTimeCallable | None = None, disable: bool = False, expand: bool = False)[source]#

Bases: rich.progress.Progress

An extended rich.progress.Progress class for the CLI.

get_renderables()[source]#

Renders the progress bar into a console.log aligned table

ocebuild.cli.interactive.Progress[source]#

A customized log_progress class wrapper.

ocebuild.cli.interactive.progress_bar(description: str, *args, wrap: Callable = track, **kwargs) Generator[Iterator, any, None][source]#

Stylized progress bar for the CLI.

Parameters:
  • description – The description to display for the progress bar.

  • *args – Additional arguments to pass to rich.track().

  • wrap – The function to wrap the progress bar with. (Optional) This can be a parent rich.Progress() context, or a custom wrapper.

  • **kwargs – Additional keyword arguments to pass to rich.track().

Returns:

A partial for a generator that yields an iterator for the progress bar.