You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Python client SDK's vfolder upload and download commands display a progress bar when executed in a terminal using tqdm. The issue is that the functional API layer directly uses tqdm, so it may show unwanted stdout outputs when used as a library, though this is controllable using show_progress argument. This is a leak of abstraction.
By the design principle, all terminal manipulation and console outputs should be done inside ai.backend.client.cli (and ai.backend.client.output) only, while ai.backend.client.func should only provide a programming interface without console outputs (but it may include use of logging because logging policy could be controlled by the host program).
Let's move invocation of tqdm to ai.backend.client.cli and/or ai.backend.client.output.
Let's make a simple progress reporter abstraction so that the functional implementation still could provide the progress information and the CLI output handler could receive it.
The text was updated successfully, but these errors were encountered:
Do aiotusclient should be updated? it also uses tqdm directly Link
Yes, I think then aiotusclient should be also updated.
Let's add a progress-reporter abstraction there (since it's a separate library, it should provide its own class) and connect it with our progress reporter.
The Python client SDK's vfolder upload and download commands display a progress bar when executed in a terminal using
tqdm
. The issue is that the functional API layer directly usestqdm
, so it may show unwanted stdout outputs when used as a library, though this is controllable usingshow_progress
argument. This is a leak of abstraction.By the design principle, all terminal manipulation and console outputs should be done inside
ai.backend.client.cli
(andai.backend.client.output
) only, whileai.backend.client.func
should only provide a programming interface without console outputs (but it may include use oflogging
because logging policy could be controlled by the host program).tqdm
toai.backend.client.cli
and/orai.backend.client.output
.The text was updated successfully, but these errors were encountered: