2.2.3.24. pycsamt.api.view.progress#
Progress helpers used by public pyCSAMT APIs.
pycsamt.utils.progress implements the dependency-light progress
engine (ProgressBar, verbosity
normalization). This module layers package-wide policy on top of it
— a configurable singleton (PYCSAMT_PROGRESS), following the
same configure()/context()/reset() shape as
pycsamt.api.pipe.PYCSAMT_PIPE and
pycsamt.api.view.PYCSAMT_API_VIEW — plus thin
backward-compatible wrappers (iter_progress(),
progress_enabled()) used elsewhere in the API layer.
Examples
Silence every progress bar package-wide (e.g. for CI or batch jobs):
from pycsamt.api.view import configure_progress
configure_progress(force_verbose=0)
Prefer plain log lines (no carriage-return redraw) in a non-tty run:
from pycsamt.api.view import configure_progress
configure_progress(default_verbose="log")
Functions
|
Configure |
|
Build a |
|
Yield items, optionally wrapped by a |
|
Return whether progress should be displayed. |
|
Reset |
Classes
Package-wide policy for |
|
|
Configuration for terminal progress display. |
- class pycsamt.api.view.progress.ProgressAPIConfig[source]
Bases:
objectPackage-wide policy for
ProgressBar.- Variables:
default_verbose – Verbosity used when a call site’s own
verboseargument isNone. Does not override an explicitverbose=True/Falsepassed by the caller — useforce_verbosefor that.force_verbose – When set (
0,1, or2), overrides every call site’sverboseargument, explicit or not.None(default) leaves callers in control.style – Bar glyph set —
"ascii"(default, safe on legacy Windows console code pages) or"unicode".min_interval – Minimum seconds between bar redraws.
log_every – Default line-throttle for log-mode (verbose level
2) progress.Noneauto-computes~10lines per run.
- configure(**kw)[source]
Set one or more configuration attributes by keyword.
- Parameters:
kw (Any)
- Return type:
None
- context(**kw)[source]
Temporarily override progress config, then restore it.
- Parameters:
kw (Any)
- Return type:
Generator[ProgressAPIConfig, None, None]
- reset()[source]
Reset to package defaults.
- Return type:
None
- resolve(verbose=None)[source]
Resolve a call site’s
verboseargument to0/1/2.
- class pycsamt.api.view.progress.ProgressConfig(enabled='auto', desc=None, leave=False, unit='it', total=None)[source]
Bases:
objectConfiguration for terminal progress display.
- leave: bool = False
- unit: str = 'it'
- pycsamt.api.view.progress.configure_progress(**kw)[source]
Configure
PYCSAMT_PROGRESSwith keyword arguments.- Parameters:
kw (Any)
- Return type:
None
- pycsamt.api.view.progress.get_progress_bar(total=None, *, desc=None, unit='it', verbose=None, leave=False, log_every=None)[source]
Build a
ProgressBarhonouringPYCSAMT_PROGRESS(style, throttle, forced verbosity).This is the recommended entry point for AI-inversion agents, dataset generation, and realization loops — it lets a user silence or reshape progress output package-wide via
configure_progress()without touching every function’sverbosedefault.
- pycsamt.api.view.progress.iter_progress(iterable, *, enabled='auto', desc=None, leave=False, unit='it', total=None)[source]
Yield items, optionally wrapped by a
ProgressBar.
- pycsamt.api.view.progress.progress_enabled(value='auto')[source]
Return whether progress should be displayed.
- pycsamt.api.view.progress.reset_progress()[source]
Reset
PYCSAMT_PROGRESSto package defaults.- Return type:
None