working with huge projects

Kevin Funk kfunk at kde.org
Fri Sep 8 07:47:13 UTC 2017


On Thursday, 7 September 2017 22:18:08 CEST René J.V. Bertin wrote:
> Hi,
> 
> Has anyone ever tried to import really big projects into KDevelop recently,
> say the GCC 7 source tree? I just did, and have been regretting it for the
> last 18 minutes (I don't want to kill the session just yet).
> 
> From what I could see with a quick debugger attach, the app just sits
> burning CPU while setting up (or destroying) KDirWatch thingies on I don't
> know how many directories. Apparently on the main thread because the UI
> isn't responding. This is on Mac where KDirWatch doesn't work properly
> anyway, making the issue even more annoying.
> 
> I have to assume that KDirWatch is going to be comparably expensive on Linux
> and if so, it could be a pretty useful idea to have a session setting to
> disable directory monitoring. It's nice when it works but you can live
> without it quite well, and it's not worth waiting this long for projects to
> open (or consume the associated resources).

I agree that we need to find a solution for that I'm working with the Clang/
LLVM source tree right now, and KDevelop needs a lot of time to scan the 
sources.

I also thought about introducing a mode where KDevelop just parses the 
currently open documents (that'll make project-wide quick open for symbols 
unusable, but other things like the outline would still work). The question is 
how to design this in the user interface, to make the user aware he's "in that 
mode".

Other ideas that I had in mind are ignoring the AST of a .cpp which is not 
currently open, only look at headers in your project. That makes project-wide 
quick open still usable, but you will lack the definitions inside .cpp files 
(think of `class FooPrivate {};`).

Lots of ideas, but this needs to be carefully thought out and implemented. We 
need more people working on kdev-clang, otherwise this is not going to happen.

I'm loaded with other stuff unfortunately -- I'm actually trying to streamline 
the KDevelop project on all fronts so it gets easier for potential new 
contributors to jump in.

We need more people actually contributing *code*; we're a huge project and the 
current core developers are horribly busy with their day jobs... and private 
life :)

Regards,
Kevin

> What do you think?
> 
> R.


-- 
Kevin Funk | kfunk at kde.org | http://kfunk.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 163 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20170908/1e3d651f/attachment.sig>


More information about the KDevelop-devel mailing list