From: Marco Costalba Date: Fri, 16 Mar 2007 18:38:08 GMT Subject: Re: Libification project (SoC) Message-ID: In-Reply-To: On 3/16/07, Marco Costalba wrote: > > *The most important thing for a libgit to be used by qgit is reentrancy* > Another crtitical feature is that this call to git-rev-list-like function MUST be non-blocking. Reading a big repo could take many seconds, also more then 10 seconds in cold cache case for Linux tree, as example. Getting the history of a file ('git rev-list -- /path/to/file) it's also very slow. There is no way that a GUI tool is allowed to *freeze* for that amount of time. Currently, because an external process is forked when running 'git rev-list' all the problem is happly handled by the kernel scheduler and the QProcess callback mechanism (based on select()). In case of a libified git-rev-list this could be an issue. Marco