<div dir="auto"><div>This is a result of a recent feature we added, i.e., a project is saved when you close Kate, and restored when you reopen. </div><div dir="auto"><br></div><div dir="auto">This is okay if one uses named sessions. Named sessions need to be opened explicitly. However, for anon sessions, this was a bad idea and is a constant annoyance. </div><div dir="auto"><br></div><div dir="auto">It's fixed in a way that we added an option to disable project restoration(upcoming release). But I think for anon sessions projects should never be stored in the first place. </div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">Waqar</div><div dir="auto"><br><br><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">On Sat, Jun 18, 2022, 5:16 PM Milian Wolff <<a href="mailto:mail@milianw.de">mail@milianw.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hey all,<br>
<br>
Kate took ~4s to show its main window on my beefy workstation with lots of <br>
RAM, CPUs and speedy NVME disks. I found this quite odd and wondered about the <br>
reason so I sat down and profiled it. Perf shows a lot of external git <br>
processes running sequentially, which I could also replicate with strace:<br>
<br>
```<br>
$ strace -o kate.process.log -f --timestamps -e process kate<br>
$ grep -E "execve.*git" kate.process.log | wc<br>
159<br>
```<br>
<br>
See also: <a href="https://invent.kde.org/-/snippets/2234" rel="noreferrer noreferrer" target="_blank">https://invent.kde.org/-/snippets/2234</a><br>
<br>
The reason, it turns out, was that my kate accumulated a lot of projects, and <br>
all of them got queried for their git status.<br>
<br>
I hope that you all agree that this isn't acceptable. The question now becomes <br>
how to resolve this:<br>
<br>
a) I never knowingly opened a project in kate, this is all done automatically <br>
in the background. Is it expected that I should manually cleanup the project <br>
list then? Or can this be done automatically, e.g. by marking projects as <br>
unused after some time when we don't open a file in them in the last week or <br>
something like that?<br>
<br>
b) Can we query the git status in parallel for all projects, instead of <br>
serially? My machine has 12 cores and 24 threads, and the NVME disk and ram <br>
should also allow this.<br>
<br>
Thanks<br>
<br>
PS: For now, I manually closed all projects and now have a fast kate startup <br>
once again.<br>
<br>
-- <br>
Milian Wolff<br>
<a href="mailto:mail@milianw.de" target="_blank" rel="noreferrer">mail@milianw.de</a><br>
<a href="http://milianw.de" rel="noreferrer noreferrer" target="_blank">http://milianw.de</a></blockquote></div></div></div>