Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
Whilst I'm with Oliver and André in that part that affects the Qt user (and I can imagine users in panic filing latest dev build fails bugs right now), I agree with Thiago in that part that we could try fixing existing warnings on some configurations at very least. Throwing warnings is not a way for compiler to simply bother you, most often warnings are almost errors. I.e. if compiler says there is a possible issue, go and check it. Despite that fact we all don't like wasting our time, several potential issues were fixed already (i.e. 5dd2713c8ba98e06ae5c4f3da44b2ed73121d247 ); so let's give it a try for a short time, at least. However, I'd like to ask someone to blog about this experiment and show the user how to switch -Werror of at configure time. Kind regards, Konstantin 2013/9/5 Thiago Macieira thiago.macie...@intel.com On quinta-feira, 5 de setembro de 2013 09:41:11, Giuseppe D'Angelo wrote: On 5 September 2013 08:44, Thiago Macieira thiago.macie...@intel.com wrote: Can we please give the feature a try, for a week or two, with -warnings-are- errors enabled in all CI builds? I don't think this is the point. We already do have several -developer-build configurations active in CI, and, as you say, that's enough for enabling -Werror there. Eventually, the configurations without -developer-build could get -warnings-are-errors, but that's another story... That's part of what I am asking. The problem (*) is that the CI is not testing common configurations that developers use daily, for instance GCC 4.7/4.8 under Linux. If a patch of mine triggers warnings (= errors) under one of those compilers, but not for the other compilers used by CI (see [1]) it will get merged. And as soon as the other hundred developers pull the branches with that patch, they'll have a broken build, and they'll have to act to solve / work around the warning (instead of doing their job [2]). That's why I was proposing to limit the -Werror to those compilers which are actually in the CI, so those patches don't get merged in the first place and the *submitter* is forced to act to solve the warning: I disagree. That's why I am asking for two weeks of testing. I don't think -Werror are any worse than any other changes going on. Let me give you several examples: 1) developer A writes code on Ubuntu, for example the same version that we have on CI. It compiles, so it gets integrated. Developer B gets the code and is running brand-new Gentoo or Fedora Rawhide, with glibc 2.19-pre. Code fails to compile because glibc removed an indirect include. This has happened in the past, just with different version numbers. 2) developer A submits code that uses non-standard header names and bad include guards, and it passes CI integration. Developer B downloads the code and does some extra checks, causing the problems to show. Developer A = Lars Simon, the code was V4. 3) code exists in the Qt repositories and compiles on all compilers we've so far tested. A new compiler version is released, so we test and find that it fails to compile due to a stricter checking of some C++ feature. This has also happened in the past, like with aliasing violations. My points are: * The CI can *never* check everything. We rely on crowdsourcing by our own devs to catch those mistakes. * New compilers need to be validated anyway. * Upgrades of third-party libraries can cause build failures anyway. So I am asserting here that -Werror is no different from the cases above. The issues we're seeing now is that we've only had a limited time to fix the *existing* warnings. That's why I am asking for one or two weeks, so we find out how often this continues to happen, after the initial warnings get fixed. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On Wednesday 04 September 2013 22:13:34 André Pönitz wrote: On Wed, Sep 04, 2013 at 04:37:54PM +0200, John Layt wrote: -developer-buildOn 4 September 2013 15:21, Poenitz Andre andre.poen...@digia.com wrote: That's wasting our time, as predicted. ../../corelib/tools/qdatetime.cpp: In function 'time_t qt_mktime(QDate*, QTime*, QDateTimePrivate::Spec*, QString*, bool*)': ../../corelib/tools/qdatetime.cpp:258:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] cc1plus: all warnings being treated as errors Together with the recent insistence that it's fine to submit non-compilable chances I start wondering about the direction. Andre' Apologies, that's a change I recently merged that has been on Gerrit since before Thiago's change, so snuck past. There's a patch for it already at https://codereview.qt-project.org/#change,64642 . I suspect there will be a few pain points like that until the Gerrit backlog drains. The real problem is not Thiago's change per se, but instead CI allowing changes with warnings like mine to be merged. Perhaps we need to revert until CI has the required -developer-build instances? Not at all. The core of the problem _is_ enabling -Werror, _not_ the CI system. The CI system is absolutely innocent here, and there's no reasonable way to solve the problem on the CI side. There will always be configurations that are not covered by CI. In fact, I am appalled by this yet-another-attempt-to-blame-CI-for-bad- alignement-of-dev-with-reality. Yes, would be nice if we lived in a perfect world and sources were free of warnings. In practice you do look left and right before crossing the street. Why? Because the world is not perfect, and it prevents certain problems by simply acknowledging that it isn't. -Werror is a fine thing to switch on every now and then _temporarily_ and _locally_, especially when it can be done as part of scheduled general cleanup and housekeeping activities. No doubt. I use like that myself. It has absolutely no place in anything that shows up as normal sources that are used to get things done, read: _Anywhere in the Repo_. Any such use predictably fails, has done so in numerous projects in the past, and did surprisingly so for us today (twice). No matter how much diligence is put into whitelisting. And please don't get me started about the usefulness of version string checks when it comes to identifying supported features. II agree with André here. You will also have to whitelist the version of all the libraries, else a new version of libpng/openssl/xcb/whatever add new unavoidable warning or deprecate function used in Qt. And a developer working on other part of the library do not want to spend time fixing warning in a unrelated location. All that results is development time lost. Not to mention the race everyone that someone introduce a warning not catch by the CI, there will be five times the same patch on gerrit to fix it because all the dev run into it in the same time, and duplicate the effort to fix it. Enabling it only on the CI on the other hand has the advantage to limit the warnings in the real code base by preventing patch that introduce some to get any, without bothering everyone with compilation errors unrelated to their code on their machine. -- Olivier Woboq - Qt services and support - http://woboq.com - http://code.woboq.org ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On quinta-feira, 5 de setembro de 2013 08:16:39, Olivier Goffart wrote: II agree with André here. You will also have to whitelist the version of all the libraries, else a new version of libpng/openssl/xcb/whatever add new unavoidable warning or deprecate function used in Qt. And a developer working on other part of the library do not want to spend time fixing warning in a unrelated location. Deprecation warnings are not errors. They are left as warnings. Besides, how is this different from a change in a library causing a compiler error? There have been several of those due to reliance on indirect includes, for example. Also, new compiler updates can break existing code if our code was bad. We're using C++11 before all compilers implement everything, so it's quite possible that better implementations cause existing code to break. All that results is development time lost. Not to mention the race everyone that someone introduce a warning not catch by the CI, there will be five times the same patch on gerrit to fix it because all the dev run into it in the same time, and duplicate the effort to fix it. Enabling it only on the CI on the other hand has the advantage to limit the warnings in the real code base by preventing patch that introduce some to get any, without bothering everyone with compilation errors unrelated to their code on their machine. The whole point was to crowdsource the fixing of warnings. If we enable it on the CI only, it defeats the purpose. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On quarta-feira, 4 de setembro de 2013 23:37:50, Thiago Macieira wrote: Deprecation warnings are not errors. They are left as warnings. Besides, how is this different from a change in a library causing a compiler error? There have been several of those due to reliance on indirect includes, for example. Also, new compiler updates can break existing code if our code was bad. We're using C++11 before all compilers implement everything, so it's quite possible that better implementations cause existing code to break. Can we please give the feature a try, for a week or two, with -warnings-are- errors enabled in all CI builds? -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On 5 September 2013 08:44, Thiago Macieira thiago.macie...@intel.com wrote: Can we please give the feature a try, for a week or two, with -warnings-are- errors enabled in all CI builds? I don't think this is the point. We already do have several -developer-build configurations active in CI, and, as you say, that's enough for enabling -Werror there. Eventually, the configurations without -developer-build could get -warnings-are-errors, but that's another story... The problem (*) is that the CI is not testing common configurations that developers use daily, for instance GCC 4.7/4.8 under Linux. If a patch of mine triggers warnings (= errors) under one of those compilers, but not for the other compilers used by CI (see [1]) it will get merged. And as soon as the other hundred developers pull the branches with that patch, they'll have a broken build, and they'll have to act to solve / work around the warning (instead of doing their job [2]). That's why I was proposing to limit the -Werror to those compilers which are actually in the CI, so those patches don't get merged in the first place and the *submitter* is forced to act to solve the warning: https://codereview.qt-project.org/#change,64668 [1] http://qt-project.org/wiki/CI_Configurations [2] https://lh4.googleusercontent.com/-7ldKwe1FXVg/UfgmOdZCgGI/A_8/ntiDAkScDEU/w480-h360-no/what-programming-is-like.gif (*) I'm not saying it's a CI problem. It's a developers' problem -- people should fix their warnings. The only thing CI could help is having more and more configurations, but we all know that there isn't an infinite number of people working there. -- Giuseppe D'Angelo ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On quinta-feira, 5 de setembro de 2013 09:41:11, Giuseppe D'Angelo wrote: On 5 September 2013 08:44, Thiago Macieira thiago.macie...@intel.com wrote: Can we please give the feature a try, for a week or two, with -warnings-are- errors enabled in all CI builds? I don't think this is the point. We already do have several -developer-build configurations active in CI, and, as you say, that's enough for enabling -Werror there. Eventually, the configurations without -developer-build could get -warnings-are-errors, but that's another story... That's part of what I am asking. The problem (*) is that the CI is not testing common configurations that developers use daily, for instance GCC 4.7/4.8 under Linux. If a patch of mine triggers warnings (= errors) under one of those compilers, but not for the other compilers used by CI (see [1]) it will get merged. And as soon as the other hundred developers pull the branches with that patch, they'll have a broken build, and they'll have to act to solve / work around the warning (instead of doing their job [2]). That's why I was proposing to limit the -Werror to those compilers which are actually in the CI, so those patches don't get merged in the first place and the *submitter* is forced to act to solve the warning: I disagree. That's why I am asking for two weeks of testing. I don't think -Werror are any worse than any other changes going on. Let me give you several examples: 1) developer A writes code on Ubuntu, for example the same version that we have on CI. It compiles, so it gets integrated. Developer B gets the code and is running brand-new Gentoo or Fedora Rawhide, with glibc 2.19-pre. Code fails to compile because glibc removed an indirect include. This has happened in the past, just with different version numbers. 2) developer A submits code that uses non-standard header names and bad include guards, and it passes CI integration. Developer B downloads the code and does some extra checks, causing the problems to show. Developer A = Lars Simon, the code was V4. 3) code exists in the Qt repositories and compiles on all compilers we've so far tested. A new compiler version is released, so we test and find that it fails to compile due to a stricter checking of some C++ feature. This has also happened in the past, like with aliasing violations. My points are: * The CI can *never* check everything. We rely on crowdsourcing by our own devs to catch those mistakes. * New compilers need to be validated anyway. * Upgrades of third-party libraries can cause build failures anyway. So I am asserting here that -Werror is no different from the cases above. The issues we're seeing now is that we've only had a limited time to fix the *existing* warnings. That's why I am asking for one or two weeks, so we find out how often this continues to happen, after the initial warnings get fixed. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
That's wasting our time, as predicted. ../../corelib/tools/qdatetime.cpp: In function 'time_t qt_mktime(QDate*, QTime*, QDateTimePrivate::Spec*, QString*, bool*)': ../../corelib/tools/qdatetime.cpp:258:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] cc1plus: all warnings being treated as errors Together with the recent insistence that it's fine to submit non-compilable chances I start wondering about the direction. Andre' ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On 4 September 2013 15:21, Poenitz Andre andre.poen...@digia.com wrote: That's wasting our time, as predicted. ../../corelib/tools/qdatetime.cpp: In function 'time_t qt_mktime(QDate*, QTime*, QDateTimePrivate::Spec*, QString*, bool*)': ../../corelib/tools/qdatetime.cpp:258:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] cc1plus: all warnings being treated as errors How did the -Werror patch got integrated if qtbase doesn't build? Did it cover more compilers than the ones available in CI? -- Giuseppe D'Angelo ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On 09/04/2013 04:03 PM, Tor Arne Vestbø wrote: On 9/4/13 15:58 , Giuseppe D'Angelo wrote: On 4 September 2013 15:21, Poenitz Andre andre.poen...@digia.com wrote: That's wasting our time, as predicted. ../../corelib/tools/qdatetime.cpp: In function 'time_t qt_mktime(QDate*, QTime*, QDateTimePrivate::Spec*, QString*, bool*)': ../../corelib/tools/qdatetime.cpp:258:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] cc1plus: all warnings being treated as errors How did the -Werror patch got integrated if qtbase doesn't build? Did it cover more compilers than the ones available in CI? CI not using -developer-build I presume? tor arne the CI uses -developer-build on Ubuntu 10.04, 11.10; OS X 10.6, 10.7, 10.8; Windows 7 (mingw 4.7, 4.8; msvc 2010) and Windows 8 (msvc2012). My guess is that on Ubuntu the compiler is too old (4.6.3 is on Ubuntu 12.04 but that doesn't use -developer-build); on OS X 10.8 seems to work; on Windows 7 mingw 4.x seems to work as well. You can check all the logs and configure options here http://testresults.qt-project.org/ci/QtBase_dev_Integration/latest-success/ -- Sergio Ahumada Release Engineer - Digia, Qt ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On 9/4/13 15:58 , Giuseppe D'Angelo wrote: On 4 September 2013 15:21, Poenitz Andre andre.poen...@digia.com wrote: That's wasting our time, as predicted. ../../corelib/tools/qdatetime.cpp: In function 'time_t qt_mktime(QDate*, QTime*, QDateTimePrivate::Spec*, QString*, bool*)': ../../corelib/tools/qdatetime.cpp:258:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] cc1plus: all warnings being treated as errors How did the -Werror patch got integrated if qtbase doesn't build? Did it cover more compilers than the ones available in CI? CI not using -developer-build I presume? tor arne ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
The real problem is not Thiago's change per se, but instead CI allowing changes with warnings like mine to be merged. Perhaps we need to revert until CI has the required -developer-build instances? please do NOT blame the CI for everything. this is NOT a CI problem. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On 4 September 2013 16:20, Sergio Ahumada sergio.ahum...@digia.com wrote: My guess is that on Ubuntu the compiler is too old (4.6.3 is on Ubuntu 12.04 but that doesn't use -developer-build); So probably more configurations should be added to CI (maybe Fedora 19, which isn't a Debian-derivate, and ships with gcc 4.8). Workaround (?) for now: https://codereview.qt-project.org/#change,64668 -- Giuseppe D'Angelo who doesn't want Qt development to become like https://lh4.googleusercontent.com/-7ldKwe1FXVg/UfgmOdZCgGI/A_8/ntiDAkScDEU/w480-h360-no/what-programming-is-like.gif ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On 4 September 2013 16:47, Olivier Goffart oliv...@woboq.com wrote: Why don't we put -Werror ONLY in the CI? IMHO, because if I have the same compiler version, I'd like to get the error locally (before pushing and staging). -- Giuseppe D'Angelo ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On 4 September 2013 16:03, Tor Arne Vestbø tor.arne.ves...@digia.com wrote: CI not using -developer-build I presume? Not quite (that'll exclude most autotests...), cf. http://qt-project.org/wiki/CI_Configurations -- Giuseppe D'Angelo ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On Wednesday 04 September 2013 16:42:38 Giuseppe D'Angelo wrote: On 4 September 2013 16:20, Sergio Ahumada sergio.ahum...@digia.com wrote: My guess is that on Ubuntu the compiler is too old (4.6.3 is on Ubuntu 12.04 but that doesn't use -developer-build); So probably more configurations should be added to CI (maybe Fedora 19, which isn't a Debian-derivate, and ships with gcc 4.8). Workaround (?) for now: https://codereview.qt-project.org/#change,64668 Why don't we put -Werror ONLY in the CI? -- Olivier Woboq - Qt services and support - http://woboq.com - http://code.woboq.org ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
-developer-buildOn 4 September 2013 15:21, Poenitz Andre andre.poen...@digia.com wrote: That's wasting our time, as predicted. ../../corelib/tools/qdatetime.cpp: In function 'time_t qt_mktime(QDate*, QTime*, QDateTimePrivate::Spec*, QString*, bool*)': ../../corelib/tools/qdatetime.cpp:258:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] cc1plus: all warnings being treated as errors Together with the recent insistence that it's fine to submit non-compilable chances I start wondering about the direction. Andre' Apologies, that's a change I recently merged that has been on Gerrit since before Thiago's change, so snuck past. There's a patch for it already at https://codereview.qt-project.org/#change,64642 . I suspect there will be a few pain points like that until the Gerrit backlog drains. The real problem is not Thiago's change per se, but instead CI allowing changes with warnings like mine to be merged. Perhaps we need to revert until CI has the required -developer-build instances? John. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On quarta-feira, 4 de setembro de 2013 16:37:54, John Layt wrote: The real problem is not Thiago's change per se, but instead CI allowing changes with warnings like mine to be merged. Perhaps we need to revert until CI has the required -developer-build instances? I think the CI should pass -warnings-are-errors option to configure, yes. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On Wed, Sep 4, 2013 at 3:03 PM, Tor Arne Vestbø tor.arne.ves...@digia.comwrote: CI not using -developer-build I presume? It does: http://testresults.qt-project.org/ci/QtBase_dev_Integration/latest-success/ ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On quarta-feira, 4 de setembro de 2013 16:03:31, Tor Arne Vestbø wrote: On 9/4/13 15:58 , Giuseppe D'Angelo wrote: On 4 September 2013 15:21, Poenitz Andre andre.poen...@digia.com wrote: That's wasting our time, as predicted. ../../corelib/tools/qdatetime.cpp: In function 'time_t qt_mktime(QDate*, QTime*, QDateTimePrivate::Spec*, QString*, bool*)': ../../corelib/tools/qdatetime.cpp:258:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] cc1plus: all warnings being treated as errors How did the -Werror patch got integrated if qtbase doesn't build? Did it cover more compilers than the ones available in CI? CI not using -developer-build I presume? Yes, that's what I said in my email. It was highly unlikely that it would have got integrated the first time if the builds used -Werror. That's why there's an opt-in option: configure -warnings-are-errors (or configure -Werror). For those who do not want to participate in the fixing of warnings but still want to do developer builds: configure -developer-build -no-warnings-are-errors -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On 4 September 2013 20:22, Thiago Macieira thiago.macie...@intel.com wrote: Yes, that's what I said in my email. It was highly unlikely that it would have got integrated the first time if the builds used -Werror. That's why there's an opt-in option: configure -warnings-are-errors (or configure -Werror). Sorry, but you never mentioned this option in the first email... To put it another way: will configure -developer-build enable -Werror or not? -- Giuseppe D'Angelo ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On Wed, Sep 04, 2013 at 04:37:54PM +0200, John Layt wrote: -developer-buildOn 4 September 2013 15:21, Poenitz Andre andre.poen...@digia.com wrote: That's wasting our time, as predicted. ../../corelib/tools/qdatetime.cpp: In function 'time_t qt_mktime(QDate*, QTime*, QDateTimePrivate::Spec*, QString*, bool*)': ../../corelib/tools/qdatetime.cpp:258:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] cc1plus: all warnings being treated as errors Together with the recent insistence that it's fine to submit non-compilable chances I start wondering about the direction. Andre' Apologies, that's a change I recently merged that has been on Gerrit since before Thiago's change, so snuck past. There's a patch for it already at https://codereview.qt-project.org/#change,64642 . I suspect there will be a few pain points like that until the Gerrit backlog drains. The real problem is not Thiago's change per se, but instead CI allowing changes with warnings like mine to be merged. Perhaps we need to revert until CI has the required -developer-build instances? Not at all. The core of the problem _is_ enabling -Werror, _not_ the CI system. The CI system is absolutely innocent here, and there's no reasonable way to solve the problem on the CI side. There will always be configurations that are not covered by CI. In fact, I am appalled by this yet-another-attempt-to-blame-CI-for-bad- alignement-of-dev-with-reality. Yes, would be nice if we lived in a perfect world and sources were free of warnings. In practice you do look left and right before crossing the street. Why? Because the world is not perfect, and it prevents certain problems by simply acknowledging that it isn't. -Werror is a fine thing to switch on every now and then _temporarily_ and _locally_, especially when it can be done as part of scheduled general cleanup and housekeeping activities. No doubt. I use like that myself. It has absolutely no place in anything that shows up as normal sources that are used to get things done, read: _Anywhere in the Repo_. Any such use predictably fails, has done so in numerous projects in the past, and did surprisingly so for us today (twice). No matter how much diligence is put into whitelisting. And please don't get me started about the usefulness of version string checks when it comes to identifying supported features. Andre' ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On quarta-feira, 4 de setembro de 2013 16:47:15, Olivier Goffart wrote: On Wednesday 04 September 2013 16:42:38 Giuseppe D'Angelo wrote: On 4 September 2013 16:20, Sergio Ahumada sergio.ahum...@digia.com wrote: My guess is that on Ubuntu the compiler is too old (4.6.3 is on Ubuntu 12.04 but that doesn't use -developer-build); So probably more configurations should be added to CI (maybe Fedora 19, which isn't a Debian-derivate, and ships with gcc 4.8). Workaround (?) for now: https://codereview.qt-project.org/#change,64668 Why don't we put -Werror ONLY in the CI? Because then people wouldn't see their own mistakes, causing the CI to fail. Also, the point was to crowdsource the fixing of warnings. If devs don't get - Werror, they won't fix the warnings. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
On quarta-feira, 4 de setembro de 2013 20:24:04, Giuseppe D'Angelo wrote: Sorry, but you never mentioned this option in the first email... I did, several times in the discussions. To put it another way: will configure -developer-build enable -Werror or not? -developer-build enables -Werror. If you want -developer-build but no warnings, pass -no-warnings-are-errors. If you want a non-developer-build but still check for warnings, pass -warnings-are-errors. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
[Development] Fwd: Change in qt/qtbase[dev]: Enable -Werror for all of qtbase
FYI You're affected if you are: * using -developer-build * building dev * on one of the following compilers / OS: * Apple Clang 4.0 to 4.2 (technically on any OS) * ICC 13.0, 13.1, 14.0 on Linux * GCC 4.6 to 4.8 (any OS) What I didn't check: does the CI run -developer-build? Probably not, since this integrated on the first try. -- Forwarded message -- Qt Continuous Integration System has approved a build with this change and it was merged. Change subject: Enable -Werror for all of qtbase .. Enable -Werror for all of qtbase This change applies to all qtbase modules, tools and applications. It does not apply to examples or unit tests. This change complements the changes done to mkspecs/qt_common.prf (especially 043b80919747676c2df4b4423ed5950583233d30 and ebfd85a499a4382ace09d443b1f35cd6b1848af6). It enables -Werror checking in qtbase for GCC 4.6-4.8, Apple clang 4.0-4.2 and ICC 13.0-14.0. Change-Id: I6d29a7a1b3716960a149409f551363385991714c --- M .qmake.conf 1 file changed, 1 insertion(+), 0 deletions(-) Approvals: Qt Sanity Bot: Sanity review passed Thiago Macieira: Lars Knoll: Looks good to me, but someone else must approve Oswald Buddenhagen: Looks good to me, approved Message: QtBase_dev_Integration #1672: SUCCESS Tested changes (refs/builds/dev_1378252330): http://codereview.qt-project.org/63819 [PS2] - Enable -Werror for all of qtbase - -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development