From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/portage:master commit in: bin/install-qa-check.d/
Date: Fri, 30 May 2025 07:37:38 +0000 (UTC) [thread overview]
Message-ID: <1748590652.c94b419216e44f9ff27f495003e9a0e50fd634b3.sam@gentoo> (raw)
commit: c94b419216e44f9ff27f495003e9a0e50fd634b3
Author: Kerin Millar <kfm <AT> plushkava <DOT> net>
AuthorDate: Thu May 22 23:57:28 2025 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri May 30 07:37:32 2025 +0000
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=c94b4192
90gcc-warnings: convey warnings in a memory-efficient manner
Rather than synchronously slurp all of the warnings matched against the
contents of PORTAGE_LOG_FILE into a scalar variable before displaying,
read the warnings line by line while asynchronously calling eqawarn for
each. This may help to save memory in the case that many warnings are to
be displayed.
Signed-off-by: Kerin Millar <kfm <AT> plushkava.net>
Signed-off-by: Sam James <sam <AT> gentoo.org>
bin/install-qa-check.d/90gcc-warnings | 33 ++++++++++++++++++---------------
1 file changed, 18 insertions(+), 15 deletions(-)
diff --git a/bin/install-qa-check.d/90gcc-warnings b/bin/install-qa-check.d/90gcc-warnings
index bf749f74b6..571d6bd066 100644
--- a/bin/install-qa-check.d/90gcc-warnings
+++ b/bin/install-qa-check.d/90gcc-warnings
@@ -3,7 +3,7 @@
# TODO: add -Wformat-security
gcc_warn_check() {
- local abort f reset_xtrace
+ local i reset_xtrace
local -a msgs
# Evaluate misc gcc warnings
@@ -147,7 +147,14 @@ gcc_warn_check() {
#': warning: not enough variable arguments to fit a sentinel'
)
- f=$(
+ while read -r; do
+ if (( i++ == 0 )); then
+ __vecho -ne '\n'
+ eqawarn "QA Notice: Package triggers severe warnings which indicate that it"
+ eqawarn " may exhibit random runtime failures."
+ fi
+ eqawarn "${REPLY}"
+ done < <(
# Coerce C as the character type for performance reasons, per
# bug #160234. Coerce C as the collation to guarantee that
# ranges are handled appropriately. Also, pass -a to GNU grep
@@ -164,26 +171,22 @@ gcc_warn_check() {
| grep -E -a "${msgs[*]}" \
| uniq
)
- if [[ -n ${f} ]] ; then
- abort=1
- __vecho -ne '\n'
- eqawarn "QA Notice: Package triggers severe warnings which indicate that it"
- eqawarn " may exhibit random runtime failures."
- eqawarn "${f}"
+ if (( i > 0 )); then
__vecho -ne '\n'
fi
eval "${reset_xtrace}"
- if (( abort )) ; then
- echo "Please do not file a Gentoo bug and instead" \
- "report the above QA issues directly to the upstream" \
- "developers of this software." | fmt -w 70 | \
- while read -r line ; do eqawarn "${line}" ; done
- eqawarn "Homepage: ${HOMEPAGE}"
- has stricter ${FEATURES} && \
+ if (( i > 0 )); then
+ while read -r; do eqawarn "${REPLY}"; done <<-EOF
+ Please do not file a Gentoo bug and instead report the above QA issues directly
+ to the upstream developers of this software.
+ Homepage: ${HOMEPAGE}
+ EOF
+ if has stricter ${FEATURES}; then
die "install aborted due to severe warnings shown above"
+ fi
fi
}
next reply other threads:[~2025-05-30 7:37 UTC|newest]
Thread overview: 120+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-30 7:37 Sam James [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-06-28 2:30 [gentoo-commits] proj/portage:master commit in: bin/install-qa-check.d/ Sam James
2025-06-28 2:30 Sam James
2025-06-09 2:51 Sam James
2025-06-05 11:22 Sam James
2025-06-05 11:22 Sam James
2025-06-05 11:22 Sam James
2025-06-05 11:22 Sam James
2025-06-05 3:07 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:37 Sam James
2025-05-30 7:36 Sam James
2025-05-30 7:36 Sam James
2025-05-30 7:36 Sam James
2025-05-30 7:36 Sam James
2025-05-30 7:30 Sam James
2025-04-24 22:12 Sam James
2025-01-06 10:19 Ulrich Müller
2024-09-17 14:32 Matt Turner
2024-09-17 14:32 Matt Turner
2024-09-17 14:32 Matt Turner
2024-09-17 14:32 Matt Turner
2024-09-09 23:49 Sam James
2024-05-22 16:56 Sam James
2024-05-17 6:28 Sam James
2024-04-25 2:59 Mike Gilbert
2023-07-29 3:57 Sam James
2023-06-29 8:22 Sam James
2023-05-11 1:24 Sam James
2023-05-11 1:24 Sam James
2023-05-11 1:24 Sam James
2023-05-11 1:24 Sam James
2023-05-11 1:24 Sam James
2023-05-11 1:24 Sam James
2023-04-07 10:41 Sam James
2023-02-28 3:10 Sam James
2023-02-27 4:43 Sam James
2023-02-26 20:22 Sam James
2023-02-19 12:23 Sam James
2023-02-17 9:12 Sam James
2023-02-17 9:12 Sam James
2022-11-09 2:29 Sam James
2022-11-09 2:25 Sam James
2022-11-09 2:25 Sam James
2022-11-09 2:25 Sam James
2022-11-09 2:25 Sam James
2022-11-09 2:25 Sam James
2022-11-08 23:51 Sam James
2022-10-27 23:37 Sam James
2022-10-27 23:37 Sam James
2022-10-27 23:37 Sam James
2022-10-11 19:18 Sam James
2022-10-11 19:18 Sam James
2022-10-11 19:18 Sam James
2022-08-19 0:09 Sam James
2022-08-14 20:43 Sam James
2022-08-13 17:30 Sam James
2022-08-10 4:36 Sam James
2022-08-10 4:36 Sam James
2022-08-01 22:39 Sam James
2022-08-01 22:39 Sam James
2022-08-01 22:39 Sam James
2022-07-28 6:32 Fabian Groffen
2022-07-27 8:18 Fabian Groffen
2022-07-27 8:18 Fabian Groffen
2022-05-15 1:02 Sam James
2022-05-15 1:02 Sam James
2022-05-07 17:15 Mike Gilbert
2022-04-28 15:50 Sam James
2022-04-12 2:00 Sam James
2022-04-12 2:00 Sam James
2022-04-12 2:00 Sam James
2022-04-12 2:00 Sam James
2022-04-12 2:00 Sam James
2022-04-12 2:00 Sam James
2022-04-12 2:00 Sam James
2022-04-12 2:00 Sam James
2022-04-10 17:20 Sam James
2022-04-05 4:33 Sam James
2019-11-03 20:15 Zac Medico
2019-11-03 20:15 Zac Medico
2019-11-03 20:02 Zac Medico
2019-11-03 19:45 Zac Medico
2019-05-20 5:01 Zac Medico
2019-05-20 4:41 Zac Medico
2018-10-06 1:15 Zac Medico
2018-09-04 21:16 Michał Górny
2018-08-07 18:49 Zac Medico
2018-08-07 18:49 Zac Medico
2018-08-04 19:36 Zac Medico
2018-07-28 6:41 Zac Medico
2018-01-26 6:40 Michał Górny
2017-10-16 17:21 Zac Medico
2017-08-02 7:24 Zac Medico
2016-06-02 6:12 Zac Medico
2016-06-02 1:40 Zac Medico
2016-05-12 22:09 Mike Frysinger
2016-05-12 21:36 Mike Frysinger
2016-05-11 17:55 Mike Frysinger
2015-11-11 0:56 Mike Frysinger
2015-05-26 3:46 Mike Frysinger
2015-05-04 5:09 Zac Medico
2015-04-20 5:36 Michał Górny
2014-12-02 18:44 Brian Dolbec
2014-11-19 23:26 Michał Górny
2014-10-27 19:28 Zac Medico
2014-10-27 19:28 Zac Medico
2014-10-19 21:11 Brian Dolbec
2014-09-26 2:17 Brian Dolbec
2014-09-26 2:17 Brian Dolbec
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1748590652.c94b419216e44f9ff27f495003e9a0e50fd634b3.sam@gentoo \
--to=sam@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox