-
Notifications
You must be signed in to change notification settings - Fork 95
Closed
Description
Issue
Progress bars should not be going to stdout, they need to go to stdout
How to replicate
1. Run a command with the --wait
flag and pipe the output to a file
civo bucket create --wait -o json test-bucket > test
2. Inspect the file we just created:
cat test
Output:
% cat test
{"access_key":"xx","id":"9076386c-eda9-4eab-a995-7ba1aa92d3a5","name":"test-bucket"}
Looks normal? Except that it isn't, for example try the following command:
jq -r .access_key < test
Output:
tempo-tutorial % jq -r .access_key < test
jq: parse error: Invalid numeric literal at line 1, column 3
That should no possible? Why is this command not working in this perfectly valid json?
Because of the non-printable characters
3. Inspect the file for non printable characters
cat -v test
output:
% cat -v test
^M^[[KCreating an Object Store with maxSize 500, called test-bucket... | ^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^?^M^[[KCreating an Object Store with maxSize 500, called test-bucket... / ^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^?^?^?^?^?^?^?
...
Aceptance Criteria
- Send the progress bar to stderr.
- Consider having a global
--silent
flag for this type of output. There are situations, such as scripts where the user may want to silence this output. Sending it to stderr makes this a lot easier though, so this second part is not strictly needed
Metadata
Metadata
Assignees
Labels
No labels