Limit time vala symbol pane takes to parse and display symbols #1515
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #1513
A simple fix which limits the time the ValaSymbolOutline spends on constructing the Sourcelist tree, which is the rate-limiting step (parsing is relatively fast).
Future PR's may improve the performance of tree construction (it is already in a separate thread) so that more symbols can be handled but the issue seems to be mainly with
.vapi
files which can contain many more symbols than most real world.vala
files.If the time taken exceeds a hard-coded number of msec (currently 1000) a warning is shown instead as shown below. Further information is given in the tooltip of the warning item.