KDevelop4 hotfixes
David Nolden
david.nolden at art-master.de
Sun Jan 21 12:28:18 UTC 2007
Am Sonntag, 21. Januar 2007 04:58 schrieb Matt Rogers:
> On Saturday 20 January 2007 4:11 pm, David Nolden wrote:
>
> Are these so important that they would be considered showstoppers or just
> bugs where we can release a new version a week or so later? I'm waiting for
> ftpadmin to move the tarballs so that they get picked up by the kde.org ftp
> mirrors and then we'll be releasing.
>
> We can always put out another release in two weeks or so.
Hmm it depends.
1.
There is that checkbox "preprocess included headers". When that is active an
error for the error-list is created for each missing include-file. I've
noticed that if you haven't set include-path correctly and kdevelop parses
all files of a big project, the error-list gets unbelievably long and
kdevelop quasi-hangs(including the user-interface) at about 10%, because all
the time is spent handling the error-list.
That is fixed now.
2.
I finally fixed something that already caused some crashes in the past, but at
that time I couldn't look at it, so I only workarounded it. It was the crash
that was on the list with the recursive appendNextFunction(...)-backtrace.
That same basic error was still able to cause very long hangs in
code-completion(See Christian Schneider's report).
That's fixed too(now at the source of the problem)
3.
When "preprocess included headers" is enabled, namespace-imports and aliases
from imported headers are used. A linear intersection-search had to be done
in the global namespace to find out what exact aliases and imports have to be
used in each case. I noticed that for big projects, with many global imports,
this search can extremely dominate the code-completion-time, and make
code-completion(or the navigation-menu) nearly unusable.
I fixed that too by creating a much more efficient intersection-search.
These were the only "real" problems of the current code-completion
implementation that I know.
I fear that when kdevelop 3.4 is shipped, most people will check out the cool
new features and also check "preprocess included headers", and in some cases
they may get a bad impression of kdevelop. Also long hangs or crashes(point
2) always look bad.
That's why I think these 3 fixes should get into stable kdevelop as fast as
possible.
The exact commits I'm talking about are r624879, r624975, r625193, r625278,
r625373, r625617, r625648 (some efforts are split across multiple commits)
greetings, David
More information about the KDevelop-devel
mailing list