|Summary:||[Future EAPI] Disallow output of einfo and friends to stdout|
|Product:||Gentoo Hosted Projects||Reporter:||Michał Górny <mgorny>|
|Package list:||Runtime testing required:||---|
|Bug Depends on:|
Description Michał Górny 2013-09-01 06:47:49 UTC
Outputting those information messages to stdout is confusing and may result in unexpected issues when the commands are used in functions called through $(). It can supposedly be worked around by doing: einfo "Foo barring..." >&2 but this looks really bad. IMO we should simply ban sending informational output to stdout in the next EAPI.
Comment 1 SpanKY 2013-09-03 02:22:21 UTC
einfo does not show warnings. if you're capturing the output of portage commands, then those calling einfo and mixing their output generally means they're already incorrectly written. making einfo write to stderr doesn't really fix that ...
Comment 2 Michał Górny 2015-11-21 14:21:55 UTC
This is meant to make it possible to output QA warnings and die properly inside $() blocks. I don't see your comment adding anything to the topic.
Comment 3 Larry the Git Cow 2018-03-04 21:05:08 UTC
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/portage.git/commit/?id=2b62104633008cc30df24808029430516a6d9a7b commit 2b62104633008cc30df24808029430516a6d9a7b Author: Michał Górny <email@example.com> AuthorDate: 2017-09-21 14:24:23 +0000 Commit: Michał Górny <firstname.lastname@example.org> CommitDate: 2018-03-04 21:03:52 +0000 isolated-functions.sh: Ensure informational command output to stderr Ensure that einfo, elog, ewarn... commands direct all output to stderr consistently. This ensures that various logging messages won't pollute stdout, and therefore be accidentally caught in $(). This satisfies the 'output commands do not pollute' stdout requirement that is tentatively included in EAPI 7. Bug: https://bugs.gentoo.org/483240 bin/isolated-functions.sh | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-)}
Comment 4 Larry the Git Cow 2018-04-30 22:14:49 UTC
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/pms.git/commit/?id=55afad74bfa1592fd8cc1be38fc542777507129e commit 55afad74bfa1592fd8cc1be38fc542777507129e Author: Michał Górny <email@example.com> AuthorDate: 2017-09-28 14:10:20 +0000 Commit: Ulrich Müller <firstname.lastname@example.org> CommitDate: 2018-03-31 15:30:43 +0000 EAPI 7 disallows stdout output of output functions Bug: https://bugs.gentoo.org/483240 eapi-differences.tex | 4 ++++ pkg-mgr-commands.tex | 22 ++++++++++++++++++++-- 2 files changed, 24 insertions(+), 2 deletions(-)}