mirror of
https://github.com/Stone-Red-Code/dvc.git
synced 2026-11-10 07:18:27 +01:00
ui: make progress bars respect --quiet (#3316)
* ui: default no_progress_bar=None instead of False Fixes #3314 * ui: catch remaining missing auto-quiet progress * progress: treat disable=False as None * test: progress.Tqdm(disable=False) * revert no_progress_bar=None <= False partially reverts e0342a8641f0101d
This commit is contained in:
+3
-2
@@ -55,7 +55,8 @@ class Tqdm(tqdm):
|
||||
desc : persists after `close()`
|
||||
level : effective logging level for determining `disable`;
|
||||
used only if `disable` is unspecified
|
||||
disable : If (default: None), will be determined by logging level.
|
||||
disable : If (default: None) or False,
|
||||
will be determined by logging level.
|
||||
May be overridden to `True` due to non-TTY status.
|
||||
Skip override by specifying env var `DVC_IGNORE_ISATTY`.
|
||||
kwargs : anything accepted by `tqdm.tqdm()`
|
||||
@@ -69,7 +70,7 @@ class Tqdm(tqdm):
|
||||
file = sys.stderr
|
||||
self.desc_persist = desc
|
||||
# auto-disable based on `logger.level`
|
||||
if disable is None:
|
||||
if not disable:
|
||||
disable = logger.getEffectiveLevel() > level
|
||||
# auto-disable based on TTY
|
||||
if (
|
||||
|
||||
+2
-2
@@ -73,7 +73,7 @@ def add(repo, targets, recursive=False, no_commit=False, fname=None):
|
||||
total=len(stages),
|
||||
desc="Processing",
|
||||
unit="file",
|
||||
disable=True if len(stages) == 1 else None,
|
||||
disable=len(stages) == 1,
|
||||
) as pbar_stages:
|
||||
for stage in stages:
|
||||
try:
|
||||
@@ -120,7 +120,7 @@ def _create_stages(repo, targets, fname, pbar=None):
|
||||
for out in Tqdm(
|
||||
targets,
|
||||
desc="Creating DVC-files",
|
||||
disable=True if len(targets) < LARGE_DIR_SIZE else None,
|
||||
disable=len(targets) < LARGE_DIR_SIZE,
|
||||
unit="file",
|
||||
):
|
||||
stage = Stage.create(
|
||||
|
||||
@@ -16,6 +16,17 @@ def test_quiet_logging(caplog, capsys):
|
||||
assert out_err.err == ""
|
||||
|
||||
|
||||
def test_quiet_logging_disable_false(caplog, capsys):
|
||||
with caplog.at_level(logging.CRITICAL, logger="dvc"):
|
||||
# simulate interactive terminal
|
||||
with mock.patch.object(sys.stderr, "isatty", return_value=True):
|
||||
for _ in Tqdm(range(10), disable=False):
|
||||
pass
|
||||
out_err = capsys.readouterr()
|
||||
assert out_err.out == ""
|
||||
assert out_err.err == ""
|
||||
|
||||
|
||||
def test_quiet_notty(caplog, capsys):
|
||||
with caplog.at_level(logging.INFO, logger="dvc"):
|
||||
for _ in Tqdm(range(10)):
|
||||
|
||||
Reference in New Issue
Block a user