From: Sergei Trofimovich <slyfox@gentoo.org>
To: Alon Bar-Lev <alonbl@gentoo.org>
Cc: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] Changing policy about -Werror
Date: Thu, 13 Sep 2018 22:34:51 +0100 [thread overview]
Message-ID: <20180913223451.03b7d65e@sf> (raw)
In-Reply-To: <CAOazyz1W0i10R=BTZhpR+ss3n8rrxPPVyEMnrdeKdJ6VLaxT5Q@mail.gmail.com>
On Tue, 11 Sep 2018 12:44:38 +0300
Alon Bar-Lev <alonbl@gentoo.org> wrote:
I'm personally in favour of not allowing -Werror
to be in build system unconditionally.
Maintainer is free to implement --enable-werror any way
it's convenient to run on their own extended sanity checks
and optionally expose it to users. Be it USE flag or
EXTRA_ECONF option.
> I would like to suggest a modify our policy with the following
> exception clause: Package maintainer may decide to keep upstream
> -Werror as long as he is willing to resolve all issues resulting from
> -Werror as if it was a blocker bug.
Do you intend to keep -Werror for case when ebuild goes
stable as well?
If you do it then what is your workflow to fix breakages
appearing in stable packages caused by minor environment
changes like toolchain tweaks?
Add another round of stabilization on each arch team? It
sounds like your default assumption that code needs to be
changed in a semantically significant way: add annotations
that might not like some toolchains, remove unused code.
Or patch package in-place without bumping? None of options
sound optimal compared to dropping -Werror.
> The package maintainer decision may be based on the package state and
> the relationship with upstream, but basically, it is his decision as
> long as issues are fixed in timely manner, it is his overhead after
> all.
I agree that maintainer's will and upstream's will should be
respected and it's not something needs to be absolutely
enforced all the time.
Personally I disagree -Werror on end-user machine is worth
it (or cppcheck, or coverity round-trip run is worth running
on user's machine unconditionally).
Unused variable is a good example of typical benign warning:
it was there all the time, it's not a new bug and does not
warrant need for an immediate fix.
Toolchain just happend to get better at control flow graph
analysis. Fix can easily wait for next release and save
everyone's time.
Not every user is willing to create bugzilla account and figure
the path of reporting the breakage. Especially if there are
many breakages like that. Getting multiple various errors is
probable if one imagines -Werror to be commonly allowed.
This is user's overhead. Not just maintainer's.
Gentoo does not normally run tests on user's systems either.
Tests are arguably a lot more precise in pointing out real
problems in software.
> ARGUMENT: If a package compiled in the past using toolchain X then it
> must continue to do so with any future toolchain.
>
> I do not understand when "build" is the test for runtime
The argument was about "keep compiling". Runtime
behaviour is a separate issue and (in my opinion) is an
orthogonal topic.
On another note I occasionally like to build Gentoo with
clang's -Weverything (or equivalent set of gcc CFLAGS)
to get the idea if there is a good useful warning out there
to put into -Werror= list.
Explicit -Werror= list allows code not to regress. But even
that is prone to harmless infelicities in libc headers that
can't be easily fixed.
In case of opensc it just does not compile even if I pass -Wno-error:
$ CC=clang CFLAGS="-O2 -Weverything -Wno-error" emerge -v1 opensc
I don't expect 'opensc' upstream to fix this use for me
and don't see it worth reporting to bugzilla.
But maybe I'm wrong?
--
Sergei
next prev parent reply other threads:[~2018-09-13 21:35 UTC|newest]
Thread overview: 119+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-09-09 11:32 [gentoo-dev] Changing policy about -Werror Andrew Savchenko
2018-09-09 13:03 ` Thomas Deutschmann
2018-09-09 15:02 ` Andrew Savchenko
2018-09-09 16:32 ` Ulrich Mueller
2018-09-09 17:18 ` Richard Yao
2018-09-09 15:11 ` Jeroen Roovers
2018-09-09 15:22 ` Richard Yao
2018-09-09 16:11 ` Michał Górny
2018-09-09 17:09 ` Richard Yao
2018-09-09 17:24 ` Richard Yao
2018-09-09 17:13 ` Richard Yao
2018-09-12 20:28 ` Andreas K. Huettel
2018-09-12 21:54 ` Richard Yao
2018-09-10 14:19 ` Fabian Groffen
2018-09-10 21:18 ` Chí-Thanh Christopher Nguyễn
2018-09-10 21:44 ` Richard Yao
2018-09-10 21:42 ` Richard Yao
2018-09-09 16:31 ` Michał Górny
2018-09-09 23:46 ` Chí-Thanh Christopher Nguyễn
2018-09-10 7:45 ` Jason Zaman
2018-09-10 20:34 ` Chí-Thanh Christopher Nguyễn
2018-09-10 20:51 ` Matt Turner
2018-09-10 20:56 ` Kristian Fiskerstrand
2018-09-10 20:59 ` Mart Raudsepp
2018-09-10 21:26 ` Chí-Thanh Christopher Nguyễn
2018-09-10 21:43 ` Richard Yao
2018-09-10 21:01 ` Kristian Fiskerstrand
2018-09-10 21:01 ` Mike Gilbert
2018-09-10 21:04 ` Kristian Fiskerstrand
2018-09-10 21:10 ` Kristian Fiskerstrand
2018-09-11 0:50 ` Thomas Deutschmann
2018-09-10 21:31 ` Rich Freeman
2018-09-10 21:33 ` Kristian Fiskerstrand
2018-09-10 21:58 ` Mike Gilbert
2018-09-10 21:19 ` Chí-Thanh Christopher Nguyễn
2018-09-10 21:21 ` Kristian Fiskerstrand
2018-09-10 21:27 ` Kristian Fiskerstrand
2018-09-10 21:48 ` Richard Yao
2018-09-10 21:52 ` Richard Yao
2018-09-10 21:35 ` Chí-Thanh Christopher Nguyễn
2018-09-10 21:41 ` Kristian Fiskerstrand
2018-09-12 8:56 ` Jason Zaman
2018-09-12 14:50 ` Rich Freeman
2018-09-12 16:47 ` Mike
2018-09-13 11:25 ` Ulrich Mueller
2018-09-13 13:29 ` Mike
2018-09-13 13:35 ` Rich Freeman
2018-09-13 13:39 ` Mike
2018-09-13 14:06 ` Ulrich Mueller
2018-09-12 22:55 ` Thomas Deutschmann
2018-09-12 23:03 ` Rich Freeman
2018-09-12 23:52 ` Matt Turner
2018-09-13 0:11 ` Rich Freeman
2018-09-13 0:46 ` Matt Turner
2018-09-13 15:51 ` Fabian Groffen
2018-09-13 15:56 ` Alon Bar-Lev
2018-09-13 16:20 ` Fabian Groffen
2018-09-13 17:58 ` Alon Bar-Lev
2018-09-14 0:41 ` Georg Rudoy
2018-09-12 23:47 ` Chí-Thanh Christopher Nguyễn
2018-09-13 11:36 ` Richard Yao
2018-09-13 16:03 ` Fabian Groffen
2018-09-13 23:12 ` Richard Yao
2018-09-13 23:21 ` Matt Turner
2018-09-14 0:44 ` Richard Yao
2018-09-14 0:54 ` Georg Rudoy
2018-09-14 17:09 ` Richard Yao
2018-09-14 3:35 ` Matt Turner
2018-09-14 15:54 ` Richard Yao
2018-09-14 23:07 ` Sergei Trofimovich
2018-09-14 23:27 ` Richard Yao
2018-09-21 22:33 ` Chí-Thanh Christopher Nguyễn
2018-09-22 5:57 ` Alon Bar-Lev
2018-09-14 17:47 ` Richard Yao
2018-09-14 17:58 ` Richard Yao
2018-09-13 15:48 ` Fabian Groffen
2018-09-09 17:50 ` Michael Orlitzky
2018-09-10 0:30 ` Rich Freeman
2018-09-09 20:47 ` Matt Turner
2018-09-10 0:13 ` Chí-Thanh Christopher Nguyễn
2018-09-11 6:15 ` Andreas K. Huettel
2018-09-11 9:44 ` Alon Bar-Lev
2018-09-12 23:32 ` Chí-Thanh Christopher Nguyễn
2018-09-13 0:09 ` Rich Freeman
2018-09-13 16:07 ` Fabian Groffen
2018-09-13 21:34 ` Sergei Trofimovich [this message]
2018-09-14 16:40 ` Alon Bar-Lev
2018-09-14 17:16 ` Richard Yao
2018-09-14 17:22 ` Alon Bar-Lev
2018-09-14 17:26 ` Rich Freeman
2018-09-14 17:33 ` Michał Górny
2018-09-14 17:48 ` Alon Bar-Lev
2018-09-14 17:53 ` Michał Górny
2018-09-14 18:00 ` Alon Bar-Lev
2018-09-14 17:52 ` Rich Freeman
2018-09-14 19:29 ` Michael Orlitzky
2018-09-14 19:58 ` Richard Yao
2018-09-14 20:20 ` Michael Orlitzky
2018-09-14 20:29 ` Rich Freeman
2018-09-14 21:02 ` Fabian Groffen
2018-09-14 21:07 ` Alon Bar-Lev
2018-09-14 21:28 ` Fabian Groffen
2018-09-14 21:46 ` Alon Bar-Lev
2018-09-14 22:45 ` Fabian Groffen
2018-09-14 22:14 ` Richard Yao
2018-09-14 22:58 ` Alon Bar-Lev
2018-09-14 22:11 ` Richard Yao
2018-09-14 19:53 ` Sergei Trofimovich
2018-09-14 20:15 ` Alon Bar-Lev
2018-09-14 23:43 ` Sergei Trofimovich
2018-09-12 23:35 ` [gentoo-dev] acceptable alternatives to -Werror, was: " Chí-Thanh Christopher Nguyễn
2018-09-13 0:14 ` Rich Freeman
2018-09-13 0:23 ` Chí-Thanh Christopher Nguyễn
2018-09-13 0:34 ` Rich Freeman
2018-09-13 0:43 ` Chí-Thanh Christopher Nguyễn
2018-09-13 8:49 ` Mike Auty
2018-09-21 22:42 ` Chí-Thanh Christopher Nguyễn
2018-09-13 11:47 ` Richard Yao
2018-09-13 19:32 ` [gentoo-dev] " Nikos Chantziaras
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=20180913223451.03b7d65e@sf \
--to=slyfox@gentoo.org \
--cc=alonbl@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