On Tue, May 19, 2020 at 11:58:47AM +0200, Vitaly Zaitsev via devel wrote:
On 19.05.2020 11:40, Fabio Valentini wrote:
> As I wrote in my direct response to Guido, doing a mass rebuild for
> fedora just isn't possible in released branches. So, the best we can
> do is to deal with issues as people become aware of them and report
> them, and then rebuild those few broken packages with the "fixed" GCC
> version, instead of "just rebuild everything because".
Yes, I understand. But most of package maintainers even don't know about
such major problems with GCC compiler.
I already rebuilt all my affected packages with 10.1.1.
> We also briefly talked about not including pre-release GCC versions in
> rawhide, but since new GCC versions get almost all their testing only
> in rawhide, this would inevitably only lead to lower-quality final GCC
> releases that would then end up in released fedora versions anyway. We
> (FESCo) were not able to think of a better way to do this.
Non-released GCC versions is okay for Rawhide, but not for branched
releases. Now lots of end-users suffer from different side effects of
such testing like random crashes and this is a strong reputation blow on
the whole Fedora distribution.
There is nothing magic about released vs. unreleased versions of GCC,
10.0.1 is a version used for any development snapshot from mid January
until the release that happened on May 7th, this whole period is restricted
to regression and documentation bugfixes.
A test mass rebuild is performed on GCC before it is added into rawhide in
January, though for a single arch only (x86_64), other distros perform
sometimes scratch testing on other architectures too.
Every GCC build performs a few hundred thousands tests itself, and due to
slooow arm and s390x build boxes in Fedora that build already takes
sometimes more than a day. It is not feasible to test mass rebuild the
whole distribution afterwards just to see if it doesn't regress anything,
not to mention that many packages have their issues, so what we usually need
to do is try to rebuild what failed with older gcc and only if it built fine
before try to analyze.
Like all non-trivial software, the compiler can and does have bugs
(I'm sorry if you happen or happened to be affected by some particular one),
and while during the period when it is present in rawhide and in the
branched distros GCC is in the above mentioned regression bugfixing only
mode, it is possible a regression is introduced, that possibility is the
same for released compilers.
All we need is get those issues reported and fixed, having just officially
released compiler doesn't change anything on that.