Prerequisites
Environment
n/a
What happened
stdout is for normal output: status messages, progress, and success reports.
stderr is for errors, warnings, and diagnostics.
For Python apps (including Molecule/Ansible):
INFO and DEBUG messages go to stdout.
WARNING, ERROR, and CRITICAL messages go to stderr.
This separation is typical and best practice for CLI tools.
End-of-run reports:
If the report indicates success, send it to stdout.
If it indicates failures or errors, send it to stderr.
This approach helps users and automation tools easily distinguish between successful output and problems.
Reproducing example
Prerequisites
pip checkdoes not report any conflictsEnvironment
n/a
What happened
stdout is for normal output: status messages, progress, and success reports.
stderr is for errors, warnings, and diagnostics.
For Python apps (including Molecule/Ansible):
INFO and DEBUG messages go to stdout.
WARNING, ERROR, and CRITICAL messages go to stderr.
This separation is typical and best practice for CLI tools.
End-of-run reports:
If the report indicates success, send it to stdout.
If it indicates failures or errors, send it to stderr.
This approach helps users and automation tools easily distinguish between successful output and problems.
Reproducing example