D7745: KDevelop (full) project parsing: defer until all projects have been loaded.

René J.V. Bertin noreply at phabricator.kde.org
Fri Sep 8 23:17:15 UTC 2017


rjvbb created this revision.
rjvbb added a project: KDevelop.
Restricted Application added a subscriber: kdevelop-devel.

REVISION SUMMARY
  This is a companion patch to https://phabricator.kde.org/D7742 .
  
  KDevelop currently starts the project parse run when the project has been imported. That's perfect when using single-project sessions, but it means that the import of each subsequent project has to compete with the parser. Project import is a process that can block the UI and should thus take as little time as possible.
  
  This patch introduces a simple queue that holds all newly imported projects until all the imports have been completed; they're handed off to the parser only once the actual import has completed.

TEST PLAN
  Works as intended in 5.1.2; patch applied cleanly to the 5.2 branch.
  
  This is a change I've been thinking about for a long time; the initial impression is of improved responsiveness (even with "parse all project files" turned off).
  
  I didn't see a need to make `m_pendingParseProjectJobs` a FIFO or FILO, is there?

REPOSITORY
  R32 KDevelop

REVISION DETAIL
  https://phabricator.kde.org/D7745

AFFECTED FILES
  kdevplatform/shell/projectcontroller.cpp

To: rjvbb, #kdevelop
Cc: kdevelop-devel, geetamc, Pilzschaf, akshaydeo, surgenight, arrowdodger
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20170908/9ae6fd34/attachment.html>


More information about the KDevelop-devel mailing list