Another way to split this is what do we need while typing vs building.
I could see only real-time feedback forfast things, and at/after build-time layer in the more expensive stuff.
Sent: Tuesday, January 08, 2019 at 12:53 PM
From: Andy <asmalo...@gmail.com>
To: "Marco Bubke" <marco.bu...@qt.io>
Cc: "Jason H" <jh...@gmx.com>, "Eike Ziller" <eike.zil...@qt.io>, "NIkolai Marchenko" <enmarantis...@gmail.com>, "qt-creator@qt-project.org" <qt-creator@qt-project.org>
Subject: Re: [Qt-creator] Qt creator + Clang model = major annoyance
From: Andy <asmalo...@gmail.com>
To: "Marco Bubke" <marco.bu...@qt.io>
Cc: "Jason H" <jh...@gmx.com>, "Eike Ziller" <eike.zil...@qt.io>, "NIkolai Marchenko" <enmarantis...@gmail.com>, "qt-creator@qt-project.org" <qt-creator@qt-project.org>
Subject: Re: [Qt-creator] Qt creator + Clang model = major annoyance
"...some are actually quite cheap but other are very expensive to compute."
Is there any way to indicate/figure out which options are expensive?
I find many of the ones I have turned on useful from an information standpoint, but some files take 25 seconds to parse which makes this feature less useful from a usability standpoint.
On Tue, Jan 8, 2019 at 12:47 PM Marco Bubke <marco.bu...@qt.io> wrote:
_______________________________________________We collect the diagnostics as we compiling the translation unit for completion, highlighting etc.. But the compiling is slower because it takes time to find all the warnings, some are actually quite cheap but other are very expensive to compute. An other idea was only to generate diagnostics for the current files and not the include but AFAIK it is not so easy because our first approach to include everything as system include is not working because the files are locked again.
From: Qt-creator <qt-creator-boun...@qt-project.org> on behalf of Jason H <jh...@gmx.com>
Sent: Tuesday, January 8, 2019 4:48:28 PM
To: Eike Ziller
Cc: NIkolai Marchenko; qt-creator@qt-project.org
Subject: Re: [Qt-creator] Qt creator + Clang model = major annoyance> > I too have noticed QtC's recent versions slowing down. I used to think it was a cool add, but it's starting to get in the way. OR it could be that my expectations have increased and I rely on it more whereas it as a nice-to-have. But the slowdowns remove the value added.
>
> Please definitely make sure that you use a configuration that does not include any clang-tidy checks (Options > C++ > Code Model). Any of these check should be considered “optional, only enable if they do not degrade performance for you”.
So I'm using "Warnings for almost everything (Copy)" (CLANG: -Weverything -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-unused-macros -Wno-newline-eof -Wno-exit-time-destructors -Wno-global-constructors -Wno-gnu-zero-variadic-macro-arguments -Wno-documentation -Wno-shadow -Wno-switch-enum -Wno-missing-prototypes -Wno-used-but-marked-unused -Wno-unknown-pragmas; Clang-Tidy: Disable; Clazy: 0 (no false positives) ) But I don't remember setting this up. I have disabled Clazy and will see how that goes.
I have no clue how any of this works, but I'd like to suggest something (which may be completely wrong) It seems that an async approach would be the way to go. I don't really need clang-tidy or clazy blocking me. Rather, eventually the errors should be first, warnings, then hints. Maybe you get them all at the same time, but I was under the impression that with these being separate tools, their outputs could be integrated separately? So run the compiler first, then clang-tidy, then clazy. Then having a "compile server" (language server?) where the server is always running to avoid the startup penalty, and QtC submits your diffs so that only new code is evaluated, would be the way to go? Maybe this is how it is already done, I don't know...
_______________________________________________
Qt-creator mailing list
Qt-creator@qt-project.org
https://lists.qt-project.org/listinfo/qt-creator
Qt-creator mailing list
Qt-creator@qt-project.org
https://lists.qt-project.org/listinfo/qt-creator
_______________________________________________ Qt-creator mailing list Qt-creator@qt-project.org https://lists.qt-project.org/listinfo/qt-creator